Objetivo

Compreender e aplicar conceitos e paradigmas de linguagens de programação, de forma a facilitar o aprendizado de novas linguagens de programação e fornecer elementos para uma comparação crítica entre linguagens.

Informações básicas

Avaliações

  • Prova prática de Prolog [peso: 3, individual]
  • Caracterização de uma linguagem de programação [peso: 3, em grupo de até 5 pessoas]
  • Prova prática de programação funcional e concorrente com JavaScript [peso: 4, individual]

Ferramentas

  • SWISH: interpretador de Prolog online
  • BiwaScheme: interpretador de Scheme online
  • repl.it: interpretador online de várias linguagens

Conteúdo

(Atenção: o material pode ser atualizado ao longo do semestre)

Introdução

Paradigma baseado em lógica

Paradigma funcional (introdução com Scheme)

Conceitos

Paradigma funcional (tópicos avançados com JavaScript)

Programação assíncrona

Principais referências