home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Shareware Overload
/
ShartewareOverload.cdr
/
windows
/
winlisp.zip
/
READ.ME
< prev
next >
Wrap
Text File
|
1989-09-22
|
10KB
|
240 lines
=============================================================
WINLISP (wl.exe) - A shareware Lisp interpreter under Windows
DOSLISP (dl.exe) - A shareware Lisp interpreter under MS-DOS
=============================================================
WinLisp and DosLisp installation.
---------------------------------
To install WinLisp and DosLisp, follow the steps :
1) copy your original floppy disk into a directory of your hard disk.
Use xcopy in order to copy the lisplib subdirectory, or copy it via
another command.
2) add in your "autoexec.bat" file the following lines :
SET LISPLIB = path_of_the_winlisp_directory\LISPLIB
SET LISPHOME = path_of_the_winlisp_directory
example :
SET LISPLIB = c:\wl\lisplib
SET LISPHOME = c:\wl
If you get the message "out of environnement space" and are running
MS-DOS 3.3 or more, try adding in your config.sys the line :
device=c:\dos\command.com /P/E:800
if your "command.com" is located in the "\dos" directory.
3) optionally, for WinLisp only, you may add the following option in the
[extension] section of the Windows win.ini file, so you will be able
to start WinLisp by double clicking on a file having the .wl
extension.
wl=wl.exe ^.wl
to use this feature, the WinLisp directory should be mentionned in
your path.
===============
= WINLISP =
===============
What is WINLISP.
----------------
I tried to produce a simple, robust, reasonably fast and ergonomic
interpreter, which would be ideally suited to learning lisp or
experimentating with it. I truly believe that lisp is one of the most
elegant and easiest language to learn, and that it has a reputation of
complexity because of the sheer number of functions from which it
derives its power. In order for beginners to tame this power, they
should be able to learn gradually, starting from a reduced function set,
and assimilating more as they need them. This process is much
facilitated if they have the function definitions available just a
mouseclick away. For that purpose, WinLisp has full on-line help,
indexed both by keywords (function names) and by topics. WinLisp
functions mostly match those of the Le_Lisp system [1], and are quite
consistant with upstream interpretated lisps.
How to use it.
--------------
WinLisp runs in the Microsoft Windows environnement, version 2.0 or
higher. After starting WinLisp, as you start any Windows application,
appears an editor window where you may enter lisp code, evaluate it, and
save it into a file for later usage. Right from that editor window, you
may get immediate help about any WinLisp function. There are three way
to ask for help :
1- click on the by keyword entry of the help menu. A dialog box appears,
listing all the functions and variables predefined in WinLisp. Just
double-click on one entry to display the relevant help text.
2- select a function in the editor windows, and then click on an entry
of the help menu (or hit F1). The relevant help text is immediately
displayed.
3- click on the by topic entry of the help menu. A dialog box appears,
showing the table of contents of WinLisp reference manual. Just
double-click on one entry to get a box listing all the functions and
variables defined in this chapter. This can be very useful to find,
for example, all functions acting on symbols. You may then display
the relevant help text by double-clicking on one entry.
When a help text is displayed, you may :
1- request additional help by selecting a keyword and clicking on the
"help" menu (or hitting F1).
2- evaluate an example (or any expression you enter) by selecting it and
clicking on the mouse right button. The evaluation result is
displayed as selected (reverse video) text.
3- close the help window by clicking on the "close" menu (or hitting the
"Esc" key).
Apart from getting instant help, you may also enter lisp code in the
editor window, and evaluate it. The editor is straightforward, enabling
to use classic Windows techniques such as cut and paste. It features
some lisp specific aids, such as hilighting the matching open
parenthesis when you close one, and also selecting the complete
expression when you select a parenthesis and click on the right mouse
button. Clicking again on the right mouse button causes the expression
to be evaluated.
Selected expression can be also evaluated by using the eval menu. The
show it entry displays the evaluation result as selected text, while the
do it entry only evaluates the selection without displaying the result.
You can open as many editor windows as you like by using the new window
entry of the system menu.
The future :
------------
I intend to make many developpements to WinLisp in the near future.
Among them are :
* a debugger.
* support of large integers (BIGNUMS).
* developpement of a version for OS2/Windows Presentation Manager.
* an object-oriented interface for building window-oriented
applications. Ideally, the interface would be identical for the
Windows and the WPM version.
===============
= DOSLISP =
===============
What is DOSLISP.
----------------
DosLisp (dl.exe) is a version of WinLisp running under the bare MS-DOS.
It supports exactly the same functions with the same interface, except
for the Windows specific ones, which are for now :
"wait", "time", "prompt", "promptstring".
However, it is easy to interact directly with the user by asking him
questions using "print" and getting answers via "read". As DosLisp uses
only about 255K, much more memory is available (typically 300 to 350
Kbytes) than under WinLisp, allowing much larger programs to be run.
Also, you may use your favorite editor for editing DosLisp programs with
the "!" macro-character allowing access to DOS (for example, the command
"!ed foo.wl" would start the editor called "ed" on program "foo.wl".
After beeing edited, this program will have to be reloaded in DosLisp by
the "loadfile" function, or by using the macro-character Control-L (as
in "^Lfoo" which would load the file "foo.wl").
Here are some specificities of DosLisp, not available in WinLisp :
* You may get the functions documentation on-line by using the
"apropos" function. Try for example (apropos 'let).
* If you enter an argument to the "dl" command, the corresponding file
will be read before entering the toplevel. You may for example
tailor the system in a file "myenv.wl" and start DosLisp with the
command "dl myenv".
* DosLisp reads from the standard input and prints to the standard
output, which may both be redirected to disk files. As DosLisp is
terminated upon the end of file in a toplevel read, it may be used
to create filters. example :
dir | dl <myfilter.wl | more
====================
= MISCELLANOUS =
====================
OOPL
----
OOPL is an object oriented layer, different from the standard one of
WinLisp/DosLisp. It has also been written by Hussein Shafie, and follows
the ObjVLisp model (P. COINTE OOPSLA '87 proceedings) minus the multi-
inheritance feature.
Its usage is not documented, but I believe that its simplicity and power
will interest some of you out there. A complete parser has been written
using this model, and is also included. All files relevant to OOPL are
in the "oopl" subdirectory.
doctor
------
I did port to DosLisp the "doctor" program, derived from the "elisa"
program of Joseph Weizenbaum, which tries to enbody a psychiatrist
talking to you. To activate it, just call the function :
(doctor)
inside of DosLisp.
How you can get these programs.
-------------------------------
As these programs are distributed as shareware, you can freely copy them
and give copies to your friends, provided you don't do it for
commercial reasons. It is strictly forbidden to sell these programs for
any price, even if packaged with other software, or to modify them.
However, they may be distributed via free bulletin board services or
other downloading facilities, and I will post them on the most important
ones. If you find these programs useful, you may reward my effort and
contribute to their further developpement by sending me $20. Feel free
anyway to post me any remarks, suggestions, lisp programs and (possibly)
bug reports. I will be glad to hear from you. My address is :
Stephan Popovitch
26, rue du champ d'avoine
78180, Montigny-le-Bretonneux
FRANCE
I wish you a lot of fun using WinLisp, hopefully as much as I had
writing it.
===========================================================================
end of file "read.me".
===========================================================================