J Application Library
In J601, the application library was the collection of scripts, tutorials and other files included with the distribution. Some additional files were available on an adhoc basis, as addons, and from the wiki page Scripts.
With the introduction of JAL in J602, the addons system is extended to make it easier to contribute an addon, and easier to install and use the addons. The intent is that the addon library will become a key part of the J system, much like the CPAN and CTAN libraries for Perl and TeX.
- For the user, the J session has a Package Manager for installing addons and updating the core library directly, assuming there is an Internet connection. Once installed, addons become part of the normal J system.
- For the developer, there is now a more formal method of defining addons, and the use of Subversion for source code management and automated build system.
The addons and the base library can be installed/upgraded from within the J session, from the distribution repository over the Internet, see Package Manager.
The three main sources for the library will be:
- base library - the distributions contain a base library, primarily required to support the development system. From version J7.01 many scripts not required by the development system have been moved out of the base library and into addons. The source for this library is the Subversion repository at http://www.jsoftware.com/svn/base, see Subversion/Base.
- addons collection - these are additional modules that can be installed as extensions to the distribution. The source for these is the subversion repository at http://www.jsoftware.com/svn/addons, see Addons/Versioning.
- other contributed scripts - these are single files formerly from the Scripts page; now they will be located in addons/category/misc. There is no separate addons for each script, instead they are distributed together inside a collective category/misc addon, see misc.
Addons are installed in a two-level directory under the local addons directory, for example:
Older addons will be moved to an appropriate directory, for example:
Directory ~addons/config is reserved for configuration files, and is not an addon.
All directory names are in lower case.
The load and require verbs support shortnames matching the directory names, for example
are equivalent to
See also the Addons Developers Guide.