In addition to the non-existent laws, (Every law you can classically state is a free theorem) we need the extra requirement that if the type is Applicative then pure = point = return, and also if it is a Comonad then extract = copoint.
This ensures consistency of the hierarchy and avoids the worst abuses.
We need haddocks for this package.
In addition to the non-existent laws, (Every law you can classically state is a free theorem) we need the extra requirement that if the type is
Applicative
thenpure
=point
=return
, and also if it is aComonad
thenextract
=copoint
.This ensures consistency of the hierarchy and avoids the worst abuses.