Beginnend mit GHC 7.10 wurde die "Applicative Monad Proposal" implementiert. Dies ist eine bahnbrechende Änderung und die Happy-Bibliothek wurde noch nicht aktualisiert, um dies zu beheben.
Es gibt eine migration guide im Haskell-Wiki, die genau dieses Problem anspricht.
Grundsätzlich seit Applicative
und Functor
sind jetzt Superklassen von Monad
Sie müssen Instanz Deklarationen hinzufügen. In diesem Fall ist HappyIdentity
eine Instanz von Monad
, daher müssen Sie die Instanzen Applicative HappyIdentity
und Functor HappyIdentity
hinzufügen. Außerdem kann die Monad
Instanz entfernt werden, da sie jetzt redundant ist.
Ohne die Bibliothek selbst zu ändern, besteht die einzige Möglichkeit darin, auf eine frühere GHC-Version zu wechseln oder zu warten, bis der Bibliotheksverwalter die Bibliothek aktualisiert.
glücklich 1.19.5 tatsächlich kompiliert für mich mit GHC 7.10.3. Sind Sie sicher, dass Sie versucht haben, 1.19.5 und nicht eine ältere Version zu kompilieren? – Xandaros