标签: haskell recursive-datastructures
我以为我理解了Haskell的列表,直到最近我偶然发现递归无限列表,例如
let idList = 0 : (map (+1) idList)
这是数字0,1,2,......
现在我想知道Haskell的递归数据类型(如列表和树)的数学定义是什么。这篇文章关于F-algebras提及“使用带有仿函数F的最小不动点构造定义的类型可以被视为初始F代数,前提是该参数适用于该类型。”。
这是Haskell类型的来源吗?