void mg_main(), mg_sub1(), mg_sub2() require "mg.mm";
従来は,関数名とファイル名が一致しなければ,宣言された関数が呼び出されても
必要なファイルが自動的に読み込まれなかった。require修飾子を用いれ
ば関数名と異なる名前のファイルに関数を定義できる。例えば,
Matrix PoleAssignSISO() "poleasgn.mm";
宣言されていて定義されていない関数が呼び出されると,その関数が定義され
ているファイルが,環境変数MATXINPUTSで定義されているディレクトリ群や
デフォルトmmファイルディレクトリから再帰的に検索される。
ファイルやディレクトリの数が多くなると検索に時間がかかるが,requrie
修飾子で関数が定義されているファイルを指定すれば,検索時間が短縮される。
例えば,
List bode(...) requrie "control/bode.mm";