In these lecture notes, we give a brief introduction to some elements of category theory. The choice of topics is guided by applications to functional programming. Firstly, we study initial algebras, which provide a mathematical characterization of datatypes and recursive functions on them. Secondly, we study monads, which give a mathematical framework for effects in functional languages. The notes include many problems and solutions.
翻译:在这些讲义中,我们对范畴论的若干基本要素进行了简要介绍。主题的选择以函数式编程中的应用为导向。首先,我们研究了初始代数,它为数据类型及其上的递归函数提供了数学刻画。其次,我们研究了单子,它为函数式语言中的效应提供了数学框架。本讲义包含大量习题及其解答。