range caching in js
//range inline cache
var RangeDict = {
"...":function(start, end){
return function(){
var result = start < end ? start: false;
start += 1;
return result;
};
},
"..=":function(start, end){
return function(){
var result = start <= end ? start: false;
start += 1;
return result;
};
}
};
/* var f = RangeDict["..."](0, 7)
f()
=> 0
f()
=> 1
f()
=> 2
f()
=> 3
f()
=> 4
f()
=> 5
f()
=> 6
f()
=> false*/