function makeObjectClosure(value) {
function foo() {
return this.x;
}
return {foo:foo, x:value};
}
var result = 0;
for (var i = 0; i < 10000; ++i) {
var o = makeObjectClosure(i);
for (var j = 0; j < 100; ++j)
result += o.foo();
}
print(result);