然后说说我对这个书的看法,我现在跳着看了大概1/3,写的非常好,算是编程+范畴论里少数我看的下去的书(ctfp我就没看下去)
这个书实际上采用了一种完全不同于其他范畴论教科书的编排方法,并不是从抽象的范畴概念开始,而是从某一类非常具体的范畴(应该是叫局部小笛卡尔闭范畴)开始,逐渐建立一套能和Haskell接轨的类型系统(其实不能说建立,因为这个范畴就是那个类型系统)
这种编排方式让我想起了高中学集合的时候,高中书是从“一个班里的同学”“若干个数”中逐步抽象出来集合的概念——类比各种范畴论书从群-同态、集合-映射中抽象出来范畴概念,将范畴放在了相当抽象的位置,对我来说这个曲线有点陡峭了;
这本书将范畴论放在了更基础的位置,有点像是纯粹集合论里0等于空集,1={0} blabla,这一点我很喜欢,不过问题就是前几章可能不太严谨,就当是培养直觉了,后面有严谨的地方
这本书另一个非常吸引我的地方就是内容确实和“道”非常贴合,选取的视点也非常有哲学感,引人深思;不过小肥我语文一直不得行,很多地方逐字译出超出了我的能力,所以主要是意译,这一点欢迎指正
最后推荐几本延伸读物:
- http://www.brendanfong.com/programmingcats.html
DaoFP的作者是这门课的三个老师之一,课程材料相当于DaoFP的姊妹篇
- The little typer
神书,中学英文就能读懂所以没翻这个