package travesty

  1. Overview
  2. Docs
Traversable containers, monad extensions, and more

Install

Dune Dependency

Authors

Maintainers

Sources

travesty-v0.7.0.tbz
sha256=01661918f73f33b0e6d0cf3851c2d5d6ef76b86332a3e76a4958689ff1a6fd3a
sha512=14e9b0e9ae39055c386c5e996055ce59edf57b9bf9b0055722632520f9c9b0270af571576950be982ed2b86e859361c7344166a38a85fa7d28d45be8f3e18c77

Description

'Travesty' is a library for defining containers with applicative or monadic traversals, inspired by Haskell's Traversable typeclass; it also contains various helpers for monadic code, such as state transformers and extension functions for common monads and containers. It sits on top of Jane Street's Base library and ecosystem.

Published: 12 Feb 2021

README

Travesty

Travesty is a library for defining containers with applicative traversals, inspired by Haskell's Traversable typeclass. It sits on top of Jane Street's Core library ecosystem.

Travesty also contains several other bits of Haskell-style applicative functor and monad functionality:

  • state monads (Travesty.State);

  • state transformers (Travesty.State_transform);

  • miscellaneous extensions on monads (Travesty.Monad_exts) and containers (Travesty.Containers_exts);

  • extensions and implementations of Travesty signatures for Base (Travesty_base_exts);

  • extra function combinators (Travesty_base_exts.Fn).

Note: the Travesty_base_exts modules form a separate subpackage (travesty.base_exts).

Travesty is licenced under the MIT licence, and is a spin-off from the c4f project.

Usage

See the API documentation.

Travesty tries not to shadow existing modules except in the various exts subpackages.

Contributions

Any and all contributions (pull requests, issues, etc.) are welcome.

Dependencies (4)

  1. base >= "v0.12.0" & < "v0.16.0"
  2. ppx_jane >= "v0.12.0"
  3. ocaml >= "4.08"
  4. dune >= "2.0"

Dev Dependencies (1)

  1. ppx_expect with-test & >= "v0.12.0"

Used by

None

Conflicts

None