haskell-issues icon indicating copy to clipboard operation
haskell-issues copied to clipboard

Free member of a class :: forall k. (k -> Constraint) -> k

Open Gurkenglas opened this issue 8 years ago • 1 comments

Foldable would map to a type constructor with one type parameter a and its result isomoprhic to Monoid m => (a -> m) -> m.

Functor, Traversable, Monad, Applicative and Alternative might as well map to () because they do not include a deconstructor.

Comonad would map to something isomorphic to data FreeComonad a = FreeComonad a (FreeComonad (FreeComonad a))

Gurkenglas avatar Apr 23 '16 15:04 Gurkenglas

Could you expand?

neongreen avatar Apr 23 '16 17:04 neongreen