
















                          REDUCE INSTALLATION GUIDE

                         FOR THE DECSYSTEMS 10 AND 20

                                 Version 3.0

                                      by

                               Anthony C. Hearn

                             The Rand Corporation
                          Santa Monica, CA 90406 USA

                                  April 1983








                                   ABSTRACT


This guide describes the DECSYSTEM REDUCE distribution tape and procedures for
installing,  testing  and  maintaining  REDUCE on a DECSYSTEM 10 or 20 running
TOPS-10 or TOPS-20.









                         Rand Publication CP79(4/83)

                   Copyright (c) 1983 The Rand Corporation

                              _T_A_B_L_E__O_F__C_O_N_T_E_N_T_S







1.  INTRODUCTION ........................................................    1

2.  DESCRIPTION OF THE DECSYSTEM REDUCE DISTRIBUTION TAPE ...............    1

3.  INSTALLING REDUCE ...................................................    1
         3.1  Assembly of the LISP Interpreter ..........................    2
         3.2  Assembly of REDUCE ........................................    3
         3.3  Making REDUCE Accessible to Users .........................    4

4.  PRINTING DOCUMENTS ..................................................    4

5.  TESTING REDUCE ......................................................    4

6.  RUNNING REDUCE PROGRAMS .............................................    5

7.  WORKING WITH MINIMAL DISK SPACE .....................................    5

8.  REBUILDING REDUCE FASL FILES ........................................    6

9.  PROGRAM REGISTRATION ................................................    6

10.  INQUIRIES AND REPORTING OF ERRORS ..................................    7

REDUCE Installation Guide for DECSYSTEMS 10 and 20                      Page 1


1.  _I_N_T_R_O_D_U_C_T_I_O_N

This guide describes the DECSYSTEM REDUCE distribution tape and procedures for
installing,  testing  and  maintaining  REDUCE on a DECSYSTEM 10 or 20 running
TOPS-10 or TOPS-20.  The distributed version of REDUCE requires at  least  140
pages of memory in order to run effectively.

The job times given in this guide are for a  DECSYSTEM  2060T  running  REDUCE
with  a 230 page memory partition.  The following adjustment factors for other
machines have been found to apply.

                        KA-10   6.7       2040    3.3
                        KI-10   3.3       KL-10   1.0

These factors are however approximate and will vary according to machine  con-
figuration and memory speeds.


2.  _D_E_S_C_R_I_P_T_I_O_N__O_F__T_H_E__D_E_C_S_Y_S_T_E_M__R_E_D_U_C_E__D_I_S_T_R_I_B_U_T_I_O_N__T_A_P_E

The distribution tape is in DUMPER (BACKUP) format and recorded in interchange
mode  at  a density of 1600 bpi.  The files are organized into groups with the
following structure:

DOC              REDUCE documents, all with an extension DOC, including:

                 instal.doc      Installation instructions (i.e., this
                                 document)
                 reduce.doc      REDUCE User's Manual
                 sl.doc          Standard LISP Report
                 sldec.doc       Manual for Standard LISP on DECSYSTEM
                                 10 and 20
                 tops10.doc      System specific operation notes.
                 tops20.doc

EXE              reduce.exe, the REDUCE executable file.

FASL             Fast loading LISP files for loading REDUCE functions, all
                 with the extension FAP.

SRC              MACRO and RLISP sources for creating LISP and REDUCE.
                 These files have the extensions MAC, RED and SL.

UTIL             Macro Interpreted Command facility scripts for building
                 REDUCE, etc.

XMPL             REDUCE examples, tests, demonstrations and the interactive
                 lessons. The lessons have names LESS1 through LESS7 with
                 no extension. Other such files have the extension TST.


3.  _I_N_S_T_A_L_L_I_N_G__R_E_D_U_C_E

To install REDUCE, you need to create a directory for the REDUCE file  system.
A good name for this under TOPS-20 is <reduce>, which will be used to describe

REDUCE Installation Guide for DECSYSTEMS 10 and 20                      Page 2


it from now on.  Connect to this directory, mount the tape and give  the  fol-
lowing commands:

TMOUNT MTA: MYTAPE:/REELID:name of tape
DUMPER (or R BACKUP on TOPS-10 machines)
TAPE MYTAPE
INTERCHANGE
DEN 1600
RESTORE *.*
EXIT

This will retrieve all the files on the tape, and requires  approximately  the
following pages of disk space, in 512K bytes:

                              DOC   200
                              EXE   200
                              FASL  330
                              SRC   500
                              UTIL   10
                              XMPL   60
                                   ----
                             total 1300

If you are running on a computer using Release 4 or later of TOPS-20,  and  no
source  updates  are  necessary,  then you are now ready to run REDUCE and its
supporting Standard LISP system.  In this case, you can proceed to the section
"Making REDUCE Accessible to Users".  Otherwise you must assemble the Standard
LISP interpreter and build the REDUCE executable file as described in the fol-
lowing sub-sections.

