Exibindo saídas de depuração

Haskell:
Exibindo saídas de depuração

How to:

Em Haskell, vamos usar a função print para saída de depuração. Veja como:

main :: IO ()
main = do
  let x = 5
  print x  -- Imprime o valor de x
  let y = 7
  print (x + y)  -- Imprime a soma de x e y

Saída esperada:

5
12

Deep Dive

Haskell, sendo uma linguagem funcional, normalmente desencoraja efeitos colaterais como a impressão de saída, mas reconhece sua utilidade para depuração. Inicialmente, você pode pensar em usar putStrLn, mas isso só funciona para String. A função print é mais geral porque funciona para qualquer valor que seja uma instância de Show.

Alternativas incluem o uso de bibliotecas de depuração, como Debug.Trace, que oferece a função trace para inserir pontos de depuração sem modificar a estrutura de tipos de seu programa.

Detalhes de implementação importantes: a função print é essencialmente um atalho para putStrLn . show, que primeiro converte o valor em uma String e então o imprime na saída padrão.

See Also

Para expandir seu conhecimento, confira estes links: