ZIL
なんとなくZ-Machine周りについて調べていたので、ZILについてメモしておきます。
ZIL(Zork Implementation Language)はZorkなどで知られるZ-Machineで動作するInteractive Fiction(IF)を記述するための言語です。
まず、Z-Machine関係の用語を説明します。
IF
IFはいわゆるテキストアドベンチャーゲームです。 テキストをコマンドとして入力して進行していくゲームで、 zorkを 見るとどんなものかはすぐわかります。
Z-Machine
Z-MachineはIFのための仮想マシンです。 Infocom社によって作られました。
多様なプラットフォームへの移植性を確保するため、Zork1などはZ-Machine上で動くようになっていました。
Z-MachineはZILをコンパイルして出力されるZ-codeと呼ばれるを命令を解釈して実行します。
Z-Machineの仕様は The Z-Machine Standards Document にまとまっていますが、フラグなどの扱いについて一部、ztoolsとの相違が見られました。
ZIL
ここから本題です。
ZILの情報はZIL Manualなどにあります。
この後に出てくるソースコードは、ZIL Manualからの引用になります。
BASIC
オリジナルのZorkは MIT Design Language(MDL)で書かれていたとあり、ZILにもその影響が強く見られます …