como avançar para a programação funcional de nível superior [fechado]

12

primeiro peço desculpas se este não é o lugar certo para esta pergunta, mas acho que o th.CS não é o lugar certo, com certeza, nem o StackOverflow.

Eu realmente gosto de programação funcional e acho que sou um cara de nível médio em F # e compreendo bastante bem os conceitos básicos de Haskell - e sim, acho que sei / sinto como se soubesse o que é uma Mônada.

Agora, eu realmente quero levar isso para o próximo nível e quero entender do que se trata toda a conversa sobre functores e outras coisas. Só não sei por onde começar.

Leia algo sobre o Lambda Calculus? Teoria da categoria? Tanto eu sei um pouco e não acho que essa seja a maneira certa / mais rápida de iluminação.

Talvez você possa me dar algumas dicas sobre isso.

PS: Eu não tenho medo de matemática e não fico frustrado com exercícios facilmente, mas eu preferiria algumas introduções / textos onde você pode colocar algum código, porque dessa forma você recebe o feedback de uma só vez.

Carsten
fonte

Respostas:

6

F # é um bom começo, você deve continuar com Haskell e, definitivamente, ler o cálculo lambda e ler os Documentos Lambda mencionados acima.

O uso de uma linguagem híbrida (Clojure, Scala, OCaml, ...) pode ajudar a facilitar se você é oriundo de OO, mas acho que se você realmente deseja entender a mentalidade de programação funcional, deve preferir coisa real (Haskell, Lisp, ...).

haylem
fonte
obrigado - é claro que vou me ater ao F # (eu posso usar isso no código de produção ...) e tentarei aprender mais haskell - mas isso é mais difícil porque acho bastante difícil fazer outras coisas além de aplicativos de console no haskell (ainda). - Esquema pode ser bom (teve um curto episódio em Lisp uma vez), mas OCaml é quase o mesmo que F # (eu acho)
Carsten
@ CarstenKönig: Existem muitos projetos muito interessantes que você pode fazer sem se preocupar com uma interface do usuário. Uma ótima opção é trabalhar em uma linguagem de programação: escrever um simples intérprete de Scheme ou Prolog em Haskell é um exercício incrível e vive feliz na linha de comando.
Tikhon Jelvis #
4

Eu recomendo que você leia esses três livros se o tempo é um luxo que você tem:

Esses três livros enriquecerão sua compreensão da Programação Funcional em geral.

Quíron
fonte
O tempo no caixa eletrônico não é um problema - e levarei algum tempo se encontrar energia nas noites de qualquer maneira ... pode ser lento, mas normalmente consigo ler muito. Claro que com esses tipos de livros que o meu ritmo vai abrandar para um rastreamento ... graças (infelizmente o último parece ser fora da cópia ... não posso suportar a leitura de tela)
Carsten