Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ domain_lisp.release_notes() — Apollo

Media Vault

Software Library

Restoration Projects

Artifacts Sought









                          DOMAIN LISP Release Notes

                             Software Release 2.0

                               Part No. 004832

                                 Revision 01










     This document describes the new features of DOMAIN LISP Version 2.0
     and all existing bugs and bugs fixed since DOMAIN LISP Version 1.0.


























                             APOLLO COMPUTER INC.
                              330 Billerica Road
                       Chelmsford, Massachusetts 01824






















 c  1985 Apollo Computer Inc.

All rights reserved.

Printed in U.S.A.

Print date:  December, 1985

This  document  was  formatted  using the FMT tool distributed with the DOMAIN
computer system.

APOLLO and DOMAIN are registered trademarks of Apollo Computer Inc.
AEGIS, DOMAIN/IX, DOMAIN/Dialogue, D3M, DPSS, DGR,  GMR,  GPR,  and  DSEE  are
trademarks of Apollo Computer Inc.



Apollo  Computer Inc. reserves the right to make changes in specifications and
other information contained in this publication without prior notice, and  the
reader  should,  in  all  cases,  consult  Apollo  Computer  Inc. to determine
whether any such changes have been made.

THE TERMS AND CONDITIONS GOVERNING THE SALE OF APOLLO COMPUTER  INC.  HARDWARE
PRODUCTS  AND THE LICENSING OF APOLLO COMPUTER INC. SOFTWARE CONSIST SOLELY OF
THOSE SET FORTH IN THE WRITTEN CONTRACTS BETWEEN APOLLO COMPUTER INC. AND  ITS
CUSTOMERS.   NO  REPRESENTATION OR OTHER AFFIRMATION OF FACT CONTAINED IN THIS
PUBLICATION, INCLUDING BUT  NOT  LIMITED  TO  STATEMENTS  REGARDING  CAPACITY,
RESPONSE-TIME  PERFORMANCE,  SUITABILITY  FOR  USE  OR PERFORMANCE OF PRODUCTS
DESCRIBED HEREIN SHALL BE DEEMED TO BE A WARRANTY BY APOLLO COMPUTER INC.  FOR
ANY   PURPOSE,  OR  GIVE  RISE  TO  ANY  LIABILITY  BY  APOLLO  COMPUTER  INC.
WHATSOEVER.

IN NO  EVENT  SHALL  APOLLO  COMPUTER  INC.  BE  LIABLE  FOR  ANY  INCIDENTAL,
INDIRECT,  SPECIAL  OR  CONSEQUENTIAL  DAMAGES  WHATSOEVER  (INCLUDING BUT NOT
LIMITED TO LOST PROFITS) ARISING OUT OF OR RELATING  TO  THIS  PUBLICATION  OR
THE  INFORMATION  CONTAINED  IN  IT,  EVEN  IF  APOLLO  COMPUTER INC. HAS BEEN
ADVISED, KNEW OR SHOULD HAVE KNOWN OF THE POSSIBILITY OF SUCH DAMAGES.

THE SOFTWARE PROGRAMS DESCRIBED IN THIS DOCUMENT ARE CONFIDENTIAL  INFORMATION
AND PROPRIETARY PRODUCTS OF APOLLO COMPUTER INC. OR ITS LICENSORS.



















Reader_Notice

This  document resides on line in the /doc directory.  To print a copy of this
document, use  the PRF command with the -npag and -pr options.

     PRF <file_pathname> -PR <printer_name> -NPAG

The hard-copy version of Chapter 4 that is  shipped  with  the  release  media
may  differ from the on line version of Chapter 4, because they have different
production schedules. Typically, the hard-copy version is more up to date.














































                                     iii









                                   Contents



Section                                                                 Page

CHAPTER 1  OVERVIEW OF DOMAIN LISP 2.0 . . . . . . . . . . . . . . . .  1-1
CHAPTER 2  INSTALLATION PROCEDURES . . . . . . . . . . . . . . . . . .  1-1
CHAPTER 3  CHANGES IN DOCUMENTATION  . . . . . . . . . . . . . . . . .  1-1
CHAPTER 4  BUGS AND BUG FIXES  . . . . . . . . . . . . . . . . . . . .  1-1














































Contents                              iv
















                                  CHAPTER 1

                         OVERVIEW OF DOMAIN LISP 2.0








