![]() |
1
8
我看到它有两种定义方式,但我们更喜欢在Idris中从零开始的一个原因是,它对于描述其他结构的大小很有用,例如列表或树。列表中可以有零个内容,树的高度可以为零,附加两个零长度列表会导致一个零长度的列表。
在零没有意义的情况下,可以定义数据类型,使其不可能将零作为索引。这里有一个(人为的和未经测试的)示例,其中零没有意义,树由元素数量索引,元素存储在叶子上:
考虑到这些构造函数,您将永远无法生成
|
![]() |
BlenderBender · Idris中非零整数的类型? 7 年前 |
![]() |
Roasted Yam · 查找归纳定义类型的实现(show) 7 年前 |
![]() |
michaelmesser · Idris重写未发生 7 年前 |
![]() |
marcosh · Idris-定义素数类型 7 年前 |
![]() |
lodo · 依赖类型:在归纳类型中强制全局属性 7 年前 |