で、その東大版Palo-Alto tiny BASICを改めて見直しました。良くできています(前項の記述に誤りがあったので訂正しました)。BASICというよりは私の考えではLISPの要素が目立っていて、後一要素(サブルーチンの先頭に(高速に)戻る)があればほぼ完璧。東大版で無く、元のはトリッキーと言えるほどの技巧があったそうで、もしかしたら翻訳される際に省略された可能性があります。
後は行番号にgo toするのを例えば2分探索表で高速化すればさらによく、それほどコードを必要としないはずなので、しばらく考えてみます。それをやるなら行番号で無く、いわゆるラベルを設ける方がいろいろ便利な気がしますが。
あまりに工夫を重ねると、B言語(C言語の整数版)(の中間言語コンパイラ)の方が良いでは無いか、あるいは簡易LISPにしてしまうか、とtiny BASICの独特の良さが消えてしまうので悩ましいところです。特に今は安価で大容量の外部記憶が簡単に接続できるので、エディタやいわゆるファイラなどの別の便利なユーティリティの追加が容易です。
私事ですが、今週も忙しくてまとまった時間が取れず、それでtiny BASICをちょっと思い出した訳。来月からは少し時間が取れるはずで、おそらく元の話題に戻ります。