在学习了Haskell和其他不是那么纯正的FP语言之后,我决定阅读有关类别理论的文章。在对分类理论有了很好的理解之后,我开始思考如何将分类理论的概念用于设计程序,但是无论我多么努力,这似乎都不是路要走。
在花了许多不成功的尝试将类别理论与设计程序联系起来之后,我得出以下结论:
- 类别理论在设计编程语言时很有用。
- 在设计程序时(甚至在使用基于类别原理设计的语言时)也不需要使用类别理论。例如:在Haskell中进行编程时,您将使用类型,类型构造函数,函数,高阶函数等来设计程序,而不是类别理论概念。
总而言之,我们有下层系统(顺序从低到高):
范畴论->编程语言->程序
在特定的层上,使用直接基础层的概念。
这种理解正确吗?如果不是这样,并且您认为在设计程序时我们可以直接使用类别理论的概念,请参阅一些论证该文章的文章或博客文章。
注意:通过设计程序,我的意思是基于不同的概念来设计程序,例如并发,并行,响应式,消息传递等。