VAX LISP/VMS System-Building Guide

Order Number: AA-KM37B-TE

This document, the VAX LISP/VMS System-Building Guide, describes how to create custom, executable LISP images (.EXE files) on VMS systems using the VAX LISP System-Building Utility.

These user-built systems offer several advantages over suspended LISP systems, including being stand-alone, allowing exclusion of unneeded Digital-provided code to reduce size and memory footprint, and enabling user-written code to be incorporated into shareable, read-only sections. Users can also customize the image's entry point, welcome message, and memory parameters (dynamic memory, control, and binding stack sizes).

The core of the utility is the DEFINE-LISP-SYSTEM function, which is called from within VAX LISP. This function takes various keyword arguments to define the characteristics of the custom LISP system, such as:

  • :INPUT-FILES: Specifies user LISP code to be included in the image.
  • :MAIN and :INIT-FUNCTION: Define the LISP functions that execute when the image starts.
  • :HERALD: Controls the display of a welcome message.
  • :EXCLUDE: Allows specific Digital-provided VAX LISP components (e.g., debugger, compiler, graphics functionality) to be omitted, saving disk space and memory.

A significant feature is the ability to create "execute-only" systems by setting the :REQUIRES-LICENSE keyword to NIL. Such systems can be freely distributed without a VAX LISP software license, as they automatically exclude development-related components like the debugger, compiler, and the system-building utility itself.

The system-building process involves two main steps:

  1. Invoking DEFINE-LISP-SYSTEM in LISP to generate build files (a VMS command procedure and a compiled file).
  2. Executing the generated VMS command procedure from DCL to produce the final executable (.EXE) image.

Once built, these images can be installed as shareable using the VMS Install Utility for improved multi-user performance. They can be invoked using standard DCL commands like RUN (without LISP-specific qualifiers), or more powerfully through user-defined DCL commands or the Digital-defined LISP command, which allow LISP-specific qualifiers with certain restrictions depending on the image's entry point and included components.

AA-KM37B-TE
July 1989
44 pages
Quality

Original
17MB

Site structure and layout ©2025 Majenko Technologies