类型系统代数 - 使用推导

时间:2011-05-19 15:56:04

标签: types type-theory

我记得一个网页描述了与某些功能编程任务相关的有趣技术。问题是我不记得它是什么。

它有一个二叉树节点(Tree left, Tree right, Data d)作为示例,可以描述为Tree*Tree*DataTree^2*Data。然后,当例如Tree导出时,我们得到2*Tree*Data

你能指出我的用途吗?

1 个答案:

答案 0 :(得分:3)

听起来像Zipper

跟进:这种事情的咒语是“一种类型的衍生物是它的单洞背景”。这个想法是,如果你想用一个你希望进行插入的点来表示一个二叉树,那么它的数据结构恰好是从洞到树的根和每个节点上升的路径。你必须记住你是从左边还是右边来的,以及那个节点上的数据以及你不是来自它的子树。好吧,这正是2的元组(又名左/右)*数据*树。