Objetivos

  • Utilizar a linguagem de programação Haskell para desenvolver um projecto de software de média dimensão.
  • Utilizar um sistema de controlo de versões para facilitar o desenvolvimento cooperativo de um projecto de software.
  • Utilizar as ferramentas de um sistema operativo tipo Unix e editores de texto avançados para agilizar o desenvolvimento de um projecto de software.
  • Aplicar técnicas de teste unitário para validar o código desenvolvido num projecto de software.
  • Documentar adequadamente o código desenvolvido num projecto de software.

Programa

  • Introdução ao sistema de ficheiros e utilização da shell do Unix.
  • Utilização das ferramentas da Haskell Platform para interpretar e compilar programas Haskell e para gerir as bibliotecas instaladas.
  • Utilização de sistemas de controlo de versões.
  • Documentação de código Haskell usando Haddock.
  • Técnicas de teste unitário.
  • Aplicação das técnicas e ferramentas anteriores no desenvolvimento em grupo de um projecto de software de média dimensão.

Bibliografia

  • Fundamentos da Computação, Livro II: Programação Funcional. José Manuel Valença e José Bernardo Barros. Universidade Aberta, 1999.
  • Introduction to Functional Programming using Haskell. Richard Bird. Prentice-Hall, 1998.
  • Tutorial de introdução ao Unix. http://www.ee.surrey.ac.uk/Teaching/Unix/index.html

Atualizado: