DEV Community

loading...

Meu primeiro código em Haskell

mrioqueiroz profile image Mário Queiroz ・2 min read

Seguindo o plano de estudar uma nova linguagem por ano, em 2020 decidi voltar as atenções para Haskell, apesar da falta de tempo.

Os motivos pelos quais tomei essa decisão talvez fiquem para um próximo post, pois a razão de eu estar escrevendo este em particular é para compartilhar (com muita felicidade) meu primeiro código utilizando essa linguagem e o paradigma funcional. O que foi uma experiência e tanto pra mim.

Escolhi como primeiro projeto algo simples: um "validador" de CPFs. E mesmo assim, devo dizer que não foi fácil.

Não que Haskell em si seja tão complicado como dizem por aí. É que estando tão habituado a resolver problemas utilizando linguagens imperativas, tentar algo pela primeira vez em uma linguagem funcional acabou me fazendo quebrar a cabeça mais do que queria aceitar.

Em diversos momentos ficava pensando como eu já teria resolvido algo se pudesse utilizar um for ou um if. Mas a ideia era exatamente essa: me forçar a pensar de maneiras diferentes sobre como resolver um problema - tentar novas abordagens.

Com uma linguagem que, de certa forma, te obriga a pensar diferente não há outra alternativa senão queimar alguns neurônios.

E, já que queria algo mais básico para testar os conhecimentos, escolhi um vídeo no YouTube explicando o procedimento e desenvolvi o programa em cima do que estava sendo mostrado. O vídeo em questão é do canal Toda a Matemática e segue abaixo pra quem quiser dar uma olhada:

Indo agora ao objeto deste post, segue o Gist de onde cheguei até o momento:

Ainda tem muita coisa que quero implementar e melhorar. Tenho certeza que o código não está idiomático como poderia. Desse modo, já aproveito pra pedir críticas e orientações a outros programadores mais experientes.

E vou por aqui seguindo com os estudos. Espero em breve poder compartilhar mais sobre o que tenho aprendido e quem sabe ajudar outros que estão nessa mesma caminhada.

Até breve!

Discussion (0)

pic
Editor guide