No description
Find a file
Correl Roush 8c18de5e6f Ignore coverage on unreachable code branches
These code branches should be unreachable in type-safe code.
2018-10-12 15:41:37 -04:00
monads Ignore coverage on unreachable code branches 2018-10-12 15:41:37 -04:00
tests Add more tests for Result 2018-10-12 15:41:37 -04:00
.gitignore Organize into a library 2018-10-11 01:26:00 -04:00
LICENSE Add LICENSE 2018-10-11 21:14:03 -04:00
README.org Add README 2018-10-11 21:29:57 -04:00
setup.cfg Organize into a library 2018-10-11 01:26:00 -04:00
setup.py Organize into a library 2018-10-11 01:26:00 -04:00

Type-safe Monads

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.