Objects, Products & Coproducts (sum types)
TL;DR (WWW Q&A)
Who is Category Theory?
“Category Theory is to Programming what Chemistry is to Baking… Whether or not you know about monoids doesn’t change the fact that they are in your code”
Why Category Theory?
One of the important advantages of having a mathematical model for programming is that it’s possible to perform formal proofs of corectness of software. This might not seem so important when you’re writing consumer software, but there are areas of programming where the price of failure may be exorbitant, or where human life is at stake. But even when writing web applications for the health system, you may appreciate the thought that functions and algorithms from the Haskell standard library come with proofs of correctness.
Category theory is extreme in the sense that it actively discourages us from looking inside the objects. An object in category theory is an abstract nebulous entity. All you can ever know about it is how it relates to other object — how it connects with them using arrows
What is Category Theory?
- It becomes evident that different areas of math share common patterns/trends/structures.
- This becomes extraordinarily useful when you want to solve a problem in one realm (say, topology) but don’t have the right tools at your disposal. By transporting the problem to a different realm (say, algebra), you can see the problem in a different light and perhaps discover new tools, and the solution may become much easier.
- The bridges between realms are provided by category theory.
A category, then, is any collection of objects that can relate to each other via morphisms in sensible ways, like composition and associativity.
- So the collection of sets with functions forms a category


https://www.math3ma.com/blog/what-is-category-theory-anyway
https://www.cambridge.org/core/books/joy-of-abstraction/00D9AFD3046A406CB85D1AFF5450E657
https://abuseofnotation.github.io/category-theory-illustrated/
https://www.youtube.com/watch?v=igf04k13jZk
http://www.mathisintheair.com/eng/2018/01/30/creative-mathematics-an-application-of-category-theory/
Category Theory For Programmers
https://github.com/hmemcpy/milewski-ctfp-pdf
https://www.youtube.com/playlist?list=PLbgaMIhjbmEnaH_LTkxLI7FMa2HsnawM_
https://www.youtube.com/watch?v=SmXB2K_5lcA&list=PLVFrD1dmDdvcjCQDPhExqP56jqxp0Ssn_
https://www.kurtlawrence.info/blog/category-theory-with-rust-pt1
https://www.kurtlawrence.info/blog/category-theory-with-rust-pt2
https://www.worldscientific.com/worldscibooks/10.1142/13670#t=aboutBook
https://www.youtube.com/watch?v=Njx2ed8RGis
Arrows to Arrows, Categories to Queries :: Reasonably Polymorphic
Category Theory in Rust Notes
https://github.com/damienstanton/ctrs