Package

free

Repository
purescript/purescript-free
Uploaded by
nwolverson

Latest release Build status Pursuit

Free monad, Cofree comonad, Yoneda and Coyoneda functors, and the Trampoline monad implementations for PureScript.

The Free monad implementation is represented using a sequential data structure.

See the following reference for further information.

Installation

spago install free

Documentation

Module documentation is published on Pursuit.

Benchmarks

The following benchmarks compare the implementation at v5.2.0 (commit f686f5fc07766f3ca9abc83b47b6ad3da326759a) with the implementation at v0.6.1 (commit 0df59c5d459fed983131856886fc3a4b43234f1f), which used the Gosub technique to defer monadic binds.

left-bind-small

left-bind-large

right-bind-small

right-bind-large

Modules
Control.Comonad.Cofree
Control.Comonad.Cofree.Class
Control.Monad.Free
Control.Monad.Free.Class
Control.Monad.Trampoline
Data.Coyoneda
Data.Yoneda
Dependencies