preface

An opinionated library for function programming (à La Haskell)
Legend:
Library
Module
Module type
Parameter
Class
Class type
Library preface.stdlib
Module Preface_stdlib . Fun . Arrow . Infix
type ('a, 'b) t = ( 'a, 'b ) t

The type held by the Arrow.

val (%) : ( 'b, 'c ) t -> ( 'a, 'b ) t -> ( 'a, 'c ) t

An alias of CORE.compose (to be iso with Preface_core).

val (<%) : ( 'b, 'c ) t -> ( 'a, 'b ) t -> ( 'a, 'c ) t

An alias of CORE.compose (to be iso with Preface_core).

val (%>) : ( 'a, 'b ) t -> ( 'b, 'c ) t -> ( 'a, 'c ) t

An alias of OPERATION.compose_left_to_right (to be iso with Preface_core).

val (<<<) : ( 'b, 'c ) t -> ( 'a, 'b ) t -> ( 'a, 'c ) t

An alias of CORE.compose (to be iso with Haskell's approach). Even <<< looks like <% (it is an alias for the same function), they differ in their priorities. OCaml documentation of operators priorities

val (>>>) : ( 'a, 'b ) t -> ( 'b, 'c ) t -> ( 'a, 'c ) t

An alias of CORE.compose_left_to_right (to be iso with Haskell's approach). Even >>> looks like %> (it is an alias for the same function), they differ in their priorities. OCaml documentation of operators priorities

val (***) : ( 'a, 'b ) t -> ( 'c, 'd ) t -> ( 'a * 'c, 'b * 'd ) t
val (&&&) : ( 'a, 'b ) t -> ( 'a, 'c ) t -> ( 'a, 'b * 'c ) t
val (^>>) : ( 'a -> 'b ) -> ( 'b, 'c ) t -> ( 'a, 'c ) t
val (>>^) : ( 'a, 'b ) t -> ( 'b -> 'c ) -> ( 'a, 'c ) t
val (<<^) : ( 'b, 'c ) t -> ( 'a -> 'b ) -> ( 'a, 'c ) t
val (^<<) : ( 'b -> 'c ) -> ( 'a, 'b ) t -> ( 'a, 'c ) t