You can add this software to a node or DOMAIN System Server  that  is  running
the SR9 or a later version of the DOMAIN operating system.

This chapter describes the new features of DOMAIN LISP 2.0.

Incompatible_Change_to_Invocation

Invoke DOMAIN LISP with the DOMAIN_LISP command:

     $ domain_lisp

Change_to_Main_LISP_Directory

The   LISP   files  are  now  in  /SYS/DOMAIN_LISP;  they  are  no  longer  in
/SYS/LISP.  For compatibility,  /SYS/LISP  is  now  a  link  that  points   to
/SYS/DOMAIN_LISP.   You  can  delete  this link if your code does  not contain
any embedded references to /SYS/LISP.

Installation

The LISP installation is simpler.  The global library   /LIB/LISP_INITLIB  has
been  removed  so  you  do  not need to shut  down your node to  install a new
version of LISP.

External_Routines_and_System_Services

DOMAIN LISP provides a new way to call external routines and  system  services
from  LISP,  and  to call LISP from other languages.  Chapter 14 of the DOMAIN
LISP_Language_Reference describes this interface.

Compiler

The LISP compiler is faster.  CPU speed has been doubled and  the working  set
has been reduced by a factor of about 10.




                                     1-1               DOMAIN LISP Release 2.0









Constant_Heap

The  constant  heap  is the area in which LISP stores constants.  The constant
heap is not garbage collected.  LISP  displays  data  regarding  the  constant
heap after garbage collection occurs.

Benchmarks

