πŸ“¦ amarshall / boiga

Type-safe functional programming for Python

β˜… 4 stars β‘‚ 0 forks πŸ‘ 4 watching βš–οΈ MIT License
functional-programmingmypypythontype-safe
πŸ“₯ Clone https://github.com/amarshall/boiga.git
HTTPS git clone https://github.com/amarshall/boiga.git
SSH git clone git@github.com:amarshall/boiga.git
CLI gh repo clone amarshall/boiga
Andrew Marshall Andrew Marshall v0.2.0 faef732 7 years ago πŸ“ History
πŸ“‚ master View all commits β†’
πŸ“ bin
πŸ“ src
πŸ“ stubs
πŸ“ tests
πŸ“„ .gitignore
πŸ“„ .travis.yml
πŸ“„ LICENSE
πŸ“„ MANIFEST.in
πŸ“„ Pipfile
πŸ“„ Pipfile.lock
πŸ“„ README.md
πŸ“„ setup.cfg
πŸ“„ setup.py
πŸ“„ README.md

Boiga: type-safe functional Python

PyPI package Build Status

Unlike most functional programming and monad libraries for Python, this is well-typed thanks to PEP 484 and mypy.

Type-safety

Boiga is only as type-safe as mypy permits. However, Boiga makes every attempt to ensure maximal type-safety. This includes:

  • Enabling various mypy flags to increase strictness
  • Type-checking all test code
  • Having tests which programatically run mypy and ensure that expected type-check failures do indeed fail to type-check

Why β€œBoiga”?

Boiga is a genus of snake, often nicknamed β€œcat snakes”. The level of functional category theory in this library is perhaps β€œun-Pythonic”. But it’s still a snake, just not a Pythonβ€”a cat-eyed snake, perhaps. Also, most of the obvious package names were already taken.

Mypy bugs found