package monads

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

Lifts functions into the monad.

A function that operates on values can be mapped to a function that operates on computations. We provide several liftes for common arities.

val nullary : 'a -> 'a T1(T)(M).t

nullary x lifts x (a synonym to return)

val unary : ('a -> 'b) -> 'a T1(T)(M).t -> 'b T1(T)(M).t

unary f lifts f

val binary : ('a -> 'b -> 'c) -> 'a T1(T)(M).t -> 'b T1(T)(M).t -> 'c T1(T)(M).t

binary f lifts f

val ternary : ('a -> 'b -> 'c -> 'd) -> 'a T1(T)(M).t -> 'b T1(T)(M).t -> 'c T1(T)(M).t -> 'd T1(T)(M).t

ternary f lifts f

val quaternary : ('a -> 'b -> 'c -> 'd -> 'e) -> 'a T1(T)(M).t -> 'b T1(T)(M).t -> 'c T1(T)(M).t -> 'd T1(T)(M).t -> 'e T1(T)(M).t

quaternary f lifts f

val quinary : ('a -> 'b -> 'c -> 'd -> 'e -> 'f) -> 'a T1(T)(M).t -> 'b T1(T)(M).t -> 'c T1(T)(M).t -> 'd T1(T)(M).t -> 'e T1(T)(M).t -> 'f T1(T)(M).t

quinary f lifts f