Inferred (rank 1) type of moeb could be more general
Jashweii opened this issue · 1 comments
Jashweii commented
With an explicit type signature, moeb can be given a more general type
moeb :: ((forall b . (a -> b) -> b) -> c -> a) -> c -> a
moeb f x = go where go = f ($ go) x
e.g. compare moeb (\a -> bimap a a)
with/without the explicit rank 3(?) signature - the rank 3 version allows a fixpoint with different parameters.
quchen commented
Cleaning up old open issues/discussions.