mirror of
https://github.com/coot/free-category.git
synced 2024-09-11 14:17:30 +03:00
Free categories, free arrows and free categories with monadic actions
.circleci | ||
examples | ||
nix | ||
src/Control | ||
.travis.yml | ||
cabal.project | ||
ChangeLog.md | ||
default.nix | ||
free-category.cabal | ||
LICENSE | ||
pkg.nix | ||
README.md | ||
shell.nix |
Free Category
This package introduces variouos encodings of free categories in Haskell.
Free categories are useful to model state machines in a simple yet type safe
way and for that purpose Kleisli
categroies are a very useful target which
allows to include monadic computations. Read more
here on a simple example of
a finite state machine encoded using a free category using a simple GADT.
Another simple
example.
Some examples
- LoginStateMachine:
based on State Machines All The Way
Down by Edwin Bradly, 2017 You
can run it with
cabal new-run examples:login-state-machine
.