$Id: README,v 1.69 2010/05/19 04:46:27 phil Exp $

1.3 release of ``The Macro Implementation of SNOBOL4 in C'' (CSNOBOL4)

This is a free port of the original SIL (SNOBOL4 Implementation
Language) "macro" version of SNOBOL4 (developed at Bell Labs) with the
`C' language as a target.

SNOBOL4, while known primarily as a string language excels at any task
involving symbolic manipulations.  It provides run time typing,
garbage collection, user data types, on the fly compilation.  It's
primary weakness is it's simple syntax, and lack of "structured
programming" and "object oriented" constructs.

However some consider the spareness of SNOBOL4 syntax a strength when
compared to some "modern" agglomerations such as Perl.

The latest release can be found at http://www.snobol4.org

****************************************************************

Copyright (c) 1993-2010, Philip L. Budne
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:

Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.

Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

****************************************************************

Documentation;

For a good SNOBOL4 tutorial look at the Catspaw SNOBOL4 tutorial;
    http://www.snobol4.org/doc/burks/tutorial/contents.htm

Also useful are the Catspaw Vanilla SNOBOL4 manual;
    http://www.snobol4.org/doc/burks/manual/contents.htm

and the Catspaw SPITBOL manual
    ftp://ftp.snobol4.com/spitman.pdf

INSTALL
	Information on building and installing CSNOBOL4

README
	This file

CHANGES
	Important changes since last release

doc/load.txt
	Information on dynamicly loading code into SNOBOL4
	(also installed in /usr/local/lib/snobol4/)

doc/snobol4.1
	man page for snobol4.
	describes changes from the SNOBOL4 reference ("green book").

doc/snobol4.0
	text formatted output of snobol4 man page

doc/snobol4.html
	WWW HyperText formatted output of snobol4.1

doc/snobol4.ps
	PostScript formatted output of snobol4.1

doc/snolib.3
	man page for SNOBOL4 library routines

doc/snolib.0
	text formatted output of snolib.3 man page

doc/snolib.html
	WWW HyperText formatted output of snolib.3

doc/snolib.ps
	PostScript formatted output of snolib.3

doc/snobol4dbm.3
	man page for SNOBOL4 DBM library routines

doc/snobol4dbm.0
	text formatted output of snobol4dbm.3 man page

doc/snobol4dbm.html
	WWW HyperText formatted output of snobol4dbm.3

doc/snobol4dbm.ps
	PostScript formatted output of snobol4dbm.3

doc/snobol4tcl.3
	man page for SNOBOL4 TCL library routines

doc/snobol4tcl.0
	text formatted output of snobol4tcl.3 man page

doc/snobol4tcl.html
	WWW HyperText formatted output of snobol4tcl.3

doc/snobol4dbm.ps
	PostScript formatted output of snobol4dbm.3

doc/porting.txt
	information on porting to a new system,
	particularly the usage of Makefile variables and m4 macros.

doc/porting.ps
	porting information in PostScript.

doc/porting.html
	porting information in HTML.

TODO.soon
	current top priority tasks (hopefully small in any release)

TODO
	older identified tasks / wish list.

Mark Emmer has made his old 16-bit DOS Macro SNOBOL4 based product
"SNOBOL4+" available for free.  See http://www.snobol4.com and
ftp://ftp.snobol4.com for it, many demo programs, SNOBOL4 language
documentation, and ordering information for books & products from
Catspaw!

Mark Emmer also runs a SNOBOL4 mailing list;

To join the list, send a mail message to "listserv@mercury.dsu.edu"
with the line "subscribe SNOBOL4 Your Name" as the message body.
"Your Name" should be your real name (your e-mail address will be used
automatically for the subscription).

Submissions to the list may be sent to "SNOBOL4@mercury.dsu.edu".

To be removed from the list, send the message "unsubscribe SNOBOL4" to
"listserv@mercury.dsu.edu".

For more information see http://www.snobol4.com/listserv.htm

Acknowledgments;

	First and foremost, I would like to thank Ralph Griswold, for
	all his invaluable help and time digging up old documentation!
	(as well as his work of 30 years ago, designing and
	implementing the language)!

	I would also never have succeeded without the help of Mark
	Emmer of Catspaw and his excellent SPARC SPITBOL product!!

	The contributions of source code by Mark Emmer (SNOBOL4+) and
	Viktors Berstis (Minnesota SNOBOL4) have allowed me to advance
	the state of CSNOBOL4 in ways that would have been otherwise
	impossible.

The following have also provided help, encouragement, support, input,
historical background, testing, fixes, money, etc (in chronological order);

	Bill Henneman
	Andrew Koenig
	Doug McIlroy
	Robert Dewar
	Alan Martin
	Jerry Leichter
	Scott Marovich
	Jonathan Chandross
	Randolph J. Herber
	Jules Gilbert
	Phillip Lee Thomas
	Martin D. Waller
	Burkhard Meissner
	John McHugh
	Chrystopher Nehaniv
	Arne Larsson
	Rik Faith
	Keith Waclena
	Steve Kibler
	Peter-Arno Coppen
	David J. Birnbaum
	Yuli Barcohen
	Stephen Del Rea
	David Feustel
	L. Gene Battin
	John Refling
	Greg White
	Russ Urquhart
	Jan Bernard
	Chris Anderson
	Rafal M. Sulejman
	Ed Quillen
	Robin H. Johnson
	Guido Milanese
	David Stodolsky
	Robin Kay
	Sudarshan Gaikaiwari
	Bruce Axtens
	Laurence Battin
	Dani Richard

If you make any changes/fixes/improvements, or port it to a new
system, please send them to me (please include "timing.out" and tell
me the system type, CPU clock speed, C compiler & version)!!

If you are interested in getting mailings about new releases, send me
a timing report.  I'm always interested in knowing what people are
using SNOBOL4 for!

Phil Budne <phil@ultimate.com>
