-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
We shall add the core functionality of the library, by which we mean everything except support for linear types. Concretely, we shall implement the following classes:
-
Universal -
Functor -
Distinctive -
Monad -
Comonad -
Adjoint -
AdjointMonad
We shall provide default implementations for all methods based on the following constraints:
- In the case of
Distinctive, the constraint that the distinctive functor is a left adjoint of the universal functor - In the case of
Adjoint, the constraint that the adjoint functor is an adjoint monad - In the case of
AdjointMonad, the trivial constraint (the implementations shall be based on the superclasses) - In the case of all other classes, the constraint that the universal functor is the identity functor
Reactions are currently unavailable