package: Define a new package, or print the current package names

Package: language

Usage

package pkgname

Parameters

pkgname
The name of the new package to be created. If called with no arguments, package lists the currently defined packages in task search order.

Description

The package task creates a new package. The newly defined package becomes the current package, and the prompt is changed to use the first two characters of the package name. The package command does not define any tasks within the package, that is done by subsequent task declarations. Subsequent task declarations will add tasks to the task list for the new package.

The new package remains the "current package" until another package command is entered, or until the task in which the package command was entered is terminated. Normally package will be used at the beginning of a script to define the package name. It will be followed by one or more task definitions, and then by a cl or clbye to interpret user commands, until the command bye is entered by the user, at which time the package script task terminates, discarding the package and any associated definitions.

Examples

1. The use of package in a package script task.

package lists

set     lists           = "pkg$lists/"

task    table,
        tokens,
        unique,
        lintran,
        columns,
        words           = "lists$x_lists.e"

task    $gcursor        = "lists$gcursor.cl"
task    $imcursor       = "lists$imcursor.cl"
task    average         = "lists$average.cl"

clbye()

2. List the currently defined packages in the order in which they will be searched for tasks.

cl> pack
clpackage
language
user
system

Bugs

All active packages must have unique names. To eliminate the possibility of parameter file name collisions in UPARM, the three character string formed by concatenating the first two and final characters of the package name should be unique.

See also

task, redefine