• [^] # Re: Question(s ?)

    Posté par . En réponse au journal Comprendre Go en 5 minutes, en Haskell. Évalué à 2.

    En fait, c'est tout simplement pour faire comme le code Go.
    Mais effectivement, même sans cela, c'est certainement ce qu'on aurait fait dans un code Haskell classique. Et effectivement, afficher directement demanderait de changer l'interface pour être dans la monade IO.

    class Developer a where
     code :: a -> IO ()
    data GoDeveloper = GoDeveloper
    instance Developer GoDeveloper where
     code _ = putStrLn "go code"
    main :: IO ()
    main = do
     let goDeveloper = GoDeveloper
     code goDeveloper