范畴论
从函数式编程进入范畴论,沿着组合、结构保持和抽象之间的联系继续探索。
这里收集我学习范畴论的路线、Bartosz Milewski 的视频课程进度、读书记录,以及 Functor、Monad、Lens、Profunctor 等相关笔记。它不是一份完整教程,而是我的学习轨迹和知识地图;笔记可以短、旧、混乱,也可以在以后继续生长。
推荐视频
Bartosz Milewski 的三个系列,也是这份 roadmap 的主线。
已看完 · 20 集
Category Theory I
Bartosz Milewski
从 category、函数与代数数据类型进入 functor、natural transformation 和 monad。
已看完 · 18 集
Category Theory II
Bartosz Milewski
继续学习 limits、Yoneda、adjunction、comonad、F-algebra 和 lens。
待继续看 · 14 集
Category Theory III
Bartosz Milewski
从 string diagram 和 monad algebra 继续到 Lawvere theory、profunctor、end 与 coend。
书
关联笔记与文章
不强求完整或整齐,保留笔记原来的形态。
范畴论
专题入口和已有概念地图。
Bartosz Milewski Category Theory 视频笔记
I、II、III 共 52 集的逐集笔记入口。
Category
object、morphism、identity 和 composition。
Functor
保持 identity 与 composition 的 category mapping。
Functor category
以 functor 为 object、natural transformation 为 morphism。
Cartesian closed category
terminal object、product 与 exponential object。
F-algebra
由 functor 描述 operation 输入形状。
Free Monad
构建程序结构,把 interpretation 留给另一个边界。
Contravariant Functor Intuition
用问题归约理解 contramap。
Applicative Functor
独立 effect 的组合。
Kleisli
组合返回 monadic value 的函数。
Free functor / monad
Natural transformation 与 FunctionK。
Lens,函数式的 getter 和 setter
从 modifyF 推导 Lens 的操作。
Lens part1 - Iso
类型之间的 isomorphism。
Profunctor
第一个参数 contravariant、第二个参数 covariant。
视频 Roadmap
逐集连接原视频和独立笔记;I、II 已看完,III 待继续。