Programação em Haskell
Conteúdo
Capítulo 1 Prefácio
Capítulo 2 Programação Funcional, Valores e Tipos
2.1 Introdução: Definições de Funções
2.1.1 Nomes e Operadores
2.1.2 Definições de Funções, Padrões, Tipos Algébricos
2.2 Estratégia de avaliação preguiçosa
2.2.1 Casamento de padrões
2.3 Tipos básicos
2.3.1 Tipo
Bool
Capítulo 3 Verificação e Inferência de Tipos
3.1 A regra básica
3.2 Polimorfismo paramétrico
3.2.1 Unificação e Substitituição
3.2.2 Sobrecarga e Tipos restritos
3.3 Exercícios Resolvidos
3.4 Exercícios
Capítulo 4 Funções de ordem superior
4.1
foldr
4.2
foldl
4.2.1 Ineficiência da complexidade de espaço da avaliação preguiçosa de
foldl
4.3
foldr
versus
foldl
4.4 Exercícios
Capítulo 5 Funtores, Funtores Aplicativos, Mônadas, Ações
5.1 Funtores
5.1.1 Exercícios Resolvidos
5.1.2 Exercícios
5.2 Funtores Aplicativos
5.2.1 Exercícios Resolvidos
5.2.2 Exercícios
5.3 Mônadas
5.3.1 Ações
5.3.1.1 Exercícios Resolvidos
5.3.2 Notação
do
5.3.2.1 Exercícios resolvidos
5.3.3 O que é uma mônada
5.3.3.1 Exercícios Resolvidos
5.3.3.2 Exercícios
5.3.4 Mônada
IO
5.3.4.1 Exercícios
5.3.4.2 Referências na mônada
IO
5.3.5 Mônadas para estruturamento de código
5.3.5.1 Mônadas para evitar repetidos testes de erro
5.3.5.2 Exercícios Resolvidos
5.3.5.3 Exercícios
5.3.5.4 Mônadas de estado puras
5.4 Exercícios
Apêndice A Funções
Apêndice B Tipos