|
2.7.11 パッケージの自動読込み
前の節では,2つの命令書式,<<packageと Needs[package]を使ったパッケージの手動読込みの仕方を説明した.本節ではパッケージを自動的に読み込む方法について説明する.
パッケージを自動で読み込み,パッケージに定義されているシンボルを参照するには, DeclarePackageと呼ばれるパッケージを宣言する機能が使える.参照したいシンボルを宣言しておくと,実際に参照するときに必要なパッケージが自動的に読み込まれる.

パッケージの自動読込み
関数 Divと Gradと Curlを Calculus`VectorAnalysis`のパッケージに対応付けておく.
In[1]:= DeclarePackage["Calculus`VectorAnalysis`", {"Div", "Grad", "Curl"}]
Out[1]= 
Gradを参照すると,パッケージが自動的に読み込まれる.
In[2]:= Grad[x^2 + y^2, Cartesian[x, y, z]]
Out[2]= 
読み込ませたいパッケージがたくさんあるときは,必要な DeclarePackageの宣言文を盛り込んだ 「参照名ファイル」を別途用意しておき,どのシンボルの参照があったらどのパッケージを読み込むか指定しておくと便利である.そうすれば,計算セッションを始める際に参照名ファイルだけを読み込むだけで自動読込みの準備が完了する.
関数 DeclarePackageの働き方として,宣言時にすぐ指定シンボルが生成され, Stub「スタッブ」と呼ばれる特殊な属性が同シンボルに付加される.そして,実際の計算セッションで,宣言シンボルを参照すると,スタッブの属性により対応パッケージを自動的に読み込むように判断される.
|