Category Theory for python programmers#
This is my attempt to implement some of the common structures from Category theory in python. Note that I am a beginner in Category theory and will use this repo as way to learn it.
Topics to be covered are
[x] Monoids
[ ] Functors (in progress)
[ ] Applicative Functors (in progress)
[ ] Monads
This list might be more detailed in the future.
My assessment is manly based on the book called Category Theory for Programmers by Bartosz Milewski and the podcast LambdaCast
Typing#
I will also use this platform to investigate some of the more advanced features of python’s typing system, and will therefore only support the latest version of python.
Testing#
I am definitely not capable of finding good test cases that can really test the corner cases of my implementation. Therefore I will try to use (and learn) property-based testing using Hypothesis.
Contributing#
This repo is manly for me to learn about these concepts in Category theory. If anyone finds this useful that is great. If you spot any bugs or mistakes I have made I would be grateful if you could file an issue (or even better : first file an issue and then submit a PR).