Material Pedagógico

Fichas das aulas práticas

Transparentes

Enunciado do trabalho prático

O material para realização do TP desta disciplina consta de um enunciado tinynew.gif (cp1617t.pdf) e de um zip tinynew.gif (cp1617t.zip) contendo a respectiva fonte (ficheiro cp1617t.lhs) + outros ficheiros auxiliares. Pressupõe-se que estão instaladas as biliotecas de Haskell abaixo referidas.

Os alunos devem começar por ler cp1617t.pdf para avaliarem o trabalho que há para fazer. Devem ainda deixar para o fim o último problema, cuja matéria só na semana que vem começará a ser leccionada.

Bibliotecas de Software (em Haskell)

  • tinynew.gif Probability.hs, ListUtils.hs, Show.hs e St.hs - necessárias à realização do trabalho prático.
  • google.hs tinynew.gif - ilustração da arquitectura map-reduce que foi mostrada nas aulas.
  • demos.hs tinynew.gif - contendo material auxiliar para a visualização em HTML da estrutura de dados virtual (intermédia) dos hilomorfismos qSort, hanoi, mSort etc das bibliotecas BTree.hs e LTree.hs. Experimentar qSort_vtree [6,3,9,1,7,18] e hanoi_vtree (True, 7), por exemplo. Encontrar-se-á a visualização no ficheiro _.html da directoria corrente.
  • Exp.hs tinynew.gif - biblioteca contendo os cata/ana/hilomorfismos do tipo de dados expressões com variáveis que é usada em demos.hs.
  • FTree.hs - biblioteca contendo os cata/ana/hilomorfismos do tipo de dados árvores binárias completas (informação nos nós e nas folhas).
  • 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).
  • cp1617f02q3.hs - 'kit' de apoio à resolução da questão 3 da ficha 2.
  • Cp.hs - contendo os combinadores de base do cálculo de programas, e.g. split, ><, -|- etc.

Outro material

Enunciados das provas de avaliação

Data / Hora / Local Descrição Ficheiro
01-Jun-2017 / 16h-18h / Cantina Teste PDF
30-Jun-2017 / 16h-18h / Cantina Exame de recurso PDF tinynew.gif com a correcção
25-Jul-2017 / 09h-11h / tinynew.gif Sala CP2-204 Exame da época especial PDF

"Links"

-- JoseNunoOliveira - 07 Feb 2017