• OCaml logo OCaml logo
  • Learn
  • Packages
  • Community
  • Blog
  • Playground
  • Searching...
    Or go to: Standard Library API
  • Learn
  • Packages
  • Community
  • Blog
  • Playground
  • Get started
  • monads

  • Documentation
  • doc
  1. Overview
  2. Docs
package monads
  • monads
    • Monads
      • Std
        • Monad
          • Basic
          • Basic2
          • Choice
            • Basic
            • Basic2
            • Make
              • M
            • Make2
              • M
            • S
            • S2
          • Collection
            • Basic
            • Delay
            • Eager
            • S
            • S2
          • Cont
            • Collection
              • Delay
                • T
              • Eager
                • T
              • S
            • Exn
            • Fn
            • Let
            • Let_syntax
              • Let_syntax
                • Open_on_rhs
            • Lift
            • List
            • Make
              • Collection
                • Delay
                  • T
                • Eager
                  • T
                • S
              • Exn
              • Fn
              • Let
              • Let_syntax
                • Let_syntax
                  • Open_on_rhs
              • Lift
              • List
              • M
                • Collection
                  • Delay
                    • T
                  • Eager
                    • T
                  • S
                • Exn
                • Fn
                • Let
                • Let_syntax
                  • Let_syntax
                    • Open_on_rhs
                • Lift
                • List
                • Monad_infix
                • Pair
                • Seq
                • Syntax
                • Triple
              • Monad_infix
              • Pair
              • Seq
              • Syntax
              • T
              • Triple
            • Make2
              • Collection
                • Delay
                  • T
                • Eager
                  • T
                • S
              • Exn
              • Fn
              • Let
              • Let_syntax
                • Let_syntax
                  • Open_on_rhs
              • Lift
              • List
              • M
                • Collection
                  • Delay
                    • T
                  • Eager
                    • T
                  • S
                • Exn
                • Fn
                • Let
                • Let_syntax
                  • Let_syntax
                    • Open_on_rhs
                • Lift
                • List
                • Monad_infix
                • Pair
                • Seq
                • Syntax
                • Triple
              • Monad_infix
              • Pair
              • Seq
              • Syntax
              • Triple
            • Monad_infix
            • Pair
            • S
              • Collection
                • Delay
                  • T
                • Eager
                  • T
                • S
              • Exn
              • Fn
              • Let
              • Let_syntax
                • Let_syntax
                  • Open_on_rhs
              • Lift
              • List
              • Monad_infix
              • Pair
              • Seq
              • Syntax
              • Triple
            • S2
              • Collection
                • Delay
                  • T
                • Eager
                  • T
                • S
              • Exn
              • Fn
              • Let
              • Let_syntax
                • Let_syntax
                  • Open_on_rhs
              • Lift
              • List
              • Monad_infix
              • Pair
              • Seq
              • Syntax
              • Triple
            • Seq
            • Syntax
            • T1
              • M
                • Collection
                  • Delay
                    • T
                  • Eager
                    • T
                  • S
                • Exn
                • Fn
                • Let
                • Let_syntax
                  • Let_syntax
                    • Open_on_rhs
                • Lift
                • List
                • Monad_infix
                • Pair
                • Seq
                • Syntax
                • Triple
              • T
            • T2
              • M
                • Collection
                  • Delay
                    • T
                  • Eager
                    • T
                  • S
                • Exn
                • Fn
                • Let
                • Let_syntax
                  • Let_syntax
                    • Open_on_rhs
                • Lift
                • List
                • Monad_infix
                • Pair
                • Seq
                • Syntax
                • Triple
            • Triple
          • Core
            • Collection
              • Delay
                • T
              • Eager
                • T
              • S
            • Exn
            • Fn
            • Let
            • Let_syntax
              • Let_syntax
                • Open_on_rhs
            • Lift
            • List
            • M
              • Let_syntax
                • Let_syntax
                  • Open_on_rhs
              • Monad_infix
            • Monad_infix
            • Pair
            • Seq
            • Syntax
            • Triple
          • Core2
            • Collection
              • Delay
                • T
              • Eager
                • T
              • S
            • Exn
            • Fn
            • Let
            • Let_syntax
              • Let_syntax
                • Open_on_rhs
            • Lift
            • List
            • M
              • Let_syntax
                • Let_syntax
                  • Open_on_rhs
              • Monad_infix
            • Monad_infix
            • Pair
            • Seq
            • Syntax
            • Triple
          • Fail
            • S
            • S2
          • Fun
            • Collection
              • Delay
                • T
              • Eager
                • T
              • S
            • Exn
            • Fn
            • Let
            • Let_syntax
              • Let_syntax
                • Open_on_rhs
            • Lift
            • List
            • Make
              • Collection
                • Delay
                  • T
                • Eager
                  • T
                • S
              • Exn
              • Fn
              • Let
              • Let_syntax
                • Let_syntax
                  • Open_on_rhs
              • Lift
              • List
              • M
                • Collection
                  • Delay
                    • T
                  • Eager
                    • T
                  • S
                • Exn
                • Fn
                • Let
                • Let_syntax
                  • Let_syntax
                    • Open_on_rhs
                • Lift
                • List
                • Monad_infix
                • Pair
                • Seq
                • Syntax
                • Triple
              • Monad_infix
              • Pair
              • Seq
              • Syntax
              • Triple
            • Make2
              • Collection
                • Delay
                  • T
                • Eager
                  • T
                • S
              • Exn
              • Fn
              • Let
              • Let_syntax
                • Let_syntax
                  • Open_on_rhs
              • Lift
              • List
              • M
                • Collection
                  • Delay
                    • T
                  • Eager
                    • T
                  • S
                • Exn
                • Fn
                • Let
                • Let_syntax
                  • Let_syntax
                    • Open_on_rhs
                • Lift
                • List
                • Monad_infix
                • Pair
                • Seq
                • Syntax
                • Triple
              • Monad_infix
              • Pair
              • Seq
              • Syntax
              • Triple
            • Monad_infix
            • Pair
            • S
              • Collection
                • Delay
                  • T
                • Eager
                  • T
                • S
              • Exn
              • Fn
              • Let
              • Let_syntax
                • Let_syntax
                  • Open_on_rhs
              • Lift
              • List
              • Monad_infix
              • Pair
              • Seq
              • Syntax
              • Triple
            • S2
              • Collection
                • Delay
                  • T
                • Eager
                  • T
                • S
              • Exn
              • Fn
              • Let
              • Let_syntax
                • Let_syntax
                  • Open_on_rhs
              • Lift
              • List
              • Monad_infix
              • Pair
              • Seq
              • Syntax
              • Triple
            • Seq
            • Syntax
            • T1
              • M
                • Collection
                  • Delay
                    • T
                  • Eager
                    • T
                  • S
                • Exn
                • Fn
                • Let
                • Let_syntax
                  • Let_syntax
                    • Open_on_rhs
                • Lift
                • List
                • Monad_infix
                • Pair
                • Seq
                • Syntax
                • Triple
            • T2
              • M
                • Collection
                  • Delay
                    • T
                  • Eager
                    • T
                  • S
                • Exn
                • Fn
                • Let
                • Let_syntax
                  • Let_syntax
                    • Open_on_rhs
                • Lift
                • List
                • Monad_infix
                • Pair
                • Seq
                • Syntax
                • Triple
            • Triple
          • Ident
            • Collection
              • Delay
                • T
              • Eager
                • T
              • S
            • Exn
            • Fn
            • Let
            • Let_syntax
              • Let_syntax
                • Open_on_rhs
            • Lift
            • List
            • Monad_infix
            • Pair
            • Seq
            • Syntax
            • Triple
          • Lazy
            • Collection
              • Delay
                • T
              • Eager
                • T
              • S
            • Exn
            • Fn
            • Let
            • Let_syntax
              • Let_syntax
                • Open_on_rhs
            • Lift
            • List
            • Make
              • Collection
                • Delay
                  • T
                • Eager
                  • T
                • S
              • Exn
              • Fn
              • Let
              • Let_syntax
                • Let_syntax
                  • Open_on_rhs
              • Lift
              • List
              • M
                • Collection
                  • Delay
                    • T
                  • Eager
                    • T
                  • S
                • Exn
                • Fn
                • Let
                • Let_syntax
                  • Let_syntax
                    • Open_on_rhs
                • Lift
                • List
                • Monad_infix
                • Pair
                • Seq
                • Syntax
                • Triple
              • Monad_infix
              • Pair
              • Seq
              • Syntax
              • Triple
            • Make2
              • Collection
                • Delay
                  • T
                • Eager
                  • T
                • S
              • Exn
              • Fn
              • Let
              • Let_syntax
                • Let_syntax
                  • Open_on_rhs
              • Lift
              • List
              • M
                • Collection
                  • Delay
                    • T
                  • Eager
                    • T
                  • S
                • Exn
                • Fn
                • Let
                • Let_syntax
                  • Let_syntax
                    • Open_on_rhs
                • Lift
                • List
                • Monad_infix
                • Pair
                • Seq
                • Syntax
                • Triple
              • Monad_infix
              • Pair
              • Seq
              • Syntax
              • Triple
            • Monad_infix
            • Pair
            • S
              • Collection
                • Delay
                  • T
                • Eager
                  • T
                • S
              • Exn
              • Fn
              • Let
              • Let_syntax
                • Let_syntax
                  • Open_on_rhs
              • Lift
              • List
              • Monad_infix
              • Pair
              • Seq
              • Syntax
              • Triple
            • S2
              • Collection
                • Delay
                  • T
                • Eager
                  • T
                • S
              • Exn
              • Fn
              • Let
              • Let_syntax
                • Let_syntax
                  • Open_on_rhs
              • Lift
              • List
              • Monad_infix
              • Pair
              • Seq
              • Syntax
              • Triple
            • Seq
            • Syntax
            • T1
              • M
                • Collection
                  • Delay
                    • T
                  • Eager
                    • T
                  • S
                • Exn
                • Fn
                • Let
                • Let_syntax
                  • Let_syntax
                    • Open_on_rhs
                • Lift
                • List
                • Monad_infix
                • Pair
                • Seq
                • Syntax
                • Triple
            • T2
              • M
                • Collection
                  • Delay
                    • T
                  • Eager
                    • T
                  • S
                • Exn
                • Fn
                • Let
                • Let_syntax
                  • Let_syntax
                    • Open_on_rhs
                • Lift
                • List
                • Monad_infix
                • Pair
                • Seq
                • Syntax
                • Triple
            • Triple
          • List
            • Collection
              • Delay
                • T
              • Eager
                • T
              • S
            • Exn
            • Fn
            • Let
            • Let_syntax
              • Let_syntax
                • Open_on_rhs
            • Lift
            • List
            • Make
              • Collection
                • Delay
                  • T
                • Eager
                  • T
                • S
              • Exn
              • Fn
              • Let
              • Let_syntax
                • Let_syntax
                  • Open_on_rhs
              • Lift
              • List
              • M
                • Collection
                  • Delay
                    • T
                  • Eager
                    • T
                  • S
                • Exn
                • Fn
                • Let
                • Let_syntax
                  • Let_syntax
                    • Open_on_rhs
                • Lift
                • List
                • Monad_infix
                • Pair
                • Seq
                • Syntax
                • Triple
              • Monad_infix
              • Pair
              • Seq
              • Syntax
              • Triple
            • Make2
              • Collection
                • Delay
                  • T
                • Eager
                  • T
                • S
              • Exn
              • Fn
              • Let
              • Let_syntax
                • Let_syntax
                  • Open_on_rhs
              • Lift
              • List
              • M
                • Collection
                  • Delay
                    • T
                  • Eager
                    • T
                  • S
                • Exn
                • Fn
                • Let
                • Let_syntax
                  • Let_syntax
                    • Open_on_rhs
                • Lift
                • List
                • Monad_infix
                • Pair
                • Seq
                • Syntax
                • Triple
              • Monad_infix
              • Pair
              • Seq
              • Syntax
              • Triple
            • Monad_infix
            • Pair
            • S
              • Collection
                • Delay
                  • T
                • Eager
                  • T
                • S
              • Exn
              • Fn
              • Let
              • Let_syntax
                • Let_syntax
                  • Open_on_rhs
              • Lift
              • List
              • Monad_infix
              • Pair
              • Seq
              • Syntax
              • Triple
            • S2
              • Collection
                • Delay
                  • T
                • Eager
                  • T
                • S
              • Exn
              • Fn
              • Let
              • Let_syntax
                • Let_syntax
                  • Open_on_rhs
              • Lift
              • List
              • Monad_infix
              • Pair
              • Seq
              • Syntax
              • Triple
            • Seq
            • Syntax
            • T1
              • M
            • T2
              • M
            • Triple
          • Make
            • Collection
              • Delay
                • T
              • Eager
                • T
              • S
            • Exn
            • Fn
            • Let
            • Let_syntax
              • Let_syntax
                • Open_on_rhs
            • Lift
            • List
            • M
            • Monad_infix
            • Pair
            • Seq
            • Syntax
            • Triple
          • Make2
            • Collection
              • Delay
                • T
              • Eager
                • T
              • S
            • Exn
            • Fn
            • Let
            • Let_syntax
              • Let_syntax
                • Open_on_rhs
            • Lift
            • List
            • M
            • Monad_infix
            • Pair
            • Seq
            • Syntax
            • Triple
          • Minimal
            • Collection
              • Delay
                • T
              • Eager
                • T
              • S
            • Exn
            • Fn
            • Let
            • Let_syntax
              • Let_syntax
                • Open_on_rhs
            • Lift
            • List
            • M
            • Monad_infix
            • Pair
            • Seq
            • Syntax
            • Triple
          • Minimal2
            • Collection
              • Delay
                • T
              • Eager
                • T
              • S
            • Exn
            • Fn
            • Let
            • Let_syntax
              • Let_syntax
                • Open_on_rhs
            • Lift
            • List
            • M
            • Monad_infix
            • Pair
            • Seq
            • Syntax
            • Triple
          • Option
            • Collection
              • Delay
                • T
              • Eager
                • T
              • S
            • Exn
            • Fn
            • Let
            • Let_syntax
              • Let_syntax
                • Open_on_rhs
            • Lift
            • List
            • Make
              • Collection
                • Delay
                  • T
                • Eager
                  • T
                • S
              • Exn
              • Fn
              • Let
              • Let_syntax
                • Let_syntax
                  • Open_on_rhs
              • Lift
              • List
              • M
                • Collection
                  • Delay
                    • T
                  • Eager
                    • T
                  • S
                • Exn
                • Fn
                • Let
                • Let_syntax
                  • Let_syntax
                    • Open_on_rhs
                • Lift
                • List
                • Monad_infix
                • Pair
                • Seq
                • Syntax
                • Triple
              • Monad_infix
              • Pair
              • Seq
              • Syntax
              • Triple
            • Make2
              • Collection
                • Delay
                  • T
                • Eager
                  • T
                • S
              • Exn
              • Fn
              • Let
              • Let_syntax
                • Let_syntax
                  • Open_on_rhs
              • Lift
              • List
              • M
                • Collection
                  • Delay
                    • T
                  • Eager
                    • T
                  • S
                • Exn
                • Fn
                • Let
                • Let_syntax
                  • Let_syntax
                    • Open_on_rhs
                • Lift
                • List
                • Monad_infix
                • Pair
                • Seq
                • Syntax
                • Triple
              • Monad_infix
              • Pair
              • Seq
              • Syntax
              • Triple
            • Monad_infix
            • Pair
            • S
              • Collection
                • Delay
                  • T
                • Eager
                  • T
                • S
              • Exn
              • Fn
              • Let
              • Let_syntax
                • Let_syntax
                  • Open_on_rhs
              • Lift
              • List
              • Monad_infix
              • Pair
              • Seq
              • Syntax
              • Triple
            • S2
              • Collection
                • Delay
                  • T
                • Eager
                  • T
                • S
              • Exn
              • Fn
              • Let
              • Let_syntax
                • Let_syntax
                  • Open_on_rhs
              • Lift
              • List
              • Monad_infix
              • Pair
              • Seq
              • Syntax
              • Triple
            • Seq
            • Syntax
            • T1
              • M
            • T2
              • M
            • Triple
          • Plus
            • S
            • S2
          • Reader
            • Collection
              • Delay
                • T
              • Eager
                • T
              • S
            • Exn
            • Fn
            • Let
            • Let_syntax
              • Let_syntax
                • Open_on_rhs
            • Lift
            • List
            • Make
              • Collection
                • Delay
                  • T
                • Eager
                  • T
                • S
              • Exn
              • Fn
              • Let
              • Let_syntax
                • Let_syntax
                  • Open_on_rhs
              • Lift
              • List
              • M
                • Collection
                  • Delay
                    • T
                  • Eager
                    • T
                  • S