1 pontos por GN⁺ 2024-06-19 | 1 comentários | Compartilhar no WhatsApp

Por que levei 15 anos para aprender Haskell

Meu primeiro contato com Haskell

  • Haskell é uma linguagem de programação funcional criada por lógicos escoceses do século XX.
  • Tive meu primeiro contato com Haskell por volta de 2006.
  • Na universidade, comecei a aprender Haskell por meio de uma pesquisa independente, mas na prática não aprendi muita coisa.

Haskell na prática

  • Em 2009, ao usar um gerenciador de janelas em mosaico chamado Xmonad, tive um pouco mais de contato com Haskell.
  • Como o arquivo de configuração do Xmonad é escrito em Haskell, passei a entendê-lo um pouco melhor por meio disso.

Aprendendo por meio do Elm

  • Elm é uma linguagem parecida com Haskell, e por meio dela foi possível entender com mais facilidade os conceitos de programação funcional.
  • Ao criar uma página de dashboard com Elm, aprendi os princípios da programação funcional.

De volta ao Haskell

  • Com base no que aprendi com Elm, criei um gerador de site estático usando Shake, uma biblioteca de Haskell.
  • Depois disso, passei a aplicar conceitos de Haskell em Python e a escrever código melhor.

Escrevendo o primeiro programa útil em Haskell

  • Em 2023, trabalhando como freelancer, acabei escrevendo um programa de rastreamento de tempo em Haskell.
  • Esse programa faz o parse de opções de linha de comando e interage com um banco de dados.
  • Finalmente consegui escrever um programa útil em Haskell, e senti uma grande sensação de realização.

Opinião do GN⁺

  • Vantagens da programação funcional: linguagens funcionais como Haskell enfatizam imutabilidade e funções puras, aumentando a previsibilidade e a estabilidade do código.
  • Curva de aprendizado: Haskell é difícil de aprender, mas pode ser eficaz abordá-lo gradualmente por meio de linguagens semelhantes, como Elm.
  • Aplicação prática: usar Haskell em projetos reais pode ajudar a compreender e aplicar melhor os princípios da programação funcional.
  • Escolha de ferramentas: bibliotecas de Haskell como Shake são úteis para construir sistemas de build e permitem experimentar a praticidade da linguagem.
  • Comunidade e materiais: aproveitar a comunidade de Haskell e os diversos materiais de estudo pode ajudar bastante durante o processo de aprendizado.

1 comentários

 
GN⁺ 2024-06-19
Comentários do Hacker News
  • Aprender programação funcional vale a pena e não leva 15 anos. Em Haskell, parece natural modelar dados de domínio de forma declarativa, trabalhar com funções puras e interagir com o mundo real nas fronteiras do programa. Para iniciantes, recomendam F#.
  • Prolog oferece ainda mais insights para entender programação funcional. Leva apenas alguns dias para entender a linguagem, mas leva tempo para entender os resultados.
  • Pedido de recomendação de bons recursos para aprender Haskell. Já havia interesse em Haskell há muito tempo e alguns conceitos de programação funcional foram internalizados com um projeto paralelo em F#, mas ainda falta entendimento sobre mônadas.
  • Link: Recursos para aprender Haskell
  • Opinião pedindo para ver o código do autor. Há curiosidade sobre que resultado a jornada do autor produziu.
  • Link: Ver o código do autor
  • Pergunta sobre os benefícios de aprender uma linguagem de programação funcional pura. Ao escrever código que lida com dados e eventos do mundo real, a fronteira entre código otimizado e curiosidade intelectual fica borrada.
  • O motivo de Haskell parecer atraente é que parece natural modelar dados de domínio de forma declarativa, trabalhar com funções puras e interagir com o mundo real nas fronteiras do programa. Essa é uma forma de trabalhar preferida não só em Haskell, mas também em outras linguagens.
  • Quando Haskell era um tema quente há 20 anos, ML também era muito discutido. Hoje, ML quase sempre significa machine learning.
  • 15 anos ou nada.