home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ARM Club 3
/
TheARMClub_PDCD3.iso
/
hensa
/
programming
/
a138_1
/
ReadMe!
< prev
Wrap
Text File
|
1992-04-28
|
6KB
|
127 lines
ReadMe! - file for Xscheme 0.28 with Frontend 0.11
==================================================
This package contains:
- !Xscheme - the application
- Makefile, c, h, o: the sources and directories necessary for
building !Xscheme.!Runimage
- doc - a directory containing documentation on the language
- scm - a directory containing scheme source files.
- wks - a directory containing xscheme workspace files.
Requirements:
=============
Xscheme was built with C Rel. 4, this allows it to have an initially small
wimpslot, which increases with use. This also means that it requires a CLib
with a version number greater than or equal to 3.75. You also need the FPE
2.80 for Xscheme to run.
The Application:
================
This version of Xscheme comes bundled as an application with the following
features:
- fully-multitasking desktop frontend with a simple terminal-emulation.
- a path for resource loading, and one for the current directory, thus
being csd-independent.
- suffixes 'scm' and 'wks' are translated to prefixes for the file- names, allowing you to type "bla.scm", instead of "scm.bla", if you
mean "bla.scm". Of course, you can also type "scm.bla"...
- an application sprite designed by mcg@waikato.ac.nz (Martin C.
Glanvill)
This version of Xscheme differs in some ways from the original distribution,
namely:
- 'scm' is used as a scheme-source-file suffix instead of 's', because
's' is already taken for assembler source code.
- Original Xscheme looks for a file named "xscheme.ini" on startup.
This version looks for "xs_init.scm", which is the same file with
an other name.
Apart from this, it should be fully compatible.
Xscheme uses two environment variables, one for a path to find its resources,
and the other one provides a working directory for xscheme. These are named
Xscheme$ResDir and Xscheme$WorkDir, and are set in the !Run file. You may
alter Xscheme$WorkDir any time you please to point to a place where you want
your current working directory to be, but you must terminate it with a dot!
From scheme, use
(system "set Xscheme$WorkDir scsi::urmel.$.new.work.dir.")
You can not alter the Path to the resources once Xscheme is running. In fact,
this is an installation issue. Xscheme$ResDir points to a directory containing
scheme source files that are needed by other programs, and xs_init.scm . You
can leave this as well untouched, then the resources reside inside the !xscheme
application directory.
Note the following when working with Xscheme:
- the escape key always brings you to the toplevel read-eval loop.
- selecting quit from the menu, or clicking the close button on the
window immediately terminates the Xscheme application without any
security checks. I might add one later.
The terminal-emulation provides the following facilities:
CHR 12 clears the terminal screen.
CHR 8 does a backspace
CHR 127 also does a backspace.
CHR 9 moves the cursor up 1 line
CHR 11 moves the cursor to the next char
CHR 10 performs a newline, that is CR/NL
CHR 13 does a carriage return.
CHR 30 homes the cursor
CHR 31 moves the cursor. This one takes 2 parameters, x and y, both
starting from 0, so the syntax is actually CHR(30)CHR(x)CHR(y)
The scm directory:
==================
This directory does at the moment only contain two files, namely:
- bench: a simple benchmark using fibonacci numbers,
- tools: the example program from the OO-Primer document in 'doc'
There are more scheme files in !xscheme.scm, these are resource files.
A neat trick ;-)
================
You may notice, that, on startup, for some seconds nothing happens, before
the prompt appears. This is because xscheme loads and compiles xs_init.scm
from disc, which in turn loads macros.scm and qquotes.scm. You can speed up
the startup process enormously by doing the following: start xscheme, and
immediately after startup, type (save "xscheme.wks"). From now on, the initial
workspace, which is stored in xscheme.wks is loaded at startup instead of
xs_init.scm. As the startup code is already compiled in this workspace, this
is naturally much faster.
The doc directory:
==================
This one contains three files. The one called 'betz' is a message from
D.M.Betz, the author of Xscheme, stating his new address. The one called
xscheme is the original xscheme documentation as supplied by D.M.Betz, and
the OO-Primer is a document intended to give an introduction to the
OO-extensions of xscheme. Additional lecture would be: "The revised^3 report
on the programming language scheme", which is available from the scheme
repository (see below), and the book "The scheme programming language"
by R.Kent Dybvig, which also covers R3RS scheme.
Rebuilding the application:
===========================
Set C$Path acording to your environment, then just type 'amu install',
this should do the trick. But remember to keep a copy of the initial image
as it came with this distribution, you never know... I have not built Xscheme
with a C compiler before release 4, but I think it should work at least with
CR3. But remember that if you compile Xscheme with a pre-4 C compiler, you
must increase the initial wimpslot, because they do not have a wimpslot-
increasing malloc.
More scheme, new releases:
==========================
You can get lots of scheme stuff from the scheme repository at
nexus.yorku.ca via anon-ftp. You can also get the R3RS there (at least I
hope so, it is somewhat outdated by the R4RS...) If you can not get the R3RS,
I might send it out to you in TeX-format.
Comments & suggestions:
=======================
If you have any, feel free to contact me. My Email adress is:
gunnar@fasel.hotb.sub.org
have fun!
Gunnar