doファイル内で(複数の)プログラムを作成する。
先週の勉強会で「一つのdoファイル中に複数のprogramを作成することができないか」との質問が出ました。
参加者のTさんが答えてくれたのですが,doファイルの頭にprogramを作成すると,同一doファイル内で読み込めるとのこと。
つまり,
program hoge dis "Hello, Yamada!" end hoge
とすれば,hogeというprogramが定義され,それを呼び出すことができます。
ただメインのプログラムはdoファイルの冒頭に持ってくるほうが自然。
hoge program hoge dis "Hello, Yamada!" end
とした方が,思考の流れとマッチしていますが,これだとhogeが定義される前にhogeを呼び出しているので使うことができません。あまりキレイではありませんが,対処法としては,メインのdoファイル内の一連のコマンドを一つのプログラムにする方法があるかと思います。
つまり,
program main hoge end program hoge dis "Hello, Yamada!" end hoge
とすれば,メインとサブのprogramを定義した後にメインのプログラムを実行するので,エラーは発生しません。
冒頭の質問をされたY先生には,後ほどメールでdoファイルを送信すると約束していたのですが送るのを忘れていたため,またせっかくなので記事にしたいとのことから新しいエントリーとして作成しました。