Archive for 8月, 2012

リリカルLispの開発がより容易になりました

土曜日, 8月 18th, 2012

結論

リリカルLispにテストコードを追加しました。
本編の練習問題のプログラムが正しく動作するか確認できます。
これで皆さんも、気軽にリリカルLispのソースがいじれますね。

背景

リリカルLispのソース、特にインタプリタの内部に手を加える時はそれなりに気を使う必要があり、
手を加えた後はちゃんと動くかどうか手でテストする必要がありました。
最低限、本編で出てくる練習問題のプログラムがちゃんと動作する
(正しいプログラムを入力した際に正解扱いされる)ことを確認する必要がありますが、
何回も手でプログラムを入力して確認するのはあまりにも面倒すぎます。
そんな訳で、練習問題のプログラムがちゃんと動作するか確認するテストを書きました。

この変更のためのコミットを(NScripterを読める人が)見れば分かることですが、
ラベル名を変数に入れてジャンプをするコードを多用しているため、
このテストと練習問題周辺のコードはとてつもなく可読性が落ちました。
まあ、インタプリタの周りを触る頻度に比べ、
練習問題の周りを触る頻度は遥かに少ない(と信じている)ので、
きっと問題ないでしょう。多分。