Category Theory for Programmers (Scala Edition)
by Bartosz Milewski
Code snippets are both in Scala 2 and Haskell
https://github.com/hmemcpy/milewski-ctfp-pdf
Bartosz Milewski’s video lectures
Let’s add Scala 3 snippets!
Discord channel: #category-theory
Discord server:
Meetup: https://www.meetup.com/the-south-padre-island-reading-group/events/292969118/
Zoom:
Chapter 16 April 24, 2023 | Presenter |
---|---|
Yoneda Embedding | Jens - May 22 |
The Embedding | Jens - May 22 |
Application to Haskell | Casey - May 22 |
Preorder Example | Casey - May 22 |
Naturality | Casey |
Chapter 15 February 27, 2023 | Presenter |
---|---|
Introduction (pp 231-234) | Casey - Feb 27 |
Introduction (pp 235-240) | Casey - Mar 13 |
Introduction (p 240) | Casey - April 10 |
Yoneda in Haskell | Jens - April 10 |
Example from Emily Riehl’s book - 2.21 | Weining |
Co-Yoneda | Casey - April 10 |
Chapter 14 February 13, 2023 | Presenter |
---|---|
The Hom Functor | Casey |
Representable Functors | Weining |
Chapter 13 January 30, 2023 | Presenter |
---|---|
Free Monoids in Haskell | Casey |
Free Monoids Universal Construction | Jens |
Chapter 12 December 5, 2022 | Presenter |
---|---|
12 Limits and Colimits | Casey - December 5 |
12.1 Limits as a Natural Isomorphism | Jens - January 2 |
12.2 Examples of Limits | Weining - January 16 |
12.3 Colimits | Jens - January 30 |
12.4 Continuity | Casey - January 30 |
Chapter 11 November 21, 2022 | Presenter |
---|---|
11. Declarative Programming | all |
Chapter 10 November 7, 2022 | Presenter |
---|---|
10. Natural Transformations | Jens |
10.2 Beyond Naturality | Casey |
10.3 Functor Category | Casey |
10.4 2-Categories | Casey |
Chapter 9 October 24, 2022 | Presenter |
---|---|
9 Function Types | Jens |
9.2 Currying | Jens |
9.3 Exponentials | Jens |
9.5 Exponentials and Algebraic Data Types | Casey |
9.6 Curry-Howard Isomorphism | Casey |
Chapter 8 September 12, 2022 | Presenters |
---|---|
8 Functoriality | Patrick - Sep 12 |
8.2 Product and Coproduct Bifunctors | Patrick - Sep 12 |
8.3 Functorial Algebraic Data Types | Casey - Sep 12 |
8.4 Functors in C++ | - |
8.5 The Writer Functor | Casey - Sep 26 |
8.6 Covariant and Contravariant Functors | Jens - Sep 26 |
8.7 Profunctors | Jens - Sep 26 |
8.8 The Hom-Functor | Jens - Sep 26 |
Chapter 7 August 15, 2022 August 29, 2022 | Presenter |
---|---|
7 Functors | Jens |
7.1.2 Equational Reasoning | Casey |
7.1.3 Optional (C++) | Weining |
7.1.4 Typeclasses | Patrick - August 29 |
7.1.5 Functor in C++ | Weining - August 29 |
7.1.6 The List Functor | Jens - August 29 |
7.1.7 The Reader Functor | Jens - August 29 |
7.2 Functors as Containers | Patrick - August 29 |
7.3 Functor Composition | Casey - August 29 |
Chapters 5 and 6 July 25, 2022 | Presenter |
---|---|
5 Products and Coproducts | Casey |
5.2 Terminal Object | Casey |
5.4 Isomorphisms | Jens |
5.5 Products | Jens |
5.6 Coproduct | Patrick - August 1 |
5.7 Asymmetry | Patrick - August 1 |
6 Simple Algebraic Data Types | Casey - August 1 |
6.2 Records | Casey - August 1 |
6.3 Sum Types | Omar - August 1 |
6.4 Algebra of Types | Weining - August 15 |
Chapters 3 and 4 July 18, 2022 | Presenter |
---|---|
3 Categories Great and Small | Jens |
3.3 Orders | Jens |
3.4 Monoid as Set | Casey |
3.5 Monoid as Category | Casey |
4 Kleisli Categories | Patrick |
4.1 The Writer Category | Patrick |
4.2 Writer in Haskell | Omar - July 25 |
4.3 Kleisli Categories | Antonio - July 25 |
Chapters 1 and 2 July 11, 2022 | Presenter |
---|---|
1 Category: Composition | Casey |
2 Types & Functions | Antonio Jesús García Palomo |