var arr = []; | |
function f() {} | |
function g(n, h) { | |
var a = f; | |
if (n <= 0) | |
return f; | |
var t = g(n - 1, h); | |
var r = function(x) { | |
if (x) | |
return a; | |
return a(h(function() { return t(); })); | |
}; | |
arr.push(r); | |
return r; | |
} | |
g(80, f); | |
g(80, f); | |
g(80, f); | |
for (var i = 0; i < arr.length; i++) | |
assertEq(arr[i](1), f); |