MAC0316  Conceitos Fundamentais de Linguagens de Programação

Por | Em

OBJETIVOS:  Introduzir o aluno aos principais paradigmas de linguagens de programação e aos conceitos fundamentais a eles relacionados.

PROGRAMA:  Linguagens funcionais. Funções como valores de primeira ordem; polimorfismo; ambientes e fechamentos; avaliação "adiada"; linguagens funcionais; linguagens orientadas a objetos. Tipos abstratos de dados. Módulos. Herança e hierarquias. Linguagens lógicas. Predicados, cláusulas e o modelo de unificação. Implementação dos vários paradigmas em um interpretador; compilação vs implementação. Administração de memória; pilha vs heap; coleta de lixo.

PRÉ-REQUISITOS:  MAC0121.

CARGA HORÁRIA SEMANAL E NÚMERO DE CRÉDITOS:  4 horas, 4 créditos-aula.

CRITÉRIO DE AVALIAÇÃO DA APRENDIZAGEM:  Média ponderada de provas e exercícios.

BIBLIOGRAFIA BÁSICA: 

  • S. Kamin, Programming Languages: an Interpreter-based Approach, Addison-Wesley, 19??.
  • H. Abelson, J. Sussman, Structure and Interpretation of Computer Programs, McGraw-Hill, MIT Press, 19??.
  • R. Sethu, Programming Languages, Concepts and Constructs, Addison-Wesley, 19??.

OBSERVAÇÃO:  Disciplina obrigatória no currículo do BCC.

 

[Veja dados da disciplina no JúpiterWeb]