Código: | CC1005 | Sigla: | CC1005 | Nível: | 100 |
Áreas Científicas | |
---|---|
Classificação | Área Científica |
OFICIAL | Ciência de Computadores |
Ativa? | Sim |
Página Web: | http://www.dcc.fc.up.pt/~sandra/Home/PF1617.html |
Unidade Responsável: | Departamento de Ciência de Computadores |
Curso/CE Responsável: | Licenciatura em Ciência de Computadores |
Sigla | Nº de Estudantes | Plano de Estudos | Anos Curriculares | Créditos UCN | Créditos ECTS | Horas de Contacto | Horas Totais |
---|---|---|---|---|---|---|---|
L:B | 0 | Plano de Estudos Oficial | 3 | - | 6 | 56 | 162 |
L:CC | 94 | Plano de estudos a partir de 2014 | 1 | - | 6 | 56 | 162 |
L:M | 4 | Plano de Estudos Oficial | 2 | - | 6 | 56 | 162 |
3 | |||||||
L:Q | 4 | Plano estudos a partir do ano letivo 2016/17 | 3 | - | 6 | 56 | 162 |
MI:ERS | 147 | Plano Oficial desde ano letivo 2014 | 1 | - | 6 | 56 | 162 |
Introdução à programação funcional usando a linguagem Haskell.
No final da disciplina, o(a) aluno(a) deverá ser capaz de:
1. Definir funções usando equações com padrões;
2. Codificar algoritmos recursivos elementares sobre listas e árvores em Haskell;
3. Definir novos tipos algébricos para representar dados;
4. Compor problemas de programação usando funções de ordem superior e lazy evaluation ;
5. Provar propriedades elementares de programas usando teoria equacional e indução.
Expressões, valores e tipos básicos. Definições de funções simples; tipos funcionais. Execução passo-a-passo usando substituição. Tipos compostos: listas e tuplos. Algumas funções sobre listas do prelúdio-padrão. Notação de listas em compreensão. Definições recursivas. Polimorfimo paramétrico. Funções de ordem superior. Programas interactivos usando o mónada de I/O. Definição de novos tipos concretos. Estudo de um caso: árvores binárias de pesquisa. Tipos abstractos: pilhas, filas, conjuntos. Especificação usando equações e implementação usando módulos. Classes de tipos e sobrecarga de operadores. Raciocínio sobre programas usando teoria equacional e indução.
Aulas de exposição usando quadro e projeção de slides. Aulas laboratoriais com computador.
Designação | Peso (%) |
---|---|
Exame | 50,00 |
Teste | 50,00 |
Total: | 100,00 |
Teste intercalar (50% de peso na nota final).
Exame (50% de peso na nota final).
Sendo TI a classificação obtida no teste intercalar e e EX a
classificação obtida no exame, então a nota final é dada por:
F = TI*(0.5) + EX*(0.5)
TI,EX >= 6 e F >= 9.5
Não obterão aprovação, os alunos que não obtiverem um mínimo de 6 valores (em 20), em cada componente e um mínimo de 9.5 valores de nota final.
O exame de recurso, será cotado para 20 valores.
N/A