Desde que o Roberto me apresentou ao concurso de programação que acompanha a ICFP (International Conference on Functional Programming), venho me sentindo tentado a participar. O problema é que se trata de uma maratona de 48 a 72 horas, onde as equipes tem que executar uma tarefa, que tipicamente é resolvida utilizando os paradigmas de programação funcional. A palavra chave aqui é equipe. Devo admitir que as tarefas são bastante complexas, e a equipe de um homem só não dá conta. Além disso, é muito, muito difícil encontrar quem entenda de programação funcional.
Eu mesmo não conhecia esse conceito: a idéia é descrever o programa utilizando apenas funções e funcionais. Existem poucas linguagens para programação funcional, todas derivadas do lendário LISP, e da ML (meta-language). As mais conhecidas são o Haskell, o OCaml e o Erlang.
Em programação funcional, bugs podem ser evitados, não por métodos de teste ou depuração, mas por ser possível demonstrar os algoritmos usando uma álgebra especial, o cálculo lambda. Aliás, diversos nomes na programação funcional são de matemáticos do cálculo lambda, como Haskell Curry e Alonzo Church.
A mudança de paradigma é enorme! Estou pensando até em escrever algumas notas sobre programação funcional, mas acho que o formato de Wiki é mais apropriado. De qualquer forma, para quem quiser conhecer um pouco mais, indico o artigo do John Backus (o mesmo do Fortran), que explica qual a importância da mudança de paradigma, e apresenta uma linguagem conceitual, o FP. É um artigo árido, com uma notação matemática pesada, mas cuja leitura é importantíssima para conhecer o conceito.
Em tempo: brinquei um pouco com a biblioteca Clam, que citei em um post anterior, mas no Windows ela deu uma série de crashes de alocação de memória. Depois vou tentar de novo no Linux, ou usando o fonte, para depurar.
Em todos esses anos nessa indústria vital, essa é a primeira vez que isso me acontece!
segunda-feira, 16 de junho de 2008
Mudança de paradigmas
Marcadores:
programação funcional
Postado por
Rafael Gustavo
às
20:33
quinta-feira, 5 de junho de 2008
Sinal dos tempos
Marcadores:
Bate-papo
Pois é... A velha piada ganha nova versões com o passar do tempo! Veja a evolução:
1900: "Dinheiro não traz felicidade!"
1940: "Dinheiro não traz felicidade, mas ajuda!"
1970: "Dinheiro não traz felicidade, mas manda buscar! Embrulhada pra presente!"
2008: "Dinheiro não traz felicidade, mas a compra pela Internet! Em banda larga de 16Mbps!"
Aproveitem: a Mega-sena está acumulada em 13,5 milhões de reais!
1900: "Dinheiro não traz felicidade!"
1940: "Dinheiro não traz felicidade, mas ajuda!"
1970: "Dinheiro não traz felicidade, mas manda buscar! Embrulhada pra presente!"
2008: "Dinheiro não traz felicidade, mas a compra pela Internet! Em banda larga de 16Mbps!"
Aproveitem: a Mega-sena está acumulada em 13,5 milhões de reais!
Postado por
Rafael Gustavo
às
10:24
Assinar:
Postagens (Atom)
Postagens populares
-
Havia visto esse circuito há um tempo no instructables.org e fiquei curioso em entender como ele funcionava. Esse final de semana acabei mo...
-
Mônadas ( monads em inglês) são o ponto alto da programação funcional. Em Haskell, uma linguagem que se proclama puramente funcional, elas ...
-
Pois é pessoal! Ainda estou devendo a parte final do meu programa do ICFP2009. O programa ainda está muito mal estruturado, e enquanto não o...