The  de  facto  standard  "Gabriel"  benchmarks  are packaged with DOMAIN LISP
along with all sources  (see Richard P. Gabriel, "Performance and   Evaluation
of  Lisp  Systems",  MIT  Press, 1985).  The   purpose of this is to encourage
standardized performance   measurement  on  all  equipment  using  "certified"
benchmark code.

The  benchmarks  are  located  in /SYS/DOMAIN_LISP/BENCH.  Documentation is in
/SYS/DOMAIN_LISP/BENCH/DOC.  Run the benchmarks with these commands:

     $ wd /sys/lisp/bench
     $ bench

The_/SYS/LISP/UTIL_Area

The heap_utils and invoke_utils have  been  placed  in  lisplib,  and  so  are
automatically included when you invoke LISP.

The utils area is currently empty.


Specifying_Main_Programs

Main  programs  are  those  that  you  can  invoke  from  the  Shell  or  with
pgm_$invoke.  Specify a main program with the main-function option before  you
compile the  routine.

To  specify a main function, include this expression as the first  line of the
function that begins your program:

     (:options main-function)

For example, the source file myprog.lsp contains a function  named  start_off,
which  is  the  beginning  of the program.  Therefore, we  define start_off in
this  way:

     (de start_off ()
         (:options main-function)
          .
          .
          .
          )

Then compile myprog.lsp to produce the object file myprog.bin.

Main_Program_Heap_Size



DOMAIN LISP Release 2.0              1-2










Use the main-function-initial-heapsize option  to specify  a  particular  heap
size to be used when a main program is invoked.

To  specify  a main function heapsize, include  main-function-initial-heapsize
and a heap size in bytes with the options expression  that  indicates  a  main
function:

     (:options main-function main-function-initial-heapsize 00000000)

where 00000000 is the size of the heap in bytes.


Inlib

You  do not need to inlib Lisplib to run a main program.  However, performance
improves slightly if you do inlib lisplib before invoking the main program.

Function_Redefinition

You can now redefine any function,  including  bound  functions  and  built-in
functions.   Being  able to redefine functions makes the development of  large
LISP systems much easier.  You can enhance and debug a body of bound  routines
by  simply loading the routines and  then loading the new pieces.  A full bind
is  not needed until you want a production version.

Use Load  or  Reload  when  you  load  routines  that  contain  redefinitions.
(Fast-load does not redefine functions in bound routines.)

When  the *UserMode switch is on (T), LISP issues a query for whether you want
to redefine the built-in function in question.    The *UserMode switch  is  on
by default.

NOTE:  It  is  strongly  recommended  that  you  do not redefine built-in LISP
functions.

Tracing

You can now trace compiled functions.

Break_Loop_Traceback

Break loops provide four traceback commands: T, I, F and  V.   These  commands
can also be used with compiled routines.

Representing_Signed_32-bit_numbers

A  new  number  notation lets you denote 32-bit unsigned numbers.  Ordinarily,
you specify numbers in signed notation, such as 15, -37, 16#1A.

To represent a 32-bit unsigned number (right-justified), use this format:

     base$numeral



                                     1-3               DOMAIN LISP Release 2.0










where base indicates the radix being  used,  and  numeral  is  the  number  in
two's-complement notation.  For example,  16$ffffffff is -1.

These numbers are equivalent:

     16$a0000000
    -16#60000000
    -1610612736

Changes_to_Existing_Functions_and_Globals


     o  *Time.  When  the  *Time  switch  is on, LISP displays the CPU time in
        seconds, real  time   in  seconds,  and  the  number  of  page  faults
        incurred in processing  an expression.

     o  %C.  The  %C  formatting directive prints an integer with commas.  Use
        %C with PrintF, BldMsg, and ErrorPrintF.

     o  NEXT Keyword.  You can use the NEXT keyword  with  Do,  Do*,  Do-Loop,
        Do-Loop*, For, and IFor.

     o  *Break-on-Fault.  The *Break-on-Fault switch is on (T) by default.

     o  PPF.  Using  PPF  with  a  compiled function tells you the functions's
        type, number of  arguments  it  expects,  its  code-pointer,  and  its
        source file.


New_Functions_and_Globals


     o  Unique-GenSym, Unique-InternGenSym,      and      Unique-StringGenSym.
        Unique-GenSym  and  Unique-InternGenSym  generate  symbols  based   on
        unique   strings,  and  Unique-StringGenSym generates strings based on
        unique strings.

     o  *Suppress-Prompt-During-Read.  When  the  *Suppress-Prompt-During-Read
        switch  is on (T),   LISP suppresses the LISP prompt until you type an
        entire expression.  This simplifies copying from the transcript pad.

        When the *Suppress-Prompt-During-Read is off (NIL), LISP displays  the
        prompt.

        *Suppress-Prompt-During-Read is normally off.

     o  LSetQ.  LSetQ  binds  identifiers  to  consecutive elements of a list,
        which is useful for  binding  identifiers  to  functions  that  return
        "multiple values."

     o  Function-Source-Filename.  Each  object  module  now contains the name
        of   the    source    file    from    which     it    was    compiled.



DOMAIN LISP Release 2.0              1-4









        Function-Source-Filename   returns    the   source   file  name  of  a
        particular compiled  function.

     o  *Macro-Displace and  DefMacro-Displace.    DOMAIN  LISP  now  provides
        displacing  macros and the ability to define displacing macros.   When
        the *Macro-Displace flag is on, LISP  substitutes  the  definition  of
        macros  defined  with   DefMacro-Displace  for  the call to the macro.
        Faster interpretation of functions results from this substitution.

     o  Channel2Stream and Open-Stream.  LISP lets you  use  streams  directly
        and  call  procedures  that  return  stream-id's.   Channel2Stream and
        Open-Stream, let you map streams  to  channels  and  map  channels  to
        streams.

     o  LoadedP.  LoadedP  checks  whether  a  file is an object file that has
        already been loaded.

     o  *Backtrace.  If the *Backtrace switch is  on  (T),   LISP   calls  the
        Backtrace  function  whenever  an  error occurs.  If *Backtrace is off
        (NIL), LISP does not display backtrace information.

        *Backtrace is normally off.

     o  Backtrace, InterpBacktrace,   FullBacktrace,   and   VerboseBacktrace.
        These  functions  display backtrace information in varying degrees  of
        detail.

        Backtrace displays the interpreted and compiled  functions  that  LISP
        has  called  before  Backtrace  was  called, excluding system overhead
        functions such as Apply and Eval.

        InterpBacktrace displays the functions that LISP   has  called  before
        InterpBacktrace  was  called, including system overhead functions such
        as Apply and Eval.

        FullBacktrace displays the functions  that  LISP   has  called  before
        FullBacktrace was called, including internal functions.

        VerboseBacktrace displays the current stack.

     o  #' is  equivalent  to  Function.   Use  this   to  quote the name of a
        function in interpreted or compiled routines.

     o  A number of predicates and  arithmetic functions have been added  that
        are shorter equivalents of existing functions:

            New   Existing                 New    Existing

             +     Plus                     I+     IPlus
             *     Times                    I*     ITimes
             -     Difference               I-     IDifference
             /     Quotient                 I/     IQuotient
             1+    Add1                     I1+    IAdd1



                                     1-5               DOMAIN LISP Release 2.0









             1-    Sub1                     I1-    ISub1
             <     LessP                    I<     ILessP
             =     EqN                      I=     Eq
             >     GreaterP                 I>     IGreaterP
             <=    LEq                      I<=    ILEq
             >=    GEq                      I>=    IGEq
             <>    NEq                      I<>    Ne


     o  The following  functions  and  global,  which were not included in the
        previous DOMAIN LISP manual, are now documented  in  the  DOMAIN__LISP
        Reference:

             Lambda
             Char
             MapObl
             Reclaim
             *Gc






































DOMAIN LISP Release 2.0              1-6
















                                  CHAPTER 2

                           INSTALLATION PROCEDURES




There are two separate installation procedures described in this chapter.

     o  A  user  installing  optional software on his or her own node can skip
        to the Installation Procedures for Users, (Section 2.2).

     o  A system administrator must perform the  Installation  Procedures  for
        System  Administrators  (Section  2.1) before the user can perform the
        Installation Procedures for Users.

The terms and conventions used in these procedures are as follows:

     o  "Work node" is the node with a  keyboard  and  display  that  you  are
        using to enter the commands to do the software installation.

     o  "Target  volume"  is the Winchester disk or mass storage disk on which
        you are installing new software. "Target node" is the node  or  DOMAIN
        Server  Processor (DSP) that contains the target volume. The work node
        and the target node can be the same.

        NOTE:     When you are installing software to update a diskless  node,
                  the target volume is the partner node's disk.


     o  "Source  media"  is  the media that you get the software from.  In the
        Installation Procedures for System Administrators,  the  source  media
        can  be  floppy  disks,  magnetic  tape,  or  cartridge  tape.  In the
        Installation Procedures for Users, the source media is  the network.

     o  "Source volume" is the Winchester disk or mass storage disk  that  has
        already been updated with the new software.

     o  Angle brackets ( < > ) enclose the name of a key on the keyboard.

     o  These  installation  procedures assumes that you do not have any links
        from system directories, except for links to /sys/help  and  /systest.
        System  directories  include:  /sys,  /com,  /systest,  /bscom,  /lib,
        /sau1-5, and /sysboot.





                                     2-1               DOMAIN LISP Release 2.0









2.1  INSTALLATION PROCEDURES FOR SYSTEM ADMINISTRATORS


This section explains how to install the software from the  source  media  and
set  up  a  source  area  for  user  installations.  After you have set up the
source area, users can perform  network  installs  without  logging  in  as  a
system  administrator.   This  type  of  source  area  is  part of a protected
subsystem.  (Step 5 (INIT_SOURCE)  is  the  one  that  tailors  the  protected
subsystem for your network.)

After  you  have set up this protected subsystem,  you should provide the user
with the pathname  of  the  source  area.   Refer  the  user  to  Installation
Procedures for Users (Section 2.2)  for instructions.

You  can  only install this software on a node or DOMAIN Server Processor that
is running  SR9.0 or a later version of the DOMAIN  operating  system.   If  a
node  is  not  running  SR9  or  a  later  version,  install SR9 following the
software update procedures.  These procedures are described  in  the  Standard
Software__Release__Document_--_Software_Release_9.0 (Order No. 005809 Revision
03).

To install the software:

     1) Log in  to   a   work   node   as   a   system   administator:   i.e.,
        person.sysadmin

     2) Decide where   you   want  to  establish  the  source  area  for  user
        installations. The target volume for  this  installation  will  become
        the  source  volume  in  the  Installation  Procedures for Users. Your
        target volume can be at the node level (like //thunder) or it  can  be
        in   a   subdirectory   (like  //wind/moon/stars).  Set  your  working
        directory to the target volume.

             $ wd //target_volume <RETURN>


     3) Insert the media into the drive and enter one  of  the  RBAK  commands
        shown  below, then press <RETURN>.  If you are using a tape cartridge,
        use the CT option shown in the example.  If you are using  a  magnetic
        tape,  use  the M0 (Mzero) option.  If you are using a floppy, use the
        F0 (Fzero) option.


        $ RBAK -DEV CT -F 1 INSTALL -AS INSTALL -L -MS -FORCE -SACL

        $ RBAK -DEV M0 -F 1 INSTALL -AS INSTALL -L -MS -FORCE -SACL

        $ RBAK -DEV F0 -F 1 INSTALL -AS INSTALL -L -MS -FORCE -SACL


     4) Set your working directory to //target_volume/INSTALL:

             $ WD //target_volume/INSTALL <RETURN>



