Utilisation de ghc v8.0.1, compilé avec l'indicateur -O2. J'ai un problème avec RecursiveDo (mdo). Il y a deux fonctions légèrement différentes qui devraient produire la même sortie, mais ce n'est pas
Mise à jour: J'ai ajouté an answer qui décrit ma solution finale (indice: le type de données Expr n'était pas suffisant). Je suis writing un évaluateur pour une langue peu d'expression, mais je suis c
L'instance est définie comme instance MonadFix [] where
mfix f = case fix (f . head) of
[] -> []
(x:_) -> x : mfix (tail . f)
Mais je ne pas saisir le sens intuitif derrière elle
Je suis tombé sur quelque chose que je suis deviner est un bug dans Data.Map, mais qui est aussi très probablement un bug dans mes connaissances Haskell. En espérant que quelqu'un peut clarifier ce qu