我与SML练习,我在做一个小任务,我们必须实现定义为Church数教堂的前身:如何获得数字
datatype 'a church = C of ('a -> 'a) * 'a -> 'a
例如VAL
ZERO = C(fn (f,x) => x)
我已经实现的功能:
create: int -> 'a church
churchToInt: 'a church -> int
和SUC
返回的继任者教会的数字。
现在我要实现该功能
PRED: 'a church -> 'a church * 'a church
它返回(前身,当前标记)的元组。我不能使用churchToInt
,我应该直接使用教会的数字。显然这可以通过传递一个特定的论证在一行中解决。
我正在考虑一遍又一遍地使用SUC
,直到我们输入正确的数字,但没有办法让我比较2个教会的数字。我完全停留在此。
如果这是家庭作业,你应该这样标记它 – 2010-09-26 23:11:56