Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
26
Task/Y-combinator/JavaScript/y-combinator-1.js
Normal file
26
Task/Y-combinator/JavaScript/y-combinator-1.js
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
function Y(f) {
|
||||
var g = f((function(h) {
|
||||
return function() {
|
||||
var g = f(h(h));
|
||||
return g.apply(this, arguments);
|
||||
}
|
||||
})(function(h) {
|
||||
return function() {
|
||||
var g = f(h(h));
|
||||
return g.apply(this, arguments);
|
||||
}
|
||||
}));
|
||||
return g;
|
||||
}
|
||||
|
||||
var fac = Y(function(f) {
|
||||
return function (n) {
|
||||
return n > 1 ? n * f(n - 1) : 1;
|
||||
};
|
||||
});
|
||||
|
||||
var fib = Y(function(f) {
|
||||
return function(n) {
|
||||
return n > 1 ? f(n - 1) + f(n - 2) : n;
|
||||
};
|
||||
});
|
||||
Loading…
Add table
Add a link
Reference in a new issue