Haskell Guys – Novo Blog

Bom, eu e o Christian acabamos de lançar um novo Blog: o Haskell Guys. Esperamos escrever bastante sobre Programação Funcional e Haskell (ainda somos novatos com esses tópicos, vamos compartilhar nosso conhecimento na medida em que aprendermos).

A programação funcional é bem diferente da procedural, com a qual estamos acostumados. Ela é baseada em expressões, enquanto a última é baseada em comandos.

Não viu muito bem a diferença? Vou ser um pouco mais claro. Na programação funcional, não há variáveis ou qualquer mudança de estado, deve-se apenas escrever expressões (como funções na matemática) e o compilador se vira.

Um pequeno (e clássico) exemplo é a função fatorial em Haskell. Na matemática, calculamos o fatorial de um número natural como a multiplicação dele e de todos os  números naturais (com exceção do zero)  anteriores a ele: 5! = 5*4*3*2*1 = 60. Uma forma geral seria n! = n*(n-1)!, com a definição de que 0! = 1.
Como isso ficaria em Haskell? Simples:


fat 0 = 1
fat n = n * fat(n-1)

Alguma semelhança com a definição de fatorial?

Uma característica interessante da programação funcional é que seus programas costumam ser bastante estáveis, com poucas linhas de código e baixa manutenção. Mas esse paradigma nunca fez grande sucesso na indústria devido, principalmente, à baixa performance de suas aplicações e ao consagramento anterior da programação procedural.

Boa leitura desse novo Blog.

Blogged with the Flock Browser

Tags: , , ,

Deixar uma Resposta