Introdução à linguagem Haskell

Índice

Vamos ver um introdução à linguagem de programação Haskell, trata-se de um linguagem funcional. Nesse tipo de linguagem as funções vão realizar um cálculo e vão retornar algo, não tem efeito secundário. Além disso, as variáveis ​​só podem assumir um valor, ou seja, se tivermos uma variável chamada n à qual atribuímos o valor 10, n valerá 10, não podemos torná-la 14 ou 3.

Haskell é uma linguagem de tipagem estáticaOutro exemplo de linguagem como esta é Java, isso significa que quando compilamos um código, o compilador saberá que tipo de dado pertence a uma parte da memória (inteiro, string, caractere, booleano, etc.), ao contrário do que acontece em linguagens dinâmicas, como Python ou Ruby.

Esta linguagem faz avaliações preguiçosas, ele não fará um cálculo até que um valor seja totalmente necessário e também impedirá que esta avaliação seja repetida se precisarmos do cálculo posteriormente. Para funções exponenciais é algo interessante, pois ajudará a reduzir o tempo de execução.

Após uma introdução a algumas características da linguagem, vamos começar com a ação, o tutorial será totalmente prático, a primeira coisa que precisaremos é instalar o Haskell em nosso sistema, para este tutorial será utilizado o Ubuntu, portanto, irei executar o seguinte comando no terminal:

 sudo apt-get install plataforma haskell
Se você usa outro sistema operacional, deixamos você um botão para a página oficial do Haskell, onde você encontrará como proceder com a instalação, seja no Windows, Mac ou outra distribuição Linux:

BAIXAR HASKELL

Vamos começar com a prática, vamos dividir o tutorial em exemplos, começando pelo mais simples.

Exemplo 1
Vamos começar lançando o console Haskell, para isso em um terminal vamos escrever o seguinte comando:

 ghci
Como você pode ver, carregamos:

O promp é o Prelúdio, podemos alterá-lo, neste caso vamos colocá-lo em hkl, para isso executaremos:

 : definir prompt "hskl>"
Vemos como mudou:

Para finalizar com o primeiro exemplo, vamos ver como fazer algumas operações neste console, abaixo está a captura dos exemplos, podemos ver uma soma, uma divisão (vemos que nos mostra decimais, em outras linguagens Teria retornado a parte inteira), e uma operação com parênteses, para apreciar sua função.

ObservaçãoSe quisermos sair do console Haskell, escrevemos:

 : que
E nós damos entrada.

Exemplo 2
No exemplo a seguir, vamos trabalhar com tipos de dados booleanos, veja a imagem a seguir para entender seu uso:

Não requer mais explicações, nós usamos e (&&) e ou (||), além da negação (não) No momento tudo é fácil, como podemos ver.

Exemplo 3
Podemos comparar strings, números, como fazemos em outras línguas, vamos ver como funciona:

A comparação entre diferentes tipos nos lança um erro, como esperado.

Exemplo 4
Neste exemplo, veremos funções que temos em Haskell, que provavelmente usaremos com frequência:

Explicamos as funções vistas na imagem anterior:

  • succ x: Retorna o sucessor de x, se x for 3, retorna 4.
  • min x y: Retorna o número mínimo entre x e y, se y for 3 e x for 2, retorna x.
  • max x y: Retorna o máximo de xey, no exemplo de 3 e 2, retorna 3.

Exemplo 5
Neste exemplo, vamos criar alguma "função":

Vemos que criamos a função exp, o que ela faz é um número ao quadrado, e uma função chamada double, que retornará duas vezes o número que passamos para ela, você também pode ver que pode combinar o que uma função retorna com outra operações como adição.

Exemplo 6
Vamos criar nossa própria função máxima, mas para 3 números, e vamos usá-la, abaixo da captura:

Exemplo 7
Vamos ver outras funções com as quais podemos trabalhar em Haskell, são simples, vamos aplicá-las a listas.

Nós vemos como iniciar o que ele faz é retornar a lista sem o último elemento, cauda ele faz o oposto, ele retorna a lista sem o primeiro elemento. Se virmos cabeça retorna o primeiro elemento da lista e, claro, durar retorna o último elemento. E as duas últimas funções, comprimento nos dá o comprimento da lista e marcha ré Ele o devolve para nós, virado. Existem mais funções, mas não é objetivo do tutorial ver todas elas, apenas dar uma aproximação para que você possa começar a trabalhar com Haskell.

Exemplo 8
Vamos ver o último exemplo que vai calcular o fatorial de um número, que vai tentar criar um arquivo, compilá-lo e executá-lo, vamos criar um arquivo chamado test.hs e nele vamos adicionar o seguinte código:

 fac n = (if n == 0 then 1 else n * fac (n-1)) main = print (fac 3)
Para compilar usamos a seguinte linha:
 ghc -o test test.hs
E para executá-lo colocamos:
 ./teste
Aqui está o resultado:

Bem, este é o tutorial sobre o Linguagem de programação HaskellSe você já tem experiência em programação rápida, vai pegar o jeito, embora se não estiver acostumado com linguagens funcionais no início, sua programação pode ser um pouco estranha.

Gostou e ajudou este tutorial?Você pode recompensar o autor pressionando este botão para dar a ele um ponto positivo
wave wave wave wave wave