包的自动调入

其它节中,我们已经讨论了用 <<packageNeeds[package] 直接调入 Wolfram 语言程序包. 有时候,还要对 Wolfram 语言进行设置以便在必要时自动调入一个包.

可以用 DeclarePackage 去给出在一个包中定义的符号名,然后当某一符号被调用时,Wolfram 语言就自动调入包含这个符号的包.

DeclarePackage["context`",{"name1","name2",}]
指明当名为 的符号使用时自动调入一个包

自动调入程序包的安排.

这里指明符号 VariationalDEulerEquationsFirstIntegralVariationalMethods` 中定义.
In[1]:=
Click for copyable input
Out[1]=
第一次使用 VariationalD 时,Wolfram 语言自动调入定义它的包.
In[2]:=
Click for copyable input
Out[2]=

当建立大量的 Wolfram 语言程序包时,最好产生一系列 DeclarePackage 命令的名称文件,以便在某一名称被使用时调入一个程序包. 在一个 Wolfram 系统进程中,仅需要调入名称文件,随后其它的程序包在需要时就被自动调入.

DeclarePackage 对指定的名称立即产生符号,但给每个称号一个特定的属性 Stub. 当 Wolfram 语言发现一个符号具有 Stub 属性时,它就自动调入与该符号对应的内容以得到这个符号的定义.