コマンド

Mコマンドは、定義された接頭辞に短縮してもよいです。ほとんどのコマンドは引数を持っています。ただし、一部のコマンドはオプションで引数を持つか、あるいは、引数を持たないのどちらかです。コマンドが引数を持たず、そして、同じ行に複数のコマンドが続く時は、引数なしコマンドに続き少なくとも2つのスペース ( <SP> )が必要です。引数を受け取るコマンドは一般的に同じコマンドで複数の引数を受けとります。Mは、その自身の引数を持つそれぞれで、同一のコマンドを複数発生するような同じ複数の引数を扱います。

後置条件

Mは、単一のコマンドの実行で、そして、いくつかのケースでは単一のコマンドの引数の実行で、条件を配置するためのツールとして後置条件を提供します。後置条件は区切り文字コロン ( : ) の後ろに真偽式が続きます。式が true に評価されると、Mはコマンドの起動を実行します。式が false と評価されると、Mはコマンドの起動はしません。

コマンド後置条件

コマンド後置条件はコマンドの直後に現れ、それが複数の引数を持つ時にはコマンドのすべての引数に適用されます。すべてのコマンドは、それら自体がコマンド後置条件を受け入れることに条件の様相を持つコマンドを除きます。M標準のコマンドの中でも、ELSE、FOR、IF はコマンド後置条件を受け入れない。すべてのGT.Mコマンド拡張は、コマンドの後置条件を受け入れます。

後置条件の引数

制御の流れに影響を与えるコマンドは、それぞれのコマンドの引数で後置条件を受け入れるかもしれません。複数の引数が複数のコマンドとして作用するので、これは後置条件コマンドと同じ主要(principal) な真っ直ぐな(straight-forward) アプリケーションです。引数の後置条件を受け入れるM標準コマンドは、DO, GOTO, XECUTE です。引数の後置条件を受け入れるGT.Mコマンドの拡張は、BREAK、ZGOTO、ZSYSTEMです。

タイムアウト

Mは無期限のコマンドの上でプログラム制御を保つためのツールとしてタイムアウト(TimeOut)を提供します。タイムアウト(TimeOut) は、引数の区切り文字コロン ( : ) に続くコマンドの実行を試みるMに秒数を指定する数値式で構成されています。タイムアウト(timeout) がゼロ(0)の時、Mはコマンドを完了するために1回の試みを行います。

GT.Mは、とても大きいタイムアウト値を許可するように設計されていて、そして、内部表現で大きなタイムアウト値を変換する時に算術オーバーフローから保護するために設計されています。 コマンドにタイムアウトがあると、Mは $TEST 固有な特殊変数の状態を維持します。もしコマンドが正常に完了した場合、Mは$TESTにTRUE(1)をセットします。もし正常に完了する前にコマンドがタイムアウトした場合、Mは$TESTにFALSE(0)をセットします。コマンド引数にタイムアウトを指定しない時は、Mは$TESTを持続しません。

次のコマンドは、タイムアウトを受け入れます。

  • LOCK

  • JOB

  • OPEN

  • READ

  • ZALLOCATE

READ time out のとき、Mはコマンドの開始とタイムアウトに到着した任意の文字を返します。Mは、他のタイミングコマンドのいずれかの部分結果を生成しません。

inserted by FC2 system