JAL/User Guide

From J Wiki
Jump to: navigation, search
Jal12.gif User Guide   j804 j803 j802 j801 j701 j602   Addons Development Categories Versions   SVN Build

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.

Package Manager

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.

Library Files

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.
  • 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 Directories

Addons are installed in a two-level directory under the local addons directory, for example:
   jpath '~addons/web/cgi'

Older addons will be moved to an appropriate directory, for example:
   jpath '~addons/math/fftw'

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
   load 'web/cgi'
   load 'convert/misc/base64'
are equivalent to
   load '~addons/web/cgi/cgi.ijs'
   load '~addons/convert/misc/base64.ijs'

Addons Documentation

The starting point for the addons documentation is the wiki page Addons. Each addon has its own documentation page on the wiki, named with its installation directory name, for example Addons/arc/zip.

See also the Addons Developers Guide.