さて、なぜ単語帳プログラムを作ったか、という話をしましょう。プログラムID XFX546で公開した単語帳プログラム v0.4の6行目の、
filename = “english.txt”
を、
filename = “WordList02.sb”
に変更して実行してみます。結果は次のようになります。
【図12 プログラムの単語帳?】
この図の中の、
filename … 4, 8, 25
GetWord … 13, 19, 31, 34
line … 8, 10, 25, 32, 35
lno … 6, 8, 23, 23, 25, 35
word … 15, 33, 36
の部分はリスト3で示した単語帳プログラム v0.2で使われた変数とサブルーチンの一覧になっています。それぞれの変数、サブルーチンがプログラムのどの行で参照されたかが分かるので、クロスリファレンス(相互参照)リストと呼ばれます。
Small Basicのプログラムを何本か作ってみて、クロスリファレンスがほしいなぁと思ったので、作ってみることにしたわけですが、プログラミング講座の最初からクロスリファレンスでは意味が通じないだろうと思い、まずは単語帳プログラムにしてみたのです。
ただ今回作った単語帳プログラムは、まだ処理速度が不十分で、v0.4自身(175行)のクロスリファレンスを表示しようとすると、とても時間がかかります。そこでさきほどの説明ではv0.2のプログラム(37行)を使いました。
では、いったいこのプログラムのどこが遅いのでしょうか?
(つづく)