{
var func0;
var func1;
var func2;

var i =0;

while ( i<3 ) {
	var x=i;

	if ( i == 0 ) {
		func0 = function ( ) { puts(x); };
	} else if ( i==1 ) {
		func1 = function ( ) { puts(x); };
	} else if ( i==2 ) {
		func2 = function ( ) { puts(x); };
	}
	i = i+1;

}

func0(); // = 0
func1(); // = 1
func2(); // = 2

}

やっと動いた…
もはやフレームまわりはコンパイラVMもソース汚なすぎて読めないよ…


あとはオブジェクト生成とか、名前空間の整理とか、組み込み関数の調整とか。こっからはこれまでに比べると簡単なはずだ。