;;; -*- Mode: LISP -*-



	     Installation Guide for Common Lisp Maxima
		     on the 3600's

                    William F. Schelter          



	          Making Maxima (Cl-maxima)

---> Note this is now largely obsolete.  You should follow the
     instructions for the explorer.--wfs



    A listing for the tape is enclosed.  Because of various incompatible
bin types, we are sending the sources only.  You will have to do a

      (make-system 'cl-maxima ':batch :compile) ;ti
      (compile-system 'cl-maxima :batch t)  ;symbolics

which will probably take about two hours.  It is advised that you then
experiment with the world, making sure it is ok.  Then boot the machine
in a fresh world in which you wish to save with MAXIMA and do

      (make-system 'cl-maxima :batch) ;ti
      (load-system 'cl-maxima :batch) ;symbolic
 	
    This will take about one half hour.  Then do a 

       (si:full-gc)
(NOTE: We used to use  (si:full-gc :gc-compiled-functions t)
	because this did a good deal more compaction of the code
	but symbolics no longer supports its use.  If you do 
        use it make sure you do (fs:close-all-files) first.)
    
   Then do

      (disk-save NAME-OF-FILE)

    But before you do any make-systems  you have to load the tape!




	   Loading the Tape




   Before loading the tape you should define three logical hosts
(you could do it as you go along, but you should create the following
files sometimes, so why not now?)

 	Cl-maxima-source,Cl-maxima-object,Cl-maxima-patch, 
and maxima-documentation

This should be done by making three files 

	sys:site;cl-maxima-source.translations
	sys:site;cl-maxima-object.translations
	sys:site;cl-maxima-patch.translations
	sys:site;maxima-documentation.translations

Notes on selection of physical hosts:

We have included samples of the files at University of Texas.  These
files contain conditionals, so that the bins for release 6 and release 5
are kept separate.  The main body of sources go into
Cl-maxima-source:maxima;*.* (roughly 2000 pages) and the main object code
into Cl-maxima-object:maxima;*.* (roughly 1000 pages) and most
documentation into cl-maxima-source:documentation;*.* (a few hundred
pages).  Patches will reside in "cl-maxima-patch:patch;*.*" and the
Cl-maxima-patch host needs to support the possibility of easily creating
lots of subdirectories to this Patch directory so a lisp machine is
good.  We have utilized a tops-20 machine for the documentation program,
but believe our indexing program should work on most hosts.  It does depend
on being able to set-pointer in files, which works across a chaos net
but not on TCP.

	sys:site;cl-maxima-source.translations 
 
Sample:
;;; -*- Package: FILE-SYSTEM; Mode: LISP -*-
(fs:set-logical-pathname-host
  "Cl-maxima-source" ':physical-host "mcc"
  ':translations '(  ("cl-maxima-source:maxima;*.*" "mcc:aux:<ai.schelter.macsyma>*.*")
   		   ("cl-maxima-source:documentation;*.*" "mcc:ps:<ai.schelter>*.*" )
                   ("cl-maxima-source:demo;*.*" "mcc:ps:<macsym.lsp-temp>*.*")
		   ("cl-maxima-source:share;*.*" "mcc:ps:<ai.schelter.lmmax>*.*")))
(fs:set-logical-pathname-host "maxima-documentation"
			      :physical-host "luna"
			      :translations '(("maxima;" "Mcc:ps:<ai.schelter>*.*")))



	sys:site;cl-maxima-object.translations

;;; -*- Package: FILE-SYSTEM; Mode: LISP -*-

(fs:set-logical-pathname-host
	 "Cl-maxima-object" ':physical-host "luna"
	 ':translations '(("cl-maxima-object:maxima;*.*" "luna:>maxima>cl-object>*.*")
			  ("cl-maxima-object:maxima;patch;*.*" "luna:>maxima>cl-object>patch>*.*")
;			  ("cl-maxima-object:Patch;*.*" "luna:>maxima>cl-patch>*.*")
			  ("cl-maxima-object:share;*.*" "luna:>maxima>cl-object>*.*")))





	sys:site;cl-maxima-patch.translations
;;; -*- Package: FILE-SYSTEM; Mode: LISP -*-
(fs:set-logical-pathname-host
	 "Cl-maxima-patch" ':physical-host "luna"
	 ':translations '(("cl-maxima-patch:object;*.*" "luna:>maxima>cl-object>*.*")
			  ("cl-maxima-patch:Patch;*.*" "luna:>maxima>cl-patch>*.*")
			  ("cl-maxima-patch:share;*.*" "luna:>maxima>share>*.*")))



;;the new describe code refers to the host
	"maxima-documentation:maxima;*.*"
but the symbolics tape was dumped with the relevant stuff
going to "cl-maxima-source:documentation;*.*"
so for describe to work you will 
have to give "maxima-documentation:maxima;" the same translation
you gave to "cl-maxima-source:documentation;*.*" above.

  In addition there should be a site file which contains the following
information



        sys:site;cl-maxima.system
Sample

;;; -*- Package: FILE-SYSTEM; Mode: LISP -*-
;;; -*- Mode: LISP -*-
(fs:make-logical-pathname-host "cl-Maxima-source")
(fs:make-logical-pathname-host "cl-Maxima-object")
(fs:make-logical-pathname-host "cl-maxima-patch")
(si:set-system-source-file "cl-Maxima" "cl-Maxima-source: Maxima;cl-maxima-sysdef")


    
   When the above files are in place a reference to the system CL-MAXIMA,
such as by MAKE-SYSTEM should result in the reading of

			 sys:site;cl-maxima.system 

and consequently in the logical host definitions.  Before loading the
system the above four files should be evaluated, so that the machine
knows where to put the files it reads off the tape.

   Now that you have defined the three logical hosts you are finally 
ready to do

		      (tape:carry-load)

   After you have read in all the files, and established the four files above,
you may proceed with the section entitled Making Cl-maxima.



				 Notice
 
   The enhancements and changes in this material are made available to
you in the hope that they will be useful, but neither William Schelter
the University of Texas, nor the National software Center assumes any
responsibility for any problems, or damage that arise from its use.