package olmi

  1. Overview
  2. Docs

Module type OlmiInterfaces.INFIXSource

Provide the signatures of all infix operators (linked to a Monad)

Sourcetype 'a t
Sourceval (<*>) : ('a -> 'b) t -> 'a t -> 'b t

Sequential application.

Sourceval (<$>) : ('a -> 'b) -> 'a t -> 'b t

infix alias of fmap

Sourceval (<$) : 'a -> 'b t -> 'a t

Replace all locations in the input with the same value.

Sourceval (*>) : 'a t -> 'b t -> 'b t

Sequence actions, discarding the value of the first argument.

Sourceval (<*) : 'a t -> 'b t -> 'a t

Sequence actions, discarding the value of the second argument.

Sourceval (<**>) : 'a t -> ('a -> 'b) t -> 'b t

A variant of <*> with the arguments reversed.

Sourceval (>>=) : 'a t -> ('a -> 'b t) -> 'b t

Sequentially compose two actions, passing any value produced by the first as an argument to the second.

Sourceval (>|=) : 'a t -> ('a -> 'b) -> 'b t

infix alias of fmap

Sourceval (<=<) : ('b -> 'c t) -> ('a -> 'b t) -> 'a -> 'c t

Right-to-left Kleisli composition of monads. (>=>), with the arguments flipped

Sourceval (>=>) : ('a -> 'b t) -> ('b -> 'c t) -> 'a -> 'c t

Left-to-right Kleisli composition of monads.

Sourceval (=<<) : ('a -> 'b t) -> 'a t -> 'b t

Flipped version of >>=

Sourceval (>>) : 'a t -> 'b t -> 'b t

Sequentially compose two actions, discarding any value produced by the first, like sequencing operators (such as the semicolon) in imperative languages.