J语言的"加载"命令

hoo*_*rEE 7 installation j

我正在研究J引物,并且在load命令方面遇到困难.

特别是,有时候教程的下一步是load 'foo',我会得到如下错误:

   load 'plot'
not found: /users/username/j64-801/addons/graphics/plot/plot.ijs
|file name error: script
|       0!:0 y[4!:55<'y'
Run Code Online (Sandbox Code Playgroud)

当我做ls /users/username/j64/addons/我只有configide在那里,所以它是明智的是graphics没有找到.

我的问题: 如果举一个例子说load 'foo',我该如何寻找和安装foo

Dan*_*ron 12

我建议只安装所有JAL包("Addons").没有太多,所以下载不会花费太长时间,您将可以访问运行实验室,Wiki示例以及社区发布的任何代码所需的一切(例如,在J论坛上).

要安装所有可用的Addons,请在Jconsole中键入以下内容(理论上您可以将其键入JHS或JQT,但由于这些是作为Addons分发的,因此您可能无法在运行时升级它们):

   load'pacman'  NB. J PACkage MANager
   install'all'
Run Code Online (Sandbox Code Playgroud)

包管理器将开始运行,您将看到如下输出:

Updating server catalog...
Installing 52 packages
Downloading base library...
Installing base library...
Downloading api/gl3...
Installing api/gl3...
Downloading api/ncurses...
Installing api/ncurses...
Run Code Online (Sandbox Code Playgroud)

然后停止并重新启动Jconsole,并运行:

   load 'pacman'
   'update' jpkg 'all'
Run Code Online (Sandbox Code Playgroud)

确保满足所有递归依赖性并且所有包都是最新的(特别是基本库).最终,你希望看到类似的东西:

Updating server catalog...
Local JAL information was last updated: <datetime>
All available packages are installed and up to date.
Run Code Online (Sandbox Code Playgroud)

然后最后一次停止并重启J.完成后,您应该拥有运行实验室所需的一切.


要回答你的最后一个问题,如果你看到如下行:

   load'foo'
Run Code Online (Sandbox Code Playgroud)

你要做的第一件事就是跑步getscripts_j_ 'foo'.在你的例子中:

   getscripts_j_ 'plot'
+--------------------------------------------------------------+
|c:/users/user/j64-801/addons/graphics/plot/plot.ijs|
+--------------------------------------------------------------+
Run Code Online (Sandbox Code Playgroud)

在这里,您可以看到J期望包所在的完全限定路径.

特别是,您可以看到它相对于addons目录的位置,该目录将始终采用addons/category/module /foo.ijs格式.类别和模块名称表示您需要安装哪个插件,因此您只需从包管理器中可见的目录中选择所需的条目.