Alice @Sasha@witches.town
Suivre

@wryk @Ambraven c.f. la session de démo que j'ai ajouté dans le README.txt en fait.

Et effectivement `putStrLn generate` n'a pas de sens parce que l'expression est mal typée :

putStrLn :: String -> IO ()

attends une chaîne en argument, et fera une opération de type unit, dans la monade IO (provoquant un effet de bord), alors que

generate :: IO String

renvoie une chaîne de caractères, mais «salie» par la monade IO (parce que pour l'obtenir, il a fallu faire un effet de bord : consommer des valeurs du générateur aléatoire, donc modifier son état).