All Projects → coot → free-category

coot / free-category

Licence: MPL-2.0 License
Free categories, free arrows and free categories with monadic actions

Programming Languages

haskell
3896 projects
Nix
1067 projects

Projects that are alternatives of or similar to free-category

qp-arduino
QP real-time embedded frameworks/RTOS for Arduino (AVR and SAM)
Stars: ✭ 37 (+76.19%)
Mutual labels:  state-machine, free
qm
QM model-based design tool and code generator based on UML state machines
Stars: ✭ 54 (+157.14%)
Mutual labels:  state-machine, free
LSAdditions
The Category of Commonly used controls and you can create a control quickly(Object, Control ...)
Stars: ✭ 15 (-28.57%)
Mutual labels:  category
is-biz-mail-php
isBizMail tells you whether a given email address belongs to a free email account provider (gmail.com, yahoo.es, yandex.ru etc) or not.
Stars: ✭ 19 (-9.52%)
Mutual labels:  free
golib
Open version of common golang libraries useful to many projects.
Stars: ✭ 47 (+123.81%)
Mutual labels:  state-machine
spring-statemachine-learning
spring-statemachine 学习记录
Stars: ✭ 84 (+300%)
Mutual labels:  state-machine
Saraff.Twain.NET
Saraff.Twain.NET is the skillful scanning component which allows you to control work of flatbed scanner, web and digital camera and any other TWAIN device from .NET environment. You can use this library in your programs written in any programming languages compatible with .NET technology.
Stars: ✭ 74 (+252.38%)
Mutual labels:  free
status-page
Free Status Page Template built with Tailwind CSS
Stars: ✭ 37 (+76.19%)
Mutual labels:  free
statebot
Write more robust and understandable programs. Statebot hopes to make Finite State Machines a little more accessible.
Stars: ✭ 24 (+14.29%)
Mutual labels:  state-machine
free-arrow
Implementation of the Free Arrow in Scala and other helpful tools for working with Arrows
Stars: ✭ 14 (-33.33%)
Mutual labels:  free
state machines-graphviz
Graphviz module for state machines
Stars: ✭ 27 (+28.57%)
Mutual labels:  state-machine
examples
YAKINDU Statechart Tools examples
Stars: ✭ 20 (-4.76%)
Mutual labels:  state-machine
URL-Magnet-Cloud-Uploader-Heroku
Aria 2 Rclone Remote URL /magnet Clouds upload via HEROKU
Stars: ✭ 99 (+371.43%)
Mutual labels:  free
OpenGNT
Open Greek New Testament Project; NA28 / NA27 Equivalent Text & Resources
Stars: ✭ 55 (+161.9%)
Mutual labels:  free
xstate-cpp-generator
C++ State Machine generator for Xstate
Stars: ✭ 33 (+57.14%)
Mutual labels:  state-machine
sakai-react
Free React Admin Template
Stars: ✭ 239 (+1038.1%)
Mutual labels:  free
typed-machine
A strict Finite State Machine, written in TS
Stars: ✭ 21 (+0%)
Mutual labels:  state-machine
EasyAbout
A fully material-designed about fragment for your application.
Stars: ✭ 47 (+123.81%)
Mutual labels:  free
TREE
You wont catch me paying for a monthly subscription to a service like linktree or manylink when I can build my own instead
Stars: ✭ 22 (+4.76%)
Mutual labels:  free
sofia-react-template
🔮 Sofia React Template - Admin Dashboard Template built with React
Stars: ✭ 96 (+357.14%)
Mutual labels:  free

Free Category

Maintainer: coot Haskell/CI

This package contains efficient implementations of free categories. There are various representations available:

  • real-time queues (C. Okasaki 'Pure Functional Data Structures')
  • type aligned lists
  • continuation passing style (Church encoding)

Free arrows and free Kleisli categories are also included.

Free categories are useful to model state machines in a simple yet type safe manner. For that purpose Kleisli categories are a very useful target which allows to include monadic computations. This package contains a useful generalisation of Kleisli categories captured by EffectCategory class (categories with effects), and a (free) transformer which lifts a category to a category with effects.

Benchmarks

Check performance characteristics of various representations:

Resources

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].