%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%% @doc The Applicative Type Class. %%% @end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%_* Module declaration ====================================================== -module(do_applicative). %%%_* Includes ================================================================ -include("do_types.hrl"). %%%_* Callbacks =============================================================== -callback pure(A) -> applicative(A). -callback liftA2(functor(fn(A, B)), functor(A)) -> functor(B).