DOMAIN LISP Release 2.0              2-2









     5) Type INIT_SOURCE to establish the source area  from  which  users  can
        install  their  own  software.  The  procedure  prompts  you  for  the
        pathname of the source area you  are  establishing.  Enter  the   same
        pathname that you entered in Step 2.

             $ INIT_SOURCE <RETURN>

             Please enter the name of the SR9 SOURCE AREA/NODE
             for your network  (e.g., '//NODE/SR9_SOURCE_AREA'):

             The SR9 source area/node for your network
             has been set to:

        This will fail if you are not logged in as person.sysadmin

     6) Execute the INSTALL Shell script by typing:

             $ INSTALL <RETURN>


     7) The program  prompts  you  to enter an installation type. Please enter
        OPT and press <RETURN>.

          Software Installation Types are:

           STD        --  Install SR9 standard software
           RESTART    --  Restart the software installation
           OPT        --  Install optional software (i.e., Pascal Sr9.0.020, GPIO)
           ACL        --  Set ACLs for existing software
           CLEANUP    --  Run the Cleanup Procedure for ADD MODE installations
           DOMAIN_IX  --  Install the DOMAIN/IX software

          Please Enter Installation Type:


     8) The procedure then asks if you have adequate rights to  modify  system
        directories. You must answer yes to this question.

             You must have sufficient rights to modify system directories
             on the target node for the installation procedure to
             work properly.

             You are logged in as:
                 person.sysadmin.organization.node_number   node_name

              Do you have adequate rights ?

             Please enter response. (yes or no):








                                     2-3               DOMAIN LISP Release 2.0









     9) You are  then  prompted  for the name of the target volume.  Enter the
        pathname that you entered in  step  5  when  the  INIT_SOURCE  command
        prompted  you  for the SR9 SOURCE AREA/NODE for your network and press
        <RETURN>.


                            **  SR9 Optional Software Installation  **


             Please enter the name of the TARGET volume that the SR9 Optional
             Software will be installed on. (e.g. '//UPDATE_ME'):

             Enter TARGET Volume:


    10) The procedure prompts you for the name of the optional product.  Enter
        a  single name (LISP) and press <RETURN>.

             Name    Description                          Disk Blocks Needed
                                                        (Adding New Software)

             CC            C Compiler SR9.0.020                      1400
             CORE          Core library SR9.0.020                     500
             D3M           DOMAIN Distributed Database Management    4300
             DIALOGUE      DOMAIN/DIALOGUE                           1000
             DPCI1         DOMAIN/PCI -1                             1000
             DPCI8         DOMAIN/PCI -8                             1100
             DSEE          DOMAIN Software Engineering Environment   1800*
             FTN           FORTRAN Compiler SR9.0.020                 700
             GPIO          GPIO Software                              950
             LISP          DOMAIN/Lisp                               2300
             PAS           Pascal Compiler SR9.0.020                 1100
             RJE           DOMAIN System RJE Emulation Package        300
             TCP           TCP/IP                                     900


             * Represents DSEE software only.
               The DSEE Tutorial is an additional 2500 blocks.



             Enter the name of a single optional software product you
             would like to install.

             Please enter an optional software product name:











