22 lines
319 B
JavaScript
22 lines
319 B
JavaScript
|
|
||
|
/* @providesModule Ycombinator */
|
||
|
|
||
|
function Y(f) {
|
||
|
function g(x) { return f(x(x)); }
|
||
|
g(g);
|
||
|
}
|
||
|
|
||
|
function func1(f) {
|
||
|
function fix_f(x:number):number { return f(x); }
|
||
|
return fix_f;
|
||
|
}
|
||
|
function func2(f) {
|
||
|
function fix_f(x:string):string { return f(x); }
|
||
|
return fix_f;
|
||
|
}
|
||
|
|
||
|
Y(func1);
|
||
|
Y(func2);
|
||
|
|
||
|
module.exports = Y;
|