スコープ解決編
function foo(a, f, s) : (table1) { }
Luaでは暗黙の上位値渡し(っていうのかな)で渡されてたglobalスコープにあるlocal変数(ややこしい)ですが
Squirrelだと自分で渡さなきゃいけないのか?
というかlocalつけないと上位値渡ししてもない!とか言われるのが良く分かりませんね。
global変数を極力使わないってのはOOっぽいとは思うんですけど、ちょっと行き過ぎてるかなー。毎回渡すのめんどくせーじゃん!所詮スクリプトなんだし!
スコープ意識しながらコーディングってプログラマにしか書けねーじゃん!
と15秒ほど思ったけど結局のところプログラマぐらいしか使わないからなーみたいな?
それにしても全然スクリプトっぽくない。ちょっとガチガチすぎやしませんかね。
スクリプトってアドホックにどんどん記述できるのが魅力だと思うんですが。
もちろんシステムとか土台はきちんと設計してやるべきですが、
アプリケーションの部分てのは再利用性などほとんどないんだから、
スクリプトでそれを強要されると少々げんなりしますわ。
関数にどんな名前付けるか毎回悩みながらアプリの部分をC/C++で書くのいやジャン。
コルーチンでさくさくシーケンスを書ければそれでいいんです。