Material Pedagógico
Disponível à medida que a disciplina for progredindo.
Fichas das aulas práticas
Transparentes
Enunciado do trabalho prático
O
material para realização do
TP desta disciplina consta de um
enunciado (
cp1718t.pdf) e de um zip (
cp1718t.zip) contendo a respectiva fonte (ficheiro cp1718t.lhs) + outros ficheiros auxiliares.
Os alunos devem deixar para o fim o último problema, cuja matéria só na semana que vem começará a ser leccionada.
A data de entrega é sábado,
23 de Junho. Oportunamente serão dadas informações sobre o processo de submissão dos TPs.
Bibliotecas de Software (em Haskell)
- St.hs contendo uma versão simplificada do mónade de estado.
- google.hs - ilustração da arquitectura map-reduce que foi mostrada nas aulas.
- FTree.hs - biblioteca contendo os cata/ana/hilomorfismos do tipo de dados árvores binárias completas (informação nos nós e nas folhas).
- Exp.hs - biblioteca contendo os cata/ana/hilomorfismos do tipo de dados expressões com variáveis que é usada em google.hs.
- LTree.hs - biblioteca contendo os cata/ana/hilomorfismos do tipo de dados árvores binárias de folhas - LTree a = Leaf a | Fork (LTree a, LTree a) e aplicações suas (e.g. Fibonacci, duplo factorial, `merge-sort', etc).
- BTree.hs - biblioteca para o tipo de dados árvores binárias - data BTree a = Empty | Node(a, (BTree a, BTree a)), e aplicações suas (e.g. torres de Hanói, `quick-sort', etc).
- List.hs - biblioteca geral para listas em Haskell, contendo combinadores (e.g. catamorfismos) e exemplos de utilização.
- Nat.hs - biblioteca de naturais (combinador ciclo-for, etc).
- Cp.hs - contendo os combinadores de base do cálculo de programas, e.g. split, ><, -|- etc.
Outro material
Enunciados das provas de avaliação
"Links"
-- JoseNunoOliveira - 04 Feb 2018