IMW3の文法

 IMW3の文法はC言語と類似させています。
 関数や変数の型指定は省かれている点、関数は引数を持たない点、変数は全て グローバル変数である点、などがC言語とのちがいです。(関数が引数を持たないため、 IMWでは関数のことをサブルーチンと呼んでいる)

 参照 サンプルプログラム

 区切り記号、文末記号
 コマンドのパラメータの区切りには、「,」を使う。
 文末記号には「;」を使う。

  Circle(0,10,10,100,100,1,2) ;

 サブルーチン
 サブルーチンおよび予約サブルーチン

 サブルーチン名{ 処理内容 }

 と記述する。
 サブルーチンを呼び出し、実行するには呼び出しコマンド call を使う。
 IMWはサブルーチンが呼び出された場合プログラムの上から下へサブルーチンを さがす。同一名のサブルーチンが複数存在する場合、特にエラーなどは出さずに 最初に見つけた方(上にある方)のみが実行される。

 空白、改行
 空白、タブ、改行は実行時無視されるため、プログラムを見やすくするために 自由に入れることができる。(実行速度にも無関係)
 注意:全角スペースは無視されず、エラーになる。
 文字列内の空白(" の中 ")はそのまま空白として扱われる。

  Pri nt(0, 10 , 10 , 0 ,
    16 , 32 , 1 ,"Hello IMW !") ;

 この例では、パラメータやコマンドに含まれる空白、改行は無視するが、" "の中の 空白は有効となり、

 Print(0,10,10,0,16,32,1,"Hello IMW !") ;

 が実行される。

 コメント
 「//」記号から右側の内容は実行時無視されるため、プログラム中の コメントとして使える。(実行速度にも無関係)

  call("sub") ; // subを実行