3.1  _A_s_s_e_m_b_l_y__o_f__t_h_e__L_I_S_P__I_n_t_e_r_p_r_e_t_e_r

To assemble the Standard LISP interpreter, the following two steps are  neces-
sary:

1) Using a suitable editor, look for the line "OPSYS is set here" in the
   file LISP.MAC.  This is approximately 400 lines from the beginning of
   the file.  Change the following lines to give OPSYS the appropriate
   value for your system.  These values are:

OPSYS==-1       TOPS-20 (the default)
OPSYS==0        TOPS-10
OPSYS==1        TENEX

2) Build the LISP execute file LISP.EXE by the following sequence of
   commands:

     LOAD LISP
     SAVE            (or SAVE LISP 12 under TOPS-10)

This assembly takes about  60  seconds  to  complete  on  the  DECSYSTEM  2060
described earlier.

If this assembly is done on a machine running the TOPS-20AN (Arpanet) monitor,
a  message "Multiply defined global symbol CLOSE" may be printed.  This is due

REDUCE Installation Guide for DECSYSTEMS 10 and 20                      Page 3


to the presence of a JSYS CLOSE in the TCP/IP enhancements that conflicts with
the  LISP  function  CLOSE in the assembler. This conflict causes no harm, and
can therefore be ignored.

3.2  _A_s_s_e_m_b_l_y__o_f__R_E_D_U_C_E

In the following narrative, user input is shown in lower case and system  out-
put  in upper case.  Except where noted, user input terminates with a carriage
return.

For TOPS-10, the following sequence of commands is used:

     .as dsk: sys:
     DSK ASSIGNED

     .r lisp 70

     ALLOCATE? y
     SYS: <cr>
     FWDS=7000<space>
     BPS.=100000<space>
     SPDL=600<space>
     RPDL=600<space>
     HASH=475<space>

     STANDARD LISP (APRIL 1983)

     *(setq fislsize 1500)

     1500

     *(load rlisp rend alg1 alg2 rend2 entry)

     NIL

     *(excise)

     T

     *(quit)

     .save reduce
     REDUCE SAVED

For TOPS-20, the following sequence is used:

     @def sys: <reduce>,sys:
     @lisp

     ALLOCATE? y
     CORE (K): 60<space>
     SYS: <space>
     FWDS=12000<space>
     SPDL=600<space>
     RPDL=600<space>

REDUCE Installation Guide for DECSYSTEMS 10 and 20                      Page 4


     HASH=475<space>

     STANDARD LISP (APRIL 1983)

     *(load rlisp rend alg1 alg2 rend2 entry)

     NIL

     *(excise)

     T

     *(quit)
     @save reduce
     REDUCE.EXE.1 SAVED

This assembly takes about 10 seconds.

For those systems that support the Macro Interpreted  Commands  facility,  the
file  group UTIL contains a number of files that can be used to facilitate the
building process. In particular, the files mkred1.mic and  mkred2.mic  can  be
used  to  perform the above assembly for TOPS-10 and TOPS-20 respectively. For
example, to build REDUCE under TOPS-20, you would say

     do mkred2

3.3  _M_a_k_i_n_g__R_E_D_U_C_E__A_c_c_e_s_s_i_b_l_e__t_o__U_s_e_r_s

In order to make REDUCE accessible to them,  users  should  be  instructed  to
include <reduce> in their SYS: pathname by a system command such as

     def sys: <reduce>,sys:

Alternatively, the file reduce.exe and the files  in  the  group  FASL  (i.e.,
those  with  the extension fap) should be moved to a SYS: directory.  The FASL
files must be moved since they are needed during REDUCE runs.


4.  _P_R_I_N_T_I_N_G__D_O_C_U_M_E_N_T_S

A number of documents relating to the assembly and running of LISP and  REDUCE
are included in the file group DOC.  The documents are pagenated and formatted
with standard ASCII control characters and may therefore be printed  by  stan-
dard  printing  programs.  A maximum page length of 60 lines is assumed.  Note
also that the left margin offset must be supplied by the user.


5.  _T_E_S_T_I_N_G__R_E_D_U_C_E

To test the REDUCE installation, the following job should be run:

     Under TOPS-10:                  Under TOPS-20:

     .r reduce 140                   @reduce

REDUCE Installation Guide for DECSYSTEMS 10 and 20                      Page 5


     REDUCE 3.0, 15-Apr-83           REDUCE 3.0, 15-Apr-83

     *in "reduce.tst";               *core 70;

                                     *in "reduce.tst";



This requires about 25 seconds on the DEC 2060 as described above. If the out-
put  is  directed  to  a  file (by a command such as "out out;"), this time is
reduced to about 16 seconds.

Other programs for testing the REDUCE system assembly may also be found in the
file group XMPL.


6.  _R_U_N_N_I_N_G__R_E_D_U_C_E__P_R_O_G_R_A_M_S

Once reduce.exe has been placed on the user's search path,  REDUCE  is  simply
invoked with its name:

     reduce

REDUCE will respond with a banner line and then prompt for the first  line  of
input:

     reduce 3.0, 15-Apr-83 ...

     1:

Prototypical instructions for using the TOPS-10 and TOPS-20 versions of REDUCE
are  available  as  the  files  tops10.doc  and tops-20.doc respectively.  You
should edit the appropriate version to reflect your site-specific  implementa-
tion  before  issuing  it  to  users.   See  also the REDUCE User's Manual for
further details.


7.  _W_O_R_K_I_N_G__W_I_T_H__M_I_N_I_M_A_L__D_I_S_K__S_P_A_C_E

Many of the REDUCE system files are not necessary for the running  of  REDUCE.
In  situations  where  disk  space is at a premium, the following files may be
deleted from disk:

     -all files in the groups DOC, SRC, UTIL and XMPL,

     -the files alg1.fap, alg2.fap, entry.fap, rend.fap, rend2.fap and
      rlisp.fap from the file group FASL.

Although the file groups DOC and XMPL are not necessary, it  is  advisable  to
leave at least the REDUCE manual, TOP-10 or TOPS-20 operating instructions and
the REDUCE interactive lessons on-line for users.

REDUCE Installation Guide for DECSYSTEMS 10 and 20                      Page 6


8.  _R_E_B_U_I_L_D_I_N_G__R_E_D_U_C_E__F_A_S_L__F_I_L_E_S

Because of its organization into independently compilable modules, the current
REDUCE system is fairly easy to maintain. If any source updates are necessary,
they can be incorporated into the appropriate files using a convenient editor.

Once any of the system source files have been  updated,  it  is  necessary  to
rebuild  the  equivalent fast loading modules in order to utilize the changes.
The following job will achieve this:

    .r reduce 140 (or "reduce" under TOPS-20)

    REDUCE 3.0, 15-Apr-83 ...

    *core 70;   (TOPS-20 only)

    *symbolic;

    *faslout <filename>;

    <system message>

    *in "<filename>.red"$

    *faslend;

where <filename> is the name of the source file (eg, alg1).

A MIC script is also available for this purpose. This is called as follows:

    do mkfas1 <filename>  (TOPS-10)
or
    do mkfas2 <filename>  (TOPS-20).

If the modules ALG1, ALG2, ENTRY, FEND, FISL, REND, REND2 or RLISP  have  been
changed, then the REDUCE execute file must be rebuilt (see the section "Assem-
bly of REDUCE").  Since all other modules are loaded  on  demand,  one  simply
needs  to  ensure that the updated FASL files are on the appropriate directory
to complete the update.


9.  _P_R_O_G_R_A_M__R_E_G_I_S_T_R_A_T_I_O_N

After installing REDUCE, fill out the accompanying registration form and  send
to:

                             Dr. Anthony C.Hearn
                             The Rand Corporation
                               1700 Main Street
                            Santa Monica, CA 90406

                          Telephone (213) 393-0411.

This should be done so that you can be advised direct of any changes which are
made  to  the  system.   Persons receiving  REDUCE from sources other than the

REDUCE Installation Guide for DECSYSTEMS 10 and 20                      Page 7


Rand Corporation are particularly requested to  follow  this  procedure.   The
test  time requested on the registration form is the time printed by the final
call of SHOWTIME in the output from the test described in the section "Testing
REDUCE".


10.  _I_N_Q_U_I_R_I_E_S__A_N_D__R_E_P_O_R_T_I_N_G__O_F__E_R_R_O_R_S

Any  enquiries regarding the assembly or operation of REDUCE  should  also  be
directed  to  the  above address. Suspected errors should  be  accompanied  by
the relevant job output and a copy of the input source.

                         REDUCE REGISTRATION FORM


After installing REDUCE, please fill out this form and send to the address
listed at the bottom.  This should be done so that you can be advised direct
of any changes made to the system.  Persons receiving REDUCE from sources
other than the Rand Corporation are particularly requested to follow this
procedure.

  Contact Person ______________________________________________ Date__________

  Title          ______________________________________________

  Organization   ______________________________________________

  Address        ______________________________________________

  City, State    ______________________________________________ Zip___________

  Telephone      ______________________________________________ Ext___________

  Network Address______________________________________________
     (ARPANET, CSNET or UUCP, if available)


COMPUTER DESCRIPTION

  Vendor ___________   Model _____________  Operating System _________________

  Equivalent, if not DECSYSTEM, IBM or VAX ___________________________________


TIMING

Please indicate the test time as printed by the final call of SHOWTIME in the
output from the installation test described in the section "Testing REDUCE",
of the REDUCE Installation Guide.  Also give the total system time, region
(virtual) and real system memory available, if known and applicable.


  Time ___________   Total System Time ___________  Region ___________

  Real System Memory ___________


Please also write on the back of this form any comments you may have about the
installation procedure, and system documentation and performance.

If  you  would  like  to  be  listed  in a published registry of REDUCE system
holders,  please check here  ___.

Mail this completed form to:

                             Dr. Anthony C. Hearn
                             The Rand Corporation
                               1700 Main Street
                            Santa Monica, CA 90406

