package octez-libs

  1. Overview
  2. Docs
A package that contains multiple base libraries used by the Octez suite

Install

Dune Dependency

Authors

Maintainers

Sources

octez-19.1.tar.gz
sha256=55ea1fb8bb3273a7fc270ca8f650d45c56449665619482aad9bc12f3ea736b7e
sha512=fec850fc2d17d7490bbabd5147d62aad13b3aaed8774270f8a38ab419670ed03e0fd30cf8642a97984eca5c2446726fe590ad99c015f7ec50919dc7652f25053

doc/octez-libs.test-helpers/Tezos_test_helpers/Qcheck_extra/Monad/index.html

Module Qcheck_extra.MonadSource

Monad extends the Applicative type class with a new function join. join takes a value in a nested context a t t and joins them together so that we have a single context a t.

We can define let* in terms of join and vice versa:

let ( let* ) x f = join (map f x)
let join x =
  let* y = x in
  y

assuming

( let* ) = bind .

A Monad should satisfy:

  • Associativity: (f >=> g) >=> h = f >=> (g >=> h)
  • Identities: return >=> f = f = f >=> return

assuming

( let* ) = bind .

and

 f >=> g =
  fun x ->
    let* y = f x in
    let* z = g y in
    return z
Sourcemodule type S = sig ... end
Sourcemodule Syntax (M : S) : sig ... end

Utility to import let-syntax for any Monad.

OCaml

Innovation. Community. Security.