home *** CD-ROM | disk | FTP | other *** search
/ ARM Club 3 / TheARMClub_PDCD3.iso / hensa / programming / a138_1 / ReadMe! < prev   
Text File  |  1992-04-28  |  6KB  |  127 lines

  1. ReadMe! - file for Xscheme 0.28 with Frontend 0.11
  2. ==================================================
  3.  
  4. This package contains:
  5.  
  6.         - !Xscheme - the application
  7.         - Makefile, c, h, o: the sources and directories necessary for
  8.           building !Xscheme.!Runimage
  9.         - doc - a directory containing documentation on the language
  10.         - scm - a directory containing scheme source files.
  11.         - wks - a directory containing xscheme workspace files.
  12.  
  13. Requirements:
  14. =============
  15.   Xscheme was built with C Rel. 4, this allows it to have an initially small
  16. wimpslot, which increases with use. This also means that it requires a CLib
  17. with a version number greater than or equal to 3.75. You also need the FPE
  18. 2.80 for Xscheme to run.
  19.  
  20. The Application:
  21. ================
  22.   This version of Xscheme comes bundled as an application with the following
  23. features:
  24.  
  25.         - fully-multitasking desktop frontend with a simple terminal-emulation.
  26.         - a path for resource loading, and one for the current directory, thus
  27.           being csd-independent.
  28.         - suffixes 'scm' and 'wks' are translated to prefixes for the file-               names, allowing you to type "bla.scm", instead of "scm.bla", if you
  29.           mean "bla.scm". Of course, you can also type "scm.bla"...
  30.         - an application sprite designed by mcg@waikato.ac.nz (Martin C.
  31.           Glanvill)
  32.  
  33. This version of Xscheme differs in some ways from the original distribution,
  34. namely: 
  35.         - 'scm' is used as a scheme-source-file suffix instead of 's', because
  36.           's' is already taken for assembler source code. 
  37.         - Original Xscheme looks for a file named "xscheme.ini" on startup.
  38.           This version looks for "xs_init.scm", which is the same file with
  39.           an other name.
  40.  
  41. Apart from this, it should be fully compatible.
  42.  
  43.   Xscheme uses two environment variables, one for a path to find its resources,
  44. and the other one provides a working directory for xscheme. These are named
  45. Xscheme$ResDir and Xscheme$WorkDir, and are set in the !Run file. You may
  46. alter Xscheme$WorkDir any time you please to point to a place where you want
  47. your current working directory to be, but you must terminate it with a dot!
  48. From scheme, use 
  49.         (system "set Xscheme$WorkDir scsi::urmel.$.new.work.dir.")
  50. You can not alter the Path to the resources once Xscheme is running. In fact,
  51. this is an installation issue. Xscheme$ResDir points to a directory containing
  52. scheme source files that are needed by other programs, and xs_init.scm . You
  53. can leave this as well untouched, then the resources reside inside the !xscheme
  54. application directory.
  55.   Note the following when working with Xscheme:
  56.         - the escape key always brings you to the toplevel read-eval loop.
  57.         - selecting quit from the menu, or clicking the close button on the
  58.           window immediately terminates the Xscheme application without any
  59.           security checks. I might add one later.
  60.  
  61.   The terminal-emulation provides the following facilities:
  62.         CHR 12  clears the terminal screen.
  63.         CHR 8   does a backspace
  64.         CHR 127 also does a backspace.
  65.         CHR 9   moves the cursor up 1 line
  66.         CHR 11  moves the cursor to the next char
  67.         CHR 10  performs a newline, that is CR/NL
  68.         CHR 13  does a carriage return.
  69.         CHR 30  homes the cursor
  70.         CHR 31  moves the cursor. This one takes 2 parameters, x and y, both
  71.                 starting from 0, so the syntax is actually CHR(30)CHR(x)CHR(y)
  72.  
  73. The scm directory:
  74. ==================
  75.   This directory does at the moment only contain two files, namely:
  76.         - bench: a simple benchmark using fibonacci numbers,
  77.         - tools: the example program from the OO-Primer document in 'doc'
  78. There are more scheme files in !xscheme.scm, these are resource files.
  79.  
  80. A neat trick ;-)
  81. ================
  82.   You may notice, that, on startup, for some seconds nothing happens, before
  83. the prompt appears. This is because xscheme loads and compiles xs_init.scm
  84. from disc, which in turn loads macros.scm and qquotes.scm. You can speed up
  85. the startup process enormously by doing the following: start xscheme, and
  86. immediately after startup, type (save "xscheme.wks"). From now on, the initial
  87. workspace, which is stored in xscheme.wks is loaded at startup instead of
  88. xs_init.scm. As the startup code is already compiled in this workspace, this
  89. is naturally much faster.
  90.  
  91. The doc directory:
  92. ==================
  93.   This one contains three files. The one called 'betz' is a message from
  94. D.M.Betz, the author of Xscheme, stating his new address. The one called
  95. xscheme is the original xscheme documentation as supplied by D.M.Betz, and
  96. the OO-Primer is a document intended to give an introduction to the
  97. OO-extensions of xscheme. Additional lecture would be: "The revised^3 report
  98. on the programming language scheme", which is available from the scheme
  99. repository (see below), and the book "The scheme programming language"
  100. by R.Kent Dybvig, which also covers R3RS scheme.
  101.  
  102. Rebuilding the application:
  103. ===========================
  104.   Set C$Path acording to your environment, then just type 'amu install',
  105. this should do the trick. But remember to keep a copy of the initial image
  106. as it came with this distribution, you never know... I have not built Xscheme
  107. with a C compiler before release 4, but I think it should work at least with
  108. CR3. But remember that if you compile Xscheme with a pre-4 C compiler, you
  109. must increase the initial wimpslot, because they do not have a wimpslot-
  110. increasing malloc.
  111.  
  112. More scheme, new releases:
  113. ==========================
  114.   You can get lots of scheme stuff from the scheme repository at
  115. nexus.yorku.ca via anon-ftp. You can also get the R3RS there (at least I
  116. hope so, it is somewhat outdated by the R4RS...) If you can not get the R3RS,
  117. I might send it out to you in TeX-format.
  118.  
  119. Comments & suggestions:
  120. =======================
  121.   If you have any, feel free to contact me. My Email adress is:
  122.                      gunnar@fasel.hotb.sub.org
  123.  
  124. have fun!
  125.  
  126. Gunnar
  127.