No description
Find a file
2018-12-06 13:53:07 -05:00
monads Ensure all monoids and monoids implement their appropriate operators 2018-12-06 13:53:07 -05:00
tests Ensure all monoids and monoids implement their appropriate operators 2018-12-06 13:53:07 -05:00
.gitignore Organize into a library 2018-10-11 01:26:00 -04:00
.travis.yml Add Travis CI deployment configuration 2018-11-29 14:04:28 -05:00
LICENSE Add LICENSE 2018-10-11 21:14:03 -04:00
README.md Add CI and coverage badges 2018-11-29 12:14:26 -05:00
setup.cfg Configure Travis CI and CodeCov 2018-11-29 12:06:43 -05:00
setup.py Bump version to 0.3 2018-12-03 16:19:39 -05:00

Type-safe Monads

Build Status codecov

This is an experiment in building monads in Python supported by strict type annotations. The goal is to be able to compose monads with the type checker ensuring their correctness.

Motivation

I'm a fan of monads, but believe they work best with the support of a strong type system. I've attempted to use libraries like PyMonad, but been frustrated by a lack of type constraints preventing incorrect usage. I could've attempted to add type annotations to one of those libraries, but building my own is more fun.