DOMAIN LISP Release 2.0              2-4









    11) The procedure  prompts  you for the name of the source media. Enter it
        and press <RETURN>.

             Source MEDIA is one of:
              CTAPE   --  SR9 Optional Release Cartridge Tape
              FLOPPY  --  SR9 Optional Release Floppy Disk
              MTAPE   --  SR9 Optional Release Magnetic Tape
              NET     --  A volume on the network with SR9 Optional software
              QUIT    --  Exit from the installation
             Enter Source Media:


    12) The procedure installs the software. When it is  finished,  check  the
        transcript pad to verify that all the files were copied.

             INSTALLING OPTIONAL SOFTWARE on target_volume
                    .                .
                    .                .


    13) The procedure  prompts  you for the next step. Enter the proper option
        and press <RETURN>.

              Options:

                    RERUN    --  There were errors in the transcript
                                 pad and you wish to rerun the installation.

                    FINISH   --  The installation ran to completion error free.
                                 There is no additional optional software  you
                                 wish to install.

                    CONTINUE --  Install additional optional software.

             Enter an option:


    14) If you selected  FINISH  and  if  there  were  no  errors  during  the
        installation,   you  are  finished  with  the  creation  of the source
        area.  If you want to use the software in the source  area,  you  must
        shutdown and restart the target node.



