“匿名递归”是否有效?在 .NET 中工作?它在 Mono 中是这样的
我浏览了这个 几天前关于“C# 中的匿名递归”的网站。本文的主旨是以下代码在 C# 中不起作用: Func<int, int> fib = n => n > 1 ? fib(n - 1…
替代 Y 组合器定义
我最近花了一些时间研究 Y 组合器,我发现它通常(或多或少)定义如下(这是在 C# 中,但选择的语言并不重要): public delegate TResult SelfApplic…
我可以使用 y-combinator 来获取此闭包的对象引用吗?
这个闭包有效: var o = { foo: 5 } o.handler = function(obj){ return function() { alert(obj.foo) } }(o) o.handler() //alert('5') 是否可以内联…
Haskell 中的 Y 组合器
是否可以在 Haskell 中编写 Y Combinator ? 看起来它会有无限递归类型。 Y :: f -> b -> c where f :: (f -> b -> c) 或者什么的。即使是简…
如何在 F# 中实现定点运算符(Y 组合器)?
我正在使用 F# 创建 lambda 演算。我目前正试图弄清楚如何实现定点运算符(也称为 Y 组合器)。 我认为其他一切都井然有序。表达式由以下可区分联合表…
将 Y-Combinator 应用于 Clojure 中带有两个参数的递归函数?
对单参数函数(例如 Clojure 中的阶乘或斐波那契)执行 Y 组合器已有详细记录: http://rosettacode.org/wiki/Y_combinator#Clojure 我的问题是 - 你…
Y-Combinator 实际示例
我最近读了一些关于函数式编程的文章,并且正在尝试理解 Y-Combinator。 据我所知,您可以使用 Y-Combinator 以不直接支持递归的语言有效地实现递归。…
Python 中的 lambda 函数可以递归调用自身吗?
常规函数可以在其定义中包含对自身的调用,没有问题。 我不知道如何使用 lambda 函数来做到这一点,但原因很简单,lambda 函数没有可引用的名称。 有…
- 共 1 页
- 1