Scala:(Int,Int)=> Int 不匹配 (Int, Int) => INT
我正在尝试使用 y-combinator 在 scala 中定义 gcd: object Main { def y[A,B]( f : (A => B) => A => B ) : A => B = f(y(f)) def gcd = y[(Int,Int…
为什么这个函数的类型是(a -> a) ->一个?
为什么这个函数的类型是(a -> a) ->一个? Prelude> let y f = f (y f) Prelude> :t y y :: (t -> t) -> t 它不应该是无限/递归类型吗? 我本来想尝试…
Haskell 中的 Y 组合器、无限类型和匿名递归
我试图解决最大子序列和问题并提出了一个neato解决方案 msss :: (Ord a, Num a) => [a] -> a msss = f 0 0 f gmax _ [] = gmax f gmax lmax (x:xs) = …
我是否使用 C# 动态实现了 Y-combinator,如果没有,那是什么?
我的大脑似乎处于受虐模式,所以在被 这个,此 和 这个,它想用 C# 进行一些 DIY。 我想出了以下内容,我不认为它是 Y 组合器,但它似乎设法使非递归…
在 JavaScript 中用 SKI 组合器表达 Y
我正在摆弄 JavaScript 中的组合器,并为(希望)让 S 工作而感到自豪,当时我偶然发现维基百科说:“Y 组合器可以在 SKI 演算中表示为:Y = S (K (SI…
“匿名递归”是否有效?在 .NET 中工作?它在 Mono 中是这样的
我浏览了这个 几天前关于“C# 中的匿名递归”的网站。本文的主旨是以下代码在 C# 中不起作用: Func fib = n => n > 1 ? fib(n - 1) + fib(n - 2) : n…
替代 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 我的问题是 - 你…