Programa Resumido

–Estudo de uma linguagem imperativa simples:

    * Definição

    * Provas por indução

    * Semântica operacional: semântica de transições (estrutural, ou small-step) e semântica de avaliação (natural, ou big-step)

    * Equivalência semântica

    * Semântica axiomática (breve referência)

–O λ-calculus:

    * Definição

    * Redução, igualdade e normalização

    * Codificação de dados (breve referência)   

    * Definição de funções recursivas

    * O sistema de tipos simples. Tipos intrínsecos e extrínsecos

    * Estudo de uma linguagem de programação estrita. Semântica de avaliação

    * Estudo de uma linguagem de programação não-estrita. Semântica de avaliação

–Semântica denotacional (introdução)

–Outros tópicos:

    * Notas sobre linguagens realistas com características imperativas e funcionais (ISWIM, ALGOL)

    * Tratamento semântico dos arrays