Y-Combinator:尝试不同的Y组合器实现

时间:2024-06-05 22:18:08
【文件属性】:

文件名称:Y-Combinator:尝试不同的Y组合器实现

文件大小:10KB

文件格式:ZIP

更新时间:2024-06-05 22:18:08

C++

什么是Y组合器? 让我们从编写一个简单的递归阶乘函数开始: ( define ( factorial n ) ( if ( = n 0 ) 1 ( * n (factorial ( - n 1 ))))) 可以用更明确的样式编写: ( define factorial ( lambda ( n ) ( if ( = n 0 ) 1 ( * n (factorial ( - n 1 )))))) 请注意,在定义阶乘函数时,我们进行了递归调用。 我们将这种定义称为显式递归定义。 您很快就会看到我们所说的隐式递归定义(扰流器:通过非递归方法生成的递归函数)。 目标-消除明确的递归 如果我们被限制进行递归调用,我们仍然可以实现阶乘函数吗? 答案是肯定的,这将使我们直接进入Y-Combinator。 什么是Y组合器?它


【文件预览】:
Y-Combinator-master
----.gitignore(10B)
----README.md(14KB)
----scheme()
--------lazy()
--------eager()
----c++()
--------memoized_basic.cpp(3KB)
--------tuple_hash.hpp(1KB)
--------memoized_ycomb.cpp(1KB)

网友评论