Este documento apresenta os principais conceitos de tipos funcionais em Haskell, incluindo:
1) Tipos básicos como Bool, Char, Int e suas propriedades;
2) Listas e tuplas como estruturas de dados e suas diferenças;
3) Tipos funcionais e como Haskell lida com funções de múltiplos argumentos usando currying.
4) Conceitos avançados como polimorfismo, sobrecarga e classes.
5) Um desafio com exercícios sobre tipos e classes.