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.0.tar.gz
sha256=c6df840ebbf115e454db949028c595bec558a59a66cade73b52a6d099d6fa4d4
sha512=d8aee903b9fe130d73176bc8ec38b78c9ff65317da3cb4f3415f09af0c625b4384e7498201fdb61aa39086a7d5d409d0ab3423f9bc3ab989a680cf444a79bc13

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.