next up previous contents
Next: 6.12 package式 Up: 6.11 load式 Previous: 6.11 load式

6.11.1 UNIX上のCmm処理系の load式が満たすべき機能

UNIXにおけるload式は、以下のような機能を持っている必要があります。

ソースファイル、あるいはその中間コード形式のファイルは、ファイルサーチ のとき、そのファイルの拡張子について、以下の順でサーチします。

変数loadPathに、文字列で与えられたディレクトリ、あるいは、文字列 の配列で与えられた複数のディレクトリは、load式のサーチパスとして Cmmソースあるいはその中間コード形式ファイルが探索されなければなりませ ん。また、loadPathのサーチするための条件は以下の通りです。

たとえば、


var loadPath = "/usr/local/cmm/inlcude" ;

と設定されている場合は、ディレクトリ"/usr/local/cmm/inlcude"も検索対象となり ます。

また、


var loadPath = ["/usr/cmm/include",

SPMgt;"/usr/local/cmm/include",
SPMgt;"/usr/home/pon/cmm/include" ] ;

となっている場合は、

"/usr/cmm/inlcude"
"/usr/local/cmm/include"
"/usr/home/pon/cmm/include"

をこの順に探索し、最初に見つかったCmmソースファイル、あるいは、そのコ ンパイル形式をロードします。

また、ロードされたCmmソースファイル、あるいは、そのコンパイル形式は、 配列型の定義済みグローバル変数


__loadedModules

に配列で格納されます。例えば、fileA.cmmと、fileB.cmm がロードされてい る場合、変数__loadedModulesには、そのファイルのフルパスが下記のよう に格納されています。


[ "/usr/home/someone/MyCmmLib/fileA.cmm",

SPMgt;"/usr/home/someone/MyCmmLib/fileB.cmm"]

UNIXのCmm処理系は、この変数を参照してファイルをロードするかしないかを 決めます。


next up previous contents
Next: 6.12 package式 Up: 6.11 load式 Previous: 6.11 load式
Tetsuo Ono
1998-11-05