Saltar para:
Logótipo
Você está em: Início > CC440
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: CC440     Sigla: CC440

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

Ocorrência: 2013/2014 - 1S

Ativa? Sim
Página Web: http://www.dcc.fc.up.pt/~sandra/Home/FLP1314.html
Unidade Responsável: Departamento de Ciência de Computadores
Curso/CE Responsável: Mestrado Integrado em Engenharia de Redes e Sistemas Informáticos

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 6 PE do Mestrado em Ciência de Computadores 1 - 7,5 67 202,5
2
MI:ERS 0 Plano de Estudos a partir de 2007 4 - 7,5 67 202,5

Língua de trabalho

Português

Objetivos

Estudo de modelos formais sintácticos e 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 sintácticos e 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. Como os conhecimentos adquiridos, os alunos deverão ser capazes de formalizar o conceito de qual o significado de um programa.

Modo de trabalho

Presencial

Programa

Teoria das definições indutivas.
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, sistemas com sub-tipos. Inferência de tipos. 
Semântica operacional. 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. Programas recursivos e regras de computação. 
Semântica operacional do lambda-calculus. Semântica de uma linguagem declarativa com definições recursivas de funções. Semântica de linguagens funcionais.
Semânticas de linguagens concorrentes. Não-determinismo e paralelismo. O cálculo CCS de Milner  (Cálculo de Sistemas de Comunicação). 

Bibliografia Obrigatória

Nielson and Nielson; Semantics with Applications: an appetizer, 2007
Chris Hankin; An Introduction to Lambda Calculus for Computer Scientis
Hindley John Roger; Basic simple type theory. ISBN: 0-521-46518-4

Bibliografia Complementar

G. Winskel; The Formal Semantics of Programming languages, 1993
H. Barendregt; The Lambda Calculus: its syntax and semantics, 1985
Mitchell John C.; Foundations for programming languages. ISBN: 978-0-262-13321-0
Fernández Maribel; Programming languages and operational semantics. ISBN: 0-9543006-3-7

Métodos de ensino e atividades de aprendizagem

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

Tipo de avaliação

Avaliação distribuída com exame final

Componentes de Avaliação

Designação Peso (%)
Exame 60,00
Trabalho escrito 40,00
Total: 100,00

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

Trabalhos: 40% da classificação final;
Exame final: 60% da classificação final.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Provas e trabalhos especiais

Dois trabalhos a realizar durante o semestre.

Melhoria de classificação

Os alunos que realizem exame de melhoria no mesmo ano lectivo em que obtenham aprovação à disciplina, poderão optar por manter o cálculo da nota final indicado acima (considerando as notas dos trabalhos práticos). Para os alunos que tenham obtido aprovação à disciplina no ano anterior será apenas considerada a nota obtida no exame de melhoria.

Recomendar Página Voltar ao Topo
Copyright 1996-2024 © 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: 2024-11-04 às 09:37:22 | Política de Utilização Aceitável | Política de Proteção de Dados Pessoais | Denúncias