Saltar para:
Logótipo
Você está em: Início > CC4013
Mapa das Instalações
FC6 - Departamento de Ciência de Computadores FC5 - Edifício Central FC4 - Departamento de Biologia FC3 - Departamento de Física e Astronomia e Departamento GAOT FC2 - Departamento de Química e Bioquímica FC1 - Departamento de Matemática

Fundamentos de Linguagens de Programação

Código: CC4013     Sigla: CC4013     Nível: 400

Áreas Científicas
Classificação Área Científica
OFICIAL Ciência de Computadores

Ocorrência: 2024/2025 - 1S Ícone do Moodle

Ativa? Sim
Unidade Responsável: Departamento de Ciência de Computadores
Curso/CE Responsável: Mestrado em Ciência de Computadores

Ciclos de Estudo/Cursos

Sigla Nº de Estudantes Plano de Estudos Anos Curriculares Créditos UCN Créditos ECTS Horas de Contacto Horas Totais
M:CC 13 PE a partir do ano letivo de 2014 1 - 6 42 162

Docência - Responsabilidades

Docente Responsabilidade
Sandra Maria Mendes Alves Regente
João Luis Alves Barbosa Regente

Docência - Horas

Teorico-Prática: 3,23
Tipo Docente Turmas Horas
Teorico-Prática Totais 1 3,231
João Luis Alves Barbosa 1,615
Sandra Maria Mendes Alves 1,615

Língua de trabalho

Português - Suitable for English-speaking students

Objetivos

Estudo de modelos formais semânticos de linguagens de programação, de forma a compreender os mecanismos envolvidos na definição, desenho e implementação de linguagens de programação.

Resultados de aprendizagem e competências

Os alunos vão adquirir conhecimentos sobre modelos formais semânticos de linguagens de programação.

Pretende-se ainda desenvolver as capacidades técnicas e os mecanismos envolvidos na definição, desenho e implementação de linguagens de programação.

Com os conhecimentos adquiridos, os alunos deverão ser capazes de formalizar o conceito de qual o significado de um programa.

Os alunos deverão também ser capazes de aplicar os conceitos aprendidos ao desenho de uma linguagem de programação.

Modo de trabalho

Presencial

Programa

- Lambda-calculus: sintaxe, reduções, codificação de construtores típicos de linguagens de programação. 

- Sistemas de tipos: o sistema de tipos simples à la Curry para o lambda-calculus; polimorfismo paramétrico. Inferência de tipos.

- Semânticas operacionais. Técnicas de demonstração de propriedades de semânticas operacionais. 
- Teoria de domínios: Ordens parciais completas (CPOs). Funções contínuas. Teorema do ponto-fixo.
- Semântica denotacional de linguagens de programação.

- Relação entre as semânticas operacionais e denotacionais.

- Semânticas de linguagens com não-determinismo, paralelismo e blocos.

- Noções extra de semânticas de linguagens de programação.

Bibliografia Obrigatória

Hanne Riis Nielson; Semantics with applications. ISBN: 978-1-84628-691-9
Chris Hankin; An introduction to Lambda calculi for computer scientists. ISBN: 0-9543006-5-3

Bibliografia Complementar

Glynn Winskel; The formal semantics of programming languages. ISBN: 978-0-262-23169-5
Hendrik Pieter Barendregt; The lambda calculus. ISBN: 0-444-85490-8
Maribel Fernández; Programming languages and operational semantics. ISBN: 0-9543006-3-7

Métodos de ensino e atividades de aprendizagem

Aulas teóricas-práticas com exposição de matéria e resolução de exercícios.

Software

Glasgow Haskell Compiler

Palavras Chave

Ciências Físicas > Matemática > Lógica matemática
Ciências Físicas > Matemática > Matemática discreta
Ciências Físicas > Ciência de computadores

Tipo de avaliação

Avaliação distribuída sem exame final

Componentes de Avaliação

Designação Peso (%)
Teste 100,00
Total: 100,00

Componentes de Ocupação

Designação Tempo (Horas)
Estudo autónomo 120,00
Frequência das aulas 42,00
Total: 162,00

Obtenção de frequência

Sem critérios de frequência.

Fórmula de cálculo da classificação final

Há dois testes na disciplina, cada um deles com nota mínima de 6 valores em 20.

A nota final é média aritmética das notas dos testes.

Nota final = 0.5 * Teste 1 + 0.5 * Teste 2

Quem não alcançar a nota mínima num dos testes não tem aprovação à disciplina, mas poderá fazer um exame de recurso aos dois testes ou só a um deles.
Recomendar Página Voltar ao Topo
Copyright 1996-2025 © Faculdade de Ciências da Universidade do Porto  I Termos e Condições  I Acessibilidade  I Índice A-Z  I Livro de Visitas
Página gerada em: 2025-06-15 às 10:51:34 | Política de Utilização Aceitável | Política de Proteção de Dados Pessoais | Denúncias