スコープ

table1 = {
	[0] = 1,
	[1] = 2,
	[2] = 3,
	[3] = 4,
};

function foo(a, f, s) 
{ 
    print("Called foo(), a="+a+", f="+f+", s='"+s+"'\n"); 

	local table2 = {
		[0] = 6,
		[1] = 66,
		[2] = 666,
		[3] = 6666,
	};

	for ( local i = 0; i < 4; i++ )
	{
		print("table1["+i+"]="+table1[i]+"\n"); 
		print("table2["+i+"]="+table2[i]+"\n"); 
	}
} 

foo(10,20,30);

なんかtable1がないよってエラーになるんだけど、意味が分かりません。


あとは配列とかテーブルをスタック領域に作ったり出来るのかな。
どちらも可変長だから無理だとはおもうんだけど。


関数の中で配列を作ったり、テーブルを作ったりするとじゃんじゃんメモリが減っていく予感。
ちょっとしたテーブルを関数の外に作るのめんどくさいんだよね。Luaでも結構困ってました。
テンポラリ配列とかテンポラリテーブルみたいなのがあると便利かも。allocaみたいな感じで使えるといいなー。