Aujourd'hui, j'ai essayé de réduire une liste de fonctions à l'aide de la classe de types monoid, mais la fonction résultante attend que son argument soit une instance de Monoid pour une raison quelconque.Comment utiliser une instance monoid d'une fonction?
GHCi me dit que le type de mconcat [id, id, id, id]
est Monoid a => a -> a
. Pourtant, je m'attendrais à ce que ce soit a -> a
.
Que se passe-t-il?
Encore une autre solution: 'appEndo $ foldMap Endo [id, id, id, id]' – chi