home *** CD-ROM | disk | FTP | other *** search
/ Frozen Fish 1: Amiga / FrozenFish-Apr94.iso / bbs / alib / d5xx / d558 / scheme2c.lha / Scheme2C / README next >
Text File  |  1991-10-28  |  5KB  |  151 lines

  1. Overview of the DEC Scheme->C Compiler.
  2.  
  3. ;*              Copyright 1989 Digital Equipment Corporation
  4. ;*                         All Rights Reserved
  5. ;*
  6. ;* Permission to use, copy, and modify this software and its documentation is
  7. ;* hereby granted only under the following terms and conditions.  Both the
  8. ;* above copyright notice and this permission notice must appear in all copies
  9. ;* of the software, derivative works or modified versions, and any portions
  10. ;* thereof, and both notices must appear in supporting documentation.
  11. ;*
  12. ;* Users of this software agree to the terms and conditions set forth herein,
  13. ;* and hereby grant back to Digital a non-exclusive, unrestricted, royalty-free
  14. ;* right and license under any changes, enhancements or extensions made to the
  15. ;* core functions of the software, including but not limited to those affording
  16. ;* compatibility with other hardware or software environments, but excluding
  17. ;* applications which incorporate this software.  Users further agree to use
  18. ;* their best efforts to return to Digital any such changes, enhancements or
  19. ;* extensions that they make and inform Digital of noteworthy uses of this
  20. ;* software.  Correspondence should be provided to Digital at:
  21. ;* 
  22. ;*                       Director of Licensing
  23. ;*                       Western Research Laboratory
  24. ;*                       Digital Equipment Corporation
  25. ;*                       100 Hamilton Avenue
  26. ;*                       Palo Alto, California  94301  
  27. ;* 
  28. ;* This software may be distributed (but not offered for sale or transferred
  29. ;* for compensation) to third parties, provided such third parties agree to
  30. ;* abide by the terms and conditions of this notice.  
  31. ;* 
  32. ;* THE SOFTWARE IS PROVIDED "AS IS" AND DIGITAL EQUIPMENT CORP. DISCLAIMS ALL
  33. ;* WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF
  34. ;* MERCHANTABILITY AND FITNESS.   IN NO EVENT SHALL DIGITAL EQUIPMENT
  35. ;* CORPORATION BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
  36. ;* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
  37. ;* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
  38. ;* ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
  39. ;* SOFTWARE.
  40.  
  41. This is the root directory for the Scheme-to-C compiler which was done at
  42. Digital Equipment Corporation's Western Research Laboratory.  The compiler
  43. distribution consists of several directories:
  44.  
  45.     doc    contains documentation:
  46.  
  47.         index.mss    a Scribe reference document for the language
  48.                 which is in the form of an annoted index to
  49.                 the Revised**3 Scheme standard.
  50.  
  51.         index.psf    Postscript for index.mss.
  52.  
  53.         intro.mss    a Scribe document introducing Scheme->C.
  54.  
  55.         intro.psf    Postscript for intro.mss.
  56.  
  57.         scc.l        UNIX man page for the Scheme->C compiler.
  58.  
  59.         sci.l        UNIX man page for the Scheme->C interpreter.
  60.  
  61.     gnuemacs    contains emacs lisp code    
  62.  
  63.     scrt    contains the runtime system.
  64.  
  65.     scsc    contains the compiler.
  66.  
  67.     test    contains compiler and runtime test programs.
  68.  
  69.     cdecl    a C declaration compiler written in Scheme.
  70.  
  71.     xlib    X11 Xlib stubs for Scheme->C.
  72.  
  73. In order to install the compiler and interpreter on a system, the following
  74. steps must be done.
  75.  
  76. 1.  Verify that this directory contains the previously mentioned directories.
  77.  
  78. 2.  Edit the makefile in this directory so that the directory definitions
  79.     at the head of the file are correct for your installation:
  80.  
  81.     SRCDIR    full name of this directory
  82.  
  83.     MIPSDIR    full name of the directory that should be used to build
  84.         Scheme->C for a DECstation 3100.
  85.  
  86.     VAXDIR    full name of the directory that should be used to build
  87.         Scheme->C for a VAX.
  88.  
  89.     The other definitions need not be changed.
  90.  
  91. 2.  Create directories for a specific processor.  For a VAX this is done
  92.     by:
  93.  
  94.     1 >make forVAX
  95.  
  96.     and for a DECstation 3100, this is done by:
  97.  
  98.     1 >make forMIPS
  99.  
  100. 3.  Build Scheme->C for a specific processor.  For a VAX this is done
  101.     by:
  102.  
  103.     2 >cd VAXDIR     (defined in step 2)
  104.     3 >make port
  105.  
  106.     and for a DECstation 3100, this is done by:
  107.  
  108.     2 >cd MIPSDIR    (defined in step 2)
  109.     3 >make port
  110.  
  111.     N.B.  During the compilation of scrt/signal.c on DECstations, you may get
  112.     the warning: "cpp: warning /usr/include/mips/cpu.h:504: CONS redefined".
  113.     This warning can be ignored.
  114.  
  115. 4.  Verify that the interpreter and compiler were correctly built:
  116.  
  117.     4 >cd test
  118.     5 >../scrt/sci
  119.     SCHEME->C -- ...
  120.     > (load "test51.sc")
  121.     MODULE form ignored
  122.     TEST51
  123.     "test51.sc"
  124.     >  (test51 '())
  125.     Hello world!
  126.     #F
  127.     > ^D
  128.     6 >make test51
  129.     ../scsc/sccomp -schf ../scsc/sccomp.heap -C test51.sc
  130.     test51.sc:
  131.     ../scsc/sccomp -schf ../scsc/sccomp.heap -c -g test51.c
  132.     cc -o test51 -g test51.o ../scrt/libsc.a -lm
  133.     7 >test51
  134.     Hello world!
  135.  
  136. 5.  Install the libraries, compiler, and interpreter in some directory
  137.     such as ~/bin:
  138.  
  139.     8 >cd ..
  140.     9 >make "destdir = /udir/`whoami`/bin" install-private
  141.     10 >rehash
  142.  
  143.     Given that this directory in the current search path, the compiler can
  144.     now be accessed by "scc" and the interpreter by "sci".  
  145.  
  146.     N.B. Users of DECstations will see two or three sequences of error messages
  147.     ending with "*** Error code 1 (ignored)."  These errors may be ignored.
  148.  
  149. 6.  At this point, the source in cdecl and xlib can now be compiled as
  150.     desired.
  151.