2.2  INSTALLATION PROCEDURES FOR USERS


Use  these  procedures  if you are a user installing optional software on your
own node. Ask your system administrator for the name of the source volume  for
the  software. If your node has a disk, then your own node is the target node;
if your node is diskless, then your partner node is the target node.





                                     2-5               DOMAIN LISP Release 2.0










     1) Log in to a work node as yourself.  Start a Shell on  the  work  node.
        (This can be the target node.)

     2) Set your working directory to  //source_volume/INSTALL.

             $ WD //source_volume/INSTALL <RETURN>


     3) Execute the INSTALL Shell script by typing:

             $ INSTALL <RETURN>


     4) The program  prompts you to enter an installation type. Enter  OPT and
        press <RETURN>.

          Software Installation Types are:

           STD        --  Install SR9 standard software
           RESTART    --  Restart the software installation
           OPT        --  Install optional software (i.e., Pascal Sr9.0.020, GPIO)
           ACL        --  Set ACLs for existing software
           CLEANUP    --  Run the Cleanup Procedure for ADD MODE installations
           DOMAIN_IX  --  Install the DOMAIN/IX software

          Please Enter Installation Type:


     5) The procedure  then  asks  if  you  have  rights  to   modify   system
        directories.  Most  users  should  answer  NO. When you answer NO, the
        procedure  automatically grants you the rights needed to  install  new
        software into these system directories.

        Only  answer  YES  if  you have deliberately changed  the ACLs on your
        system directories (/SYS, /COM, /SYSTEST,  /BSCOM,  /LIB,  SAU1-5,  or
        /SYSBOOT) and removed a system administrator's priviliges.

        The same software is installed, whether you answer YES or NO.

             You must have sufficient rights to modify system directories
             on the target node for the installation procedure to
             work properly.

             You are logged in as:
                 person.project.organization.node_number   node_name

              Do you have adequate rights ?

             Please enter response. (yes or no):






DOMAIN LISP Release 2.0              2-6










     6) You are  then  prompted  for  the  name of the target volume. Enter it
        and  press <RETURN>.


                            **  SR9 Optional Software Installation  **

             Please enter the name of the TARGET volume that the SR9 Optional
             Software will be installed on. (e.g. '//UPDATE_ME'):

             Enter TARGET Volume:


     7) The procedure prompts you for the name of a single  optional  product.
        Enter it and press <RETURN>.

             Name      Description                        Disk Blocks Needed
                                                        (Adding New Software)

             CC            C Compiler SR9.0.020                      1400
             CORE          Core library SR9.0.020                     500
             D3M           DOMAIN Distributed Database Management    4300
             DIALOGUE      DOMAIN/DIALOGUE                           1000
             DPCI1         DOMAIN/PCI -1                             1000
             DPCI8         DOMAIN/PCI -8                             1100
             DSEE          DOMAIN Software Engineering Environment   1800*
             FTN           FORTRAN Compiler SR9.0.020                 700
             GPIO          GPIO Software                              950
             LISP          DOMAIN/Lisp                               2300
             PAS           Pascal Compiler SR9.0.020                 1100
             RJE           DOMAIN System RJE Emulation Package        300
             TCP           TCP/IP                                     900


             * Represents DSEE software only.
               The DSEE Tutorial is an additional 2500 blocks.



             Enter the name of a single optional software product you
             would like to install.

             Please enter an optional software product name:













                                     2-7               DOMAIN LISP Release 2.0









     8) The procedure  prompts  you for the name of the source media. Enter it
        and press <RETURN>.

             Source MEDIA is one of:
                   CTAPE   --  SR9 Optional Release Cartridge Tape
                   FLOPPY  --  SR9 Optional Release Floppy Disk
                   MTAPE   --  SR9 Optional Release Magnetic Tape
                   NET     --  A volume on the network with SR9 Optional software
                   QUIT    --  Exit from the installation
             Enter Source Media:


     9) Skip this step if you answered NO in step 5.  If you answered  YES  in
        step  5  and if you answered NET in step 6, then the procedure prompts
        you for the name of the source volume. Enter  the  source  volume  and
        press <RETURN>.

             Enter the name of the entry directory from which to copy the
             SR9 Optional Software  (e.g., '//GTI'):

             Enter Source Volume or type 'quit':


    10) The procedure  installs  the  software. When it is finished, check the
        transcript pad to verify that all the files were copied.

             INSTALLING SR9 OPTIONAL SOFTWARE on target_volume
                  .         .
                  .         .


    11) Enter the proper option and press <RETURN>.

              Options:

                    RERUN    --  There were errors in the transcript
                                 pad and you wish to rerun the installation.

                    FINISH   --  The installation ran to completion error free.
                                 There is no additional optional software  you
                                 wish to install.

                    CONTINUE --  Install additional optional software.


             Enter Option:










DOMAIN LISP Release 2.0              2-8









    12) If you selected  FINISH  and  if  there  were  no  errors  during  the
        installation,   the  procedure  instructs  you to shut down the target
        node and reboot it.  Use the Display  Manager  SHUT  command  to  shut
        down  the target node. (If your node is diskless, then the target node
        is your partner node.)

             <cmd>  shut


    13) After the SUCCESSFUL SHUTDOWN message  and  the  ">"  prompt  appears,
        reboot  the  node  by  typing the following at the prompt: RE <RETURN>
        <RETURN> EX AEGIS <RETURN>.

             > RE  <RETURN>
             > <RETURN>
             MD REV xx/xx/xx
             > EX AEGIS <RETURN>

        You are finished with the installation.





































                                     2-9               DOMAIN LISP Release 2.0
















                                  CHAPTER 3

                           CHANGES IN DOCUMENTATION








The DOMAIN_LISP_Language_Reference (Revision 03)  describes  all  features  of
DOMAIN LISP 2.0, so this section contains no new information.




































                                     3-1               DOMAIN LISP Release 2.0
















                                  Chapter 4

                              BUGS AND BUG FIXES







4.1  BUG FIXES SINCE DOMAIN LISP 1.0



DOMAIN LISP 2.0 fixes the following bugs:


     o  Previously, you  could  not  use  certain data objects as constants in
        compiled routines.  These data objects included large integers,   byte
        vectors,   halfword  vectors,  and  word  vectors.   DOMAIN  LISP  now
        supports all data objects.

     o  Calls to the Load function are now  compiled  and  are  run  with  the
        initialization code.

     o  The prettyprinter  now  properly  displays lists whose last Cdr is not
        NIL.

     o  LISP now compiles anonymous lambda expressions  in  compiled  routines
        when you quote the expressions with Function or #'.

     o  You can now load main functions and call them as ordinary functions.

     o  LISP no  longer  prints  a  message  if  a  fault that is handled by a
        user-defined fault handler occurs.

     o  You can now use DskIn inside of CompileTime to load a  file  into  the
        compilation environment without compiling the file.











                                     4-1               DOMAIN LISP Release 2.0









4.2  KNOWN LIMITATIONS IN DOMAIN LISP 2.0



The following is a list of known limitations in DOMAIN LISP 2.0:

     o  You cannot   use   RemD  to  remove  the  definition  of  a   built-in
        function.  In addition, if you redefine built-in  functions,  you  may
        not be able to reinvoke LISP in that incarnation of the Shell.

     o  Certain functions,  such  as  GMergeSort, take functions as arguments.
        With these functions you must supply an Expr, such as LessP,  for  the
        function argument; you cannot supply a macro, such as <.

     o  With the  Pascal/LISP  interface,  if  a  name  becomes too long  (for
        example, when type and field  names  are  conjoined),  LISP  does  not
        issue an error until the compilation phase.

     o  With the  Pascal/LISP interface, the uniqueness of floating-point  out
        (output) arguments is not guaranteed.




4.3  BUGS IN DOMAIN LISP 2.0



None.



























DOMAIN LISP Release 2.0              4-2




Typewritten Software • bear@typewritten.org • Edmonds, WA 98026