阿隆佐·丘奇(Alonzo Church)使用lambda微积分创建了一个用过程表示数字的系统。
例如:0是x
,1是f x
,2是f(f x)
,依此类推,数字是在{{ 1}}。我在Scheme中基于先前的零和加1定义编写了一个程序,以迭代方式计算数字的教堂数字。代码将被张贴在帖子的末尾。我尝试在数字7上运行此函数,但得到一个模糊的错误f
。 x
唯一要比较的是数字,除了关于语言错误的post以外,我在Error: <: number required, but got #("halt") [church-numeral, (anon), (anon), (anon), <]
的任何地方都找不到在线内容。该错误是什么意思,我该如何解决?
代码:
<
答案 0 :(得分:1)
看起来(iter (add-1 result x (+ 1 count)))
应该是(iter (add-1 result) x (+ 1 count))
。