$Id: History,v 1.515 2012/01/22 18:51:03 phil Exp $

The Macro Implementation of SNOBOL4 in C (CSNOBOL4) history

**************** rerelease 1.4.1 (CVS tag REL_1_4_1bis)

1/22/2012:
	include/snotypes.h: flush uint_t (Solaris sys/types.h has uint_t)
	lib/generic/expops.c: flush uint_t; use unsigned INT_T
	
**************** release 1.4.1 (CVS tag REL_1_4_1)

1/19/2012:
	include/snotypes.h: add uint_t for expops.c
	lib/generic/expops.c: use uint_t fix Solaris Studio warning
	lib/snolib/ndbm.c: include stdlib for strtol()
	Makefile: add cpuid
	Makefile2.m4: have cpuid depend on cpuid.c, use CC
	cpuid.c: update for Solaris Studio,
		report compiler versions
	configure: check for finite() in ieeefp.h on Solaris
		use CFLAGS on size check
	include/macros.h: check for FINITE_IN_IEEEFP_H

1/18/2012:
	configure: cleanup/fix socket tests (again)
	README: add Anonymous

1/16/2012:
	configure: rework socket library tests for Solaris
		simplify socklen_t check
	Makefile: remove sdb in make clean
	.cvsignore: add version.h
	snolib/dynamic.c: use DSEP, add DYNAMIC.DEBUG variable

1/15/2012:
	configure: detect glibc on Ubuntu, set HAVE_GLIBC
	lib/snolib/time.c: test for HAVE_GLIBC, check datatypes, lengths
	test/random.{sno,ref}: show avg*100

1/11/2012:
	doc/sdb.1: add readline references
	CHANGES: update

1/10/2012:
	Makefile: add all, sdb
	Makefile2.m4: add all, ALL
		install sdb as sdb-VERS, snobol4-VERS
		have sdb use snobol4-VERS
		make symlinks to sdb, snobol4
	sdb.sh: add <VERS>
	test/random.{sno,ref}: test RANDOM()
	tests.in: add random.sno

1/9/2012:
	Makefile2.m4: make sdb depend on configure
	snolib/sdb.sno: fix readline test!
	configure: fix typo
	doc/sdb.1: can't break on END label
		fix bolding on "next"

1/7/2012:
	configure: try to fix tcl search on ubuntu; update to v1.4+
	doc/.cvsignore: add snobol4{random,tcl,time}.{0,html,ps,pdf}
	Makefile2.m4: install sdb.1

**************** release 1.4 (CVS tag REL_1_4)

1/6/2012:
	INSTALL, README: update for 1.4 release
	lib/snolib/readline.c: include stdlib.h for free()
	include/load.h: fix RETSTR_FREE() warning
	lib/auxil/bindresvport.c: fix VS10 warning
	doc/snobol4tcl.3: update date
	configure: fix gdbm support on cygwin, cleanup readline checks
		move LIBDIR under Tcl support
		update version to 1.4

**** tag REL_1_4_RC2

1/5/2012:
	load.h: add RETSTR_FREE() macro
	lib/snolib/random.c: add GCC pragma to disable -Wunused
	lib/snolib/readline.c: use RETSTR_FREE()
	configure: export CC and CFLAGS (if needed) for "check script
	Makefile2.m4: update timing.out advertisement

1/5/2012:
	configure: give error exit when MINGW detected to abort "make"
	config/win32/snobol4.vcxproj: add sleep.c
	lib/win32/sleep.c: fix includes for non-test compilation
	lib/generic/sleep.c: fix includes

1/4/2012:
	configure: look for nanosleep(); use posix/sleep.c; update to -rc2
	config/win32/{borland,mingw,ntmsvc}.mak: add sleep
	config/win32/config.h: add HAVE_SLEEP
	doc/snobol4time.3: document sleep failure return
	include/lib.h: sleepf() returns int
	lib/{bsd,generic,win32}/sleep.c: return value
	lib/posix/sleep.c (new): use nanosleep
	test/sleep.{sno,ref} (new): test sleep
	test/tests.in: add sleep.sno
	pml.h: removed RANDOM prototypes
	doc/snobol4.1: remove RANDOM function
	doc/snobol4random.3 (new): document RANDOM functions
	doc/snobol4readline.3 (new): document READLINE functions
	doc/Makefile: use implicit rules, add snobol4r{andom,eadline}
	snolib/random.sno (new): load RANDOM functions
	snolib/readline.sno (new): load READLINE functions
	Makefile2.m4: add snobol4{random,readline,time}.3
	lib/init.c: use %lu for sizes to avoid warnings (want %z)
	lib/snolib/time.c: fix features defines for Ubuntu 11.10 (glibc 2.13)

1/3/2012:
	config/check (new): do a test compile w/ include, code, libs
	configure: use config/check
		fix for COM libs on Windows 7 (thanks to Robert Shanley)
		add --without-com
		use db.h for dbm w/ DB_DBM_HSEARCH
		add checks for sleep.c
	snolib/readline.sno (new): readline prototypes
	snolib/sdb.sno: use readline.sno
	pml.h: removed readline prototypes
	lib/generic/execute.c: use NULL to keep gcc quiet
	Makefile2.m4: add SLEEP_C/sleep.o
	lib/snolib/time.c: use sleepf(real_t) for SLEEP()
	lib/bsd/sleep.c (new): implement sleepf using select
	lib/generic/sleep.c (new): implement sleepf using sleep
	lib/win32/sleep.c (new): implement sleepf using Sleep
	include/lib.h: add sleepf()
	doc/snobol4time.3: document SLEEP taking f.p. seconds
	timing: more release files

1/2/2012:
	configure: use LIBDIR in TCL_CONF_DIRS instead of /usr/lib
		detect MINGW
		uname cleanup
	lib/win32/sys.c: Add a cast, arm architecture
	cpuid.c: fix MSC defines

1/1/2012:
	snolib/sdb.sno: update copyright notice
	configure: flush ALTLIBDIR
	lib/snolib/time.c: cleanup: enums, error checks/returns
	lib/snolib/readline.c: fix warning
	lib/win32/sys.c: Add Win 8, show build on unknown systems
	lib/init.c: fix warning

12/31/2011:
	cpuid.c: rework for 64-bit Mac and Windows
	configure: quiet some compiler warnings, fix HWNAME display
	CHANGES: cleanup

*** 1.4-rc1

12/30/2011:
	Update manual pages, CHANGES, COPYRIGHT, README
	New: doc/snobol4time.3, doc/sdb.3

12/29/2011:
	pml.h, lib/snolib/random.c: add SRANDOM, SRANDOMDEV
	       default to srandom(1) for seed.
	v311.sil: [PLB100] SETEXIT returns old value
	doc/snobol4.1: Document ATAN, LN, SETEXIT.

12/28/2011:
	configure: use tclConfig.sh for Tcl configuration
		   (Thanks to Michael Richter)

10/1/2011:
	cpuid.c: declare main as returning int
	configure: declare main as returning int, avoid exit()

9/24/2011:
	timing: look for acpi0: in dmesg.boot

9/23/2011:
	cpuid.c: Get Hypervisor info (name)
		only use PIC code on OSX
		ifdef body for x86[-64]
	Makefile: always compile cpuid
	timing: remove -fPIC, run cpuid if it exists

9/5/2011:
	cpuid.c: make PIC safe (for MacOS) with help from
	  http://sam.zoy.org/blog/2007-04-13-shlib-with-non-pic-code-have-inlin
	timing: force -fPIC for cpuid compile (default on MacOS)

8/18/2011:
	configure: crock to look in /usr/lib/INSTSET-linux-gnu for
		gdbm_compat library for Ubuntu 11.04

6/19/2011:
	configure: look in /usr/include/tcl*.* for tcl.h
		problem reported by Michael Richter
		Fatal error if Tcl not found when --with-tcl given!

	doc/snobol4tcl.3: remove duplicated code from example program

6/1/2011:
	doc/snobol4tcl.3: remove FILES section (pasted from dbm page)!

5/25/2011:
	doc/snobol4.1: fixes from Mark Laster
	README: Add Mark Laster, update for 2011
	COPYRIGHT: Update for 2011
	TODO.soon: update (parity: removed one, added one)

2/16/2011:
	removed version.c, no longer used
	configure: put VERSION and VERSION_DATE in version.h
		output HAVE_SLEEP
		check for /dev/random, output HAVE_DEV_RANDOM
	main.c: include version.h
	Makefile: version.h create by configure
	Makefile2.m4: install version.h
	config/djgpp/Makefile, config/vms/descrip.mms,
	    config/win32/{borland.mak,mingw.mak,ntmsvc.mak,snobol4.vcxproj}:
		flush version.c
	lib/snolib/time.c: check HAVE_SLEEP
	lib/snolib/random.c: fix a warning, try making win32 safe,
		always call into own [s]random() functions!
	config/win32/{borland.mak,mingw.mak,ntmsvc.mak,snobol4.vcxproj}:
		add atan, random

2/7/2011:
	lib/init.c: fix "-l" entry in usage message
	doc/snobol4.1: merge two &GTRACE entries
		update -l entry, URLs

2/2/2011:
	configure: fix readline test

1/30/2011:
	lib/snolib/time.c: add SLEEP()
	snolib/time.sno: add SLEEP()
	pml.h: add SLEEP
	configure: define VERSION & VERSION_DATE here
		output VERSION and VERSION_DATE into config.h
		output VERS into config.m4
		append VERSION to default SNOLIB_DIR
 	removed: version.c
	Makefile: remove pv
	Makefile2.m4: remove pv, version.c, version.o
	main.c: move version display in-line
	
1/29/2011:
	new sdb.sh: driver script for SDB debugger
	Makefile2.m4: create and install sdb from sdb.sh

1/24/2011:
	new snolib/random.c: FreeBSD random() function
	pml.h: add RANDOM
	Makefile2.m4: add random
	sdb.sno: cleanup

1/23/2011:
	v311.sil [PLB99] fix FUNCTION for referenced, but undefined functions
	Makefile2.m4: add atan to snolib
	pml.h: add ATAN, LN
	version.c: update to 1.3+
	sdb.sno: get version from Id, use readline
	test/function.sno: test undefined, but referenced functions!

1/22/2011:
	configure: add --snolibdir= --without-readline
	configure, Makefile2.m4: add readline
	pml.h: readline, atan, ln
	new lib/snolib/readline.c: readline functions
	new lin/snolib/atan.c: arc tangent
	new snolib/sdb.sno
	sdb.sno: use readline!

1/21/2011:
	v311.sil [PLB98] SETEXIT cleanup; prohibit re-entry, trap at END
	test/diag1.{ref,sno}: update for SETEXIT
	test/diag2.ref: update for SETEXIT
	test/setexit.sno: update
	test/setexit2.{ref,sno}: test for END trap
	test/tests.in: add setexit2.sno
	test/time.{sno,ref}: test MKTIME w/ LOCALTIME

1/20/2011:
	v311.sil: [PLB97] implement SETEXIT/CONTINUE/SCONTINUE/ABORT
	globals, procs: add labels for SETEXIT
	lib/init.c: comment in signal handler
	test/setexit.{sno,ref}: SETEXIT test
	test/test.err.sh: test runner for programs that err out!
	test/tests.in: add SETEXIT test

12/22/2010:
	snolib/http.sno: 6/20/2009 fix broke it! add HTTP.CRLF!!
	cpuid.c: return 0

12/20/2010:
	lib/io.c: quiet gcc warnings, again
	snolib/time.sno: add STRPTIME
	pml.h: renamed STRPTIME to STRPTIME_
	lib/snolib/time.c: fix STRPTIME_
	
12/18/2010:
	lib/init.c, lib/io.c: -l flag takes listing file name
	pml.h, lib/snolib/time.c, snolib/time.sno, test/time.{ref,sno}:
		clean/tweak time to be more standards aligned
	configure: add time-related checks

12/16/2010:
	Add POSIX date/time handling; inspired by Rafal Sulejman
	new lib/snolib/time.c
	new snolib/time.sno
	Makefile2.m4: add time.o, TIME_C
	test/time.{sno,ref}

11/18/2010:
	Handle allocations of > 4GB -- reported by Howard Bussey
	include/lib.h: dynamic(size_t)
	lib/init.c: size_t ndynamic, pmstack, istack; getk takes size_t
	lib/{bsd,generic,posix}/dynamic.c: dynamic(size_t)

10/23/2010:
	doc/snobol4.1: fix incorrect usage of it's reported by Guido M.

9/28/2010:
	configure: fix search for "install" script reported by Noah Birnel

5/30/2010:
	config/win32/snobol4.vcxproj: VS10 Project thanks to Meir Livneh
	config/win32/ntmsvc.mak: comment tested w/ VS10
	lib/win32/{osopen,load}.c: include string.h
	lib/sdbm/sdbm.c: if'ed out extern errno
	lib/auxil/bindresvport.c: only define EADDRINUSE if needed on Win32
	README: Add Meir Livneh

5/24/2010:
	lib/posix/dynamic.c: prefer posix_ api for madvise
		latest CygWIN only supplies posix version
	lib/win32/sys.c: add server variable

**************** re-release 1.3 (CVS tag REL_1_3bis)

5/19/2010:
	Makefile: add cpuid binary to disposables
		causes pain on CygWIN!

**************** release 1.3 (CVS tag REL_1_3)

	(35th anniversary of SNOBOL4 v3.11 release)

5/19/2010:
	History: update for 1.3
	version.c: update to 1.3
	README: update to 1.3
	Copyright: update year
	CHANGES: update for 1.3 release
	doc/snobol4.1: update for 1.3

5/15/2010:
	timing: try cpuid.c more freely

3/10/2010:
	timing: try compiling/running cpuid.c for CYGWIN/MINGW/SolX86
	cpuid.c: fetch, print vendor and cpu model using cpuid instruction

2/27/2010:
	configure: defend against empty MACHINE variable

12/24/2009:
	timing: run lsb_release program, if found

12/22/2009:
	configure: be more careful about using /usr/lib64
	timing: look for lsb-release before debian-version for Ubuntu
		look for lsb-release.d for RedHat/Fedora

11/10/2009:
	lib/win32/sys.c: put wProductType under ifdef HAVE_GETVERSIONEX,
		thanks to Dani Richard.
		Add Win7/WinServer2008R2
	lib/win32/com.cpp: get rid of a VC 6.0 compiler complaint
	README: Add Dani Richard

8/29/2009:
	v311.sil: fix GC crash when COLLECT() called immediately after
		an "external" function.  Reported by Laurence Battin.
	tests/collect.sno, test/collect2.ref: regression tests
	include/load.h: add SETRETVAL macro
	README: Add Lawrence

6/20/2009:
	fix http.sno (thanks to Burkhard Mesisner)
		to send entire request in one TCP segment
		was giving trouble under DJGPP+WatTCP

1/24/2009:
	fix MinGW compilation (thanks to Bruce Axtens)
	lib/win32/sys.c: use HAVE_GETVERSIONEX
	config/win32/mingw.mak: link with libstdc++
		removed -fvtable-thunks -DNEED_COGETOBJECT
	config/win32/config.h: define HAVE_GETVERSIONEX
	README: Add Bruce

12/17/2008:
	lib/win32/com.cpp: fix for VS2003 compilation
	version.c: update to 1.2+

**************** release 1.2 (CVS tag REL_1_2)

	(15th anniversary of ALPHA1 release)

12/8/2008:
	History: update for 1.2
	version.c: update to 1.2
	README: update to 1.2
	Copyright: update year
	CHANGES: update for 1.2 release
	doc/snobol4.1: update for 1.2
	lib/win32/sys.c: detect WinServer2008
	timing: output END_SYSTEM_PROFILER
	
4/25/2008:
	INSTALL: document --universal

3/13/2008:
	use $(MAKE) in "make pv"

1/18/2008
	lib/win32/sys.c: detect WOW64

1/11/2008
	timing: run system_profiler on Darwin

10/25/2007
	snolib/utf.sno: fix UTFLEN() to handle zero

3/18/2006
	lib/win32/sys.c: add amd64

3/6/2007
	INSTALL: document --add-cflags
	configure: document --add-cflags --fast
		add & document --universal

1/7/2007
	configure, Makefile2.m4: replace ADD_WARN with ADD_CFLAGS
		lp64 options ALWAYS need to be present!
		add --add-cflags option to configure

1/4/2007
	timing: dump "machdep" sysctl, needed to find CPU model on MacIntel

10/3/2006
	lib/bsd/inet6.c: remove INADDR_NONE define

6/26/2006
	lib/snolib/host.[ch]: add comments, HOST_USER_EXTENSIONS
	new pkg/lsm

1/27/2006
	lib/win32/com.cpp: add debug, have GET/PUT take arb arg (index) lists
	configure: 1/3 change: add snolib.bundle

1/2/2006
	configure: uncomment SNOLIB_FILE for NeXT style load

12/24/2005
	lib/win32/com.cpp: cleanup/fix?

12/23/2005
	timing: HP-UX getconf CPU_CHIP_TYPE

12/22/2005
	configure: output alternate LIBDIR choice
	INSTALL: update optimization discussion, mention CPUFlags
		repaginate

12/20/2005
	lib/win32/com.cpp: check for BAD_HANDLE in retvariant
	lib/snolib/handle.c: allow redundant create_handle calls
		renamed handle_list to handle_table

12/12/2005
	configure: look for libraries in /usr/lib64, if it exists
		add --force-sdbm
	INSTALL: add --force-sdbm

12/11/2005
	lib/snolib/cos.c: fix comment (Thanks to Dave Feustel)
	timing: send "ln" errors to /dev/null (thanks to Devon)
		need to copy executable if hard link fails!
	version.c: update to 1.1+

**************** release 1.1 (CVS tag REL_1_1)

	(12th anniversary of ALPHA1 release)

12/9/2005
	pkg/rpm/makerpm: use rpmbuild command
		attempt to be more eccumenical (Thanks to Rafal)
	pkg/solaris/prototype:
		add ndbm.sno stcl.sno dynamic.sno snolib.3 snobol4{dbm,tcl}.3
	doc/snobol4.1: tweak HOST() description
	version.c: update to 1.1, return instead of exit()

12/8/2005
	doc/snobol4.1: add SEE snobol4tcl (Thanks to Phillip Thomas)
		update date, HOST() example
	doc/snolib.3: add SEE snobol4dbm and snobol4tcl, cleanup.
	INSTALL: ran ispell, updated VMS info
	README: add snobol4tcl, snobol4dbm. repaginate

12/7/2005
	INSTALL: update
	bsd/Makefile.freebsd bsd/Makefile.netbsd debian/copyright
		rpm/makerpm solaris/pkginfo: update for version 1.1
	removed: rpm/snobol4-1.0-1.spec
	new: rpm/snobol4-1.1-1.spec

12/6/2005
	configure: try to fix --mandir=
	new doc/snobol4tcl.3: STCL man page
	Makefile2.m4 doc/Makefile doc/snolib.3: update for snobol4tcl(3)
	lib/bsd/popen.c: include h.h for non-ansi compilation!

12/5/2005
	lib/snolib/{stcl,handle}.c: include str.h to keep gcc4 quiet
	lib/io.c: try to keep gcc quiet
	snolib/ndbm.sno: add DBM_DELETE (thanks to Rafal)
	snolib/stcl.sno: add comments
	doc/.cvsignore: add snobol4dbm entries
	doc/snobol4dbm.3: improved
	CHANGES: updated
	test/popen2.sno: clean up

12/4/2005
	lib/snolib/ndbm.c, snolib/ndbm.sno, pml.h,
	    config/vms/config.h, doc/snobol4dbm.3: add DBM_ERROR, DBM_CLEARERR
	doc/Makefile: add snobol4dbm targets
	lib/win32/sys.c: fall back to OSVERSIONINFO
	lib/snolib/handle.c: bzero new hash tables!

12/3/2005
	new snolib/stcl.sno snolib/ndbm.sno: do LOAD()ing define constants
	pml.h: remove PMPROTO lines for NDBM and STCL functions

12/2/2005
	lib/init.c: ifdef -L usage message (thanks to Rafal)
		default preloading off (thanks to Rafal)
		Change preload filenames, add warnings
	lib/io.c: protect against overflow in io_printf()

12/1/2005
	timing: show all emerge output (11/26 change)
	Test/clean up under VMS, turn on SDBM:
	config/vms/config.h: SNOLIB_DIR, NDBM defines
	config/vms/descrip.mms: add ndbm, handle, SDBM
	lib/init.c: missing return value
		add ifdef PRELOAD (off by default)
		use DIR_SEP
	include/load.h: turn off const in LA_STR_PTR() too much pain on VMS
	pml.h: use PMLPROC2 for NDBM functions
	Makefile2.m4: remove -L on test run (PRELOAD disabled)
	config/{djgpp,vms,win32}/config.h: add DIR_SEP, PATH_SEP
	lib/snolib/host.{h,sno}: add HOST_DIR_SEP, HOST_PATH_SEP
	lib/snolib/ndbm.c: fix: was using strtod() instead of strtol()!!

11/29/2005
	INSTALL: document --double's failings
	configure: --longlong implies --double, as documented!
		note --double should probably be removed!
	test/test.trace.sh: handle very tiny F.P. numbers!

11/28/2005
	lib/snolib/ndbm.c, pml.h:
		have DBM_OPEN take mode as STRING

11/25/2005
	include/snotypes.h, include/macros.h:
		fix to make --longlong + --double work on OS X
		(only will work in combination)

11/22/2005
	timing.sno: fix tabbing for DATE(2)
	configure: libtcl tweaks
	test/run.sh: fix failure exit
	data_init.c: remove space from COLSTR; add SPCSTR
	v311.sil: add SPCSP, output spaces explicitly (not in file:line)
		shorten "statement" to "stmt"
	test/{ftrace,spit,trace1,trace2}.ref: new reference output

11/21/2005
	Makefile2.m4: add ADD_WARN() and WARN for C compiler
		warning options not to be included in HOST_COPT
	configure: add -add-warn=
	lib/win32/com.cpp: update for handle_handle_t

11/20/2005
	configure: include leading dot on DL_EXT and SO_EXT
	snolib/dynamic.sno: don't need to add dot before DL_EXT

11/19/2005
	timing.sno: use DATE(2)
	lib/snolib/ndbm.c: removed parse_mode()
	configure: send DL_ and SO_ params to config.h too for HOST()
	Makefile2.m4: flush dlparam.sno; pass CC and COPT to host.c
	lib/snolib/host.[ch]: add HOST_DL..., HOST_SO..., HOST_CC, HOST_COPT
	snolib/dynamic.sno: use HOST() instead of dlparam.sno
		now with optimization!

11/18/2005
	configure: need -Ilib/sdbm to use SDBM (thanks Rafal!)
	lib/io.c: remove tty_setmode from io_flushall()
		endex -> io_finish -> io_closeall should do restore?!
		Was causing badness (restoring settings from bad data?)

11/16/2005
	new: test/test.opt.sh: implement optional test
	test/run.sh: handle exit status 2 from optional test failure
	new: test/ndbm.{sno,ref} optional test for NDBM

11/15/2005
	Makefile2.m4: install snobol4dbm.3 (thanks Rafal!)

11/14/2005
	new: doc/snobol4dbm.3: DBM info
	doc/snobol4.1: reference snobol4dbm(3), new Burks URLs
	README: new Burks URLs

11/12/2005
	timing: use HP-UX IA64 machinfo, add ENDCPUINFO
	CHANGES: updated
	doc/snolib.3: add dynamic.sno

11/11/2005
	Makefile2.m4: run regressions without preloads

11/10/2005
	v311.sil: decrement &GTRACE if positive
	init.c:
		experimental "preload" files
		keep count of files, append "-" if none
		-g sets &GTRACE to -1 (permanently on)
		-L to disable preloading
	configure: changed --without-tk to --with-tk

11/9/2005
	lib/sdbm/sdbm{,_hash,_pair}.c: use config.h
	lib/sdbm/sdbm.c: use unistd.h if HAVE_UNISTD_H defined
	configure Makefile2.m4: use SDBM as last resort
	README: add money
	include/handle.h lib/snolib/{handle,ndbm,stcl}.c:
		revamp handles; users pass handle_handle_t *
		added SNOEXP() to handle.c routines

11/8/2005
	snolib/wrapper.sno: add SYSPRED
	
11/7/2005
	config/win32/ntmsvc.mak: define DUFF for SDBM 
	lib/win32/sys.c: Add IA64, Longhorn (from MSDN)
	lib/snolib/stcl.c: cleanup, release handles

11/4/2005
	config/win32/mingw.mak: add SDBM_OBJ
	config/djgpp/Makefile: add SDBM
	lib/sdbm/sdbm.c: if out old imports

11/2/2005
	Makefile2: TEMP: have xsnobol4 depend on dlparam.sno
	configure: fix dynamic linking on OSF1/DU/Tru64, SunOS4/cc
	Makefile2: output dlparam.sno.tmp, do mv -f at end

	config/win32/borland.mak: add comment (behind the times)
	config/win32/mingw.mak config/win32/ntmsvc.mak: use SDBM
	lib/snolib/ndbm.c: allow use of SDBM
	new lib/sdbm/LOTS: Ozan Yigit's SDBM library

11/1/2005
	new snolib/dynamic.sno: dynamic loadable module utilities
	configure: Tcl tweaks
	Makefile2.m4: use divert/undivert for ADD_xxx macros/values
	configure: update for HP-UX export symbols when dld'ing; add -fast

10/31/2005
	snolib/wrapper.sno: fix, update

10/30/2005
	configure: fix SunOS4 dlparams
	Makefile2.m4: dlparams.sno depends on Makefile2

10/29/2005
	v311.sil: fix GC trace; was stomping on XCL. Use TEMPCL.
	configure: tweak Tcl configuration testing
	lib/snolib/stcl.c: add URLs
	timing: if no uname, run hostname if found
		run name w/ -n -rs and -m
	timing.sno: add DATE() output

10/28/2005
	test/tests.in test/diag1.ref test/diag2.ref
		diag1/2 tests need "dump" filtering

10/27/2005
	v311.sil timing.sno lib/init.c lib/io.c test/a.ref
	test/diag1.ref test/diag2.ref test/dump.ref doc/snobol4.1
		implement GC trace (-g flag, &GTRACE) GC total time stats
	README, COPYRIGHT:
		update dates
	CHANGES:
		update

10/23/2005
	new: test/diag1.ref test/diag1.sno test/diag2.ref test/diag2.sno
		add diags from VAX/VMS Macro SNOBOL4 (from SPITBOL?)
	v311.sil: fix backtracking w/ *opr [PLB91]
	new: test/unsc.sno
		test backtracking w/ *opr

10/22/2005
	test/ftrace.ref test/spit.ref test/trace1.ref test/trace2.ref
		update for new trace output

10/21/2005
	test/tests.in v311.sil
	new: test/func2.sno test/func2.ref
		Fix case folding of alternate function rentry label [PLB89]
		add test program
	v311.sil: prepend &FILE and &LINE to trace output! [PLB90]

6/14/2005
	configure: set, export SO_ and DL_ defines
	Makefile2.m4: create, install dlparams.sno

6/5/2005
	lib/init.c lib/io.c include/lib.h: add io_fname()
		Make non-existant initial command line file fatal again
		make sure lib.h has complete set of io.c entries

5/28/2005
	lib/init.c: Make non-fatal for term_open() to fail!!
		regression tests were failing!

5/27/2005
	Makefile: make all GENERATED files "precious"
	lib/io.c, lib/init.c, include/units.h, README:
		make MEM_IO work, based on work by Sudarshan Gaikaiwari
		Pull io_init() out to init.c
		renamed io_input() to io_input_file()
		new: io_memfile(), io_skip(), io_input_string(),
			io_setfile(), io_mkfile_noclose(),
			io_output_string(), io_attached().

5/20/2005
	new: .cvsignore doc/.cvsignore

1/3/2005
	lib/win32/com.cpp: handle VT_DISPATCH in retvariant()

12/27/2004
	doc/snobol4.1: fix typo/pasteo

12/14/2004
	lib/snolib/getstring.c, include/load.h:
		add mgetstring()
	lib/win32/com.cpp:
		use mgetstring()

9/30/2004
	test/clean.sh: remove *.dat.  Thanks to Rafal Sulejman!

9/28/2004
	configure, Makefile2.m4:
		install snolib.3 in MAN3DIR
		Noticed by Phillip Thomas

9/17/2004
	configure: check for libgdbm_compat

9/14/2004
	configure: cleanup ndbm; use USE_GDBM
	Makefile: config.{h,m4} depend on configure

9/12/2004
	lib/snolib.c: include stdio.h first

9/8/2004
	configure: fixes for cygwin, ndbm works

9/7/2004
	configure, lib/snolib/ndbm.c:
		add HAVE_{,GDBM_{D,SL}ASH_}NDBM_H
		works on wide variety of platforms

9/6/2004
	configure: add --without-ndbm
	new lib/snolib/ndbm.c: ndbm interface
	pml.h: add DBM_xxx functions
	Makefile2.m4: ndbm.o

9/2/2004
	include/handle.h, lib/snolib/handle.c:
		return pointer value as handle
	lib/snolib/stcl.c:
		rationalize function names w/ Tcl_ names:
			TCL_{CREATE,DELETE}INTERP
		Add suite of OBJ(ect) related functions
			(not yet tested)
	pml.h: add STCL object functions

8/31/2004
	configure: allow tcl .so's without .a's
		seen by Rafal M. Sulejman (from CVS source!)

8/30/2004
	lib/io.c: treat all errors as non-fatal if !ISAFILE
		problem seen by Martin Waller w/ Windoze TCP

8/26/2004
	lib/snolib/stcl.c: add back Tk under STCL_USE_TK
	configure: add --with-tcl and --without-tk
		use $INCDIR more
	Makefile2.m4: tweaks for stcl

8/24/2004
	pml.h: add STCL under PML_STCL
	lib/snolib/stcl.c: cleanup
	lib/snolib/handle.c: fix handle search

8/23/2004
	pml.h: rename COM_UNLOAD to COM_RELEASE
	configure: keep quiet in installer grep
	lib/win32/com.cpp: ifdef NEED_COGETOBJECT, rename COM_RELEASE
	lib/snolib/handle.c: made it work

8/21/2004
	snolib/http.sno: add HTTP.RECL variable

8/20/2004
	new: include/handle.h lib/snolib/handle.c
		manage handles
	lib/snolib/stcl.c, lib/win32/com.cpp:
		convert to use handles

8/19/2004
	snolib/ftp.sno: fix a comment
	snolib/http.sno: add HTTP.POST() function
	configure: fix broken 6/4/2004 changes
		output $(DESTDIR) as prefix
		avoid AIX installer, add more names
		loop seperately for dir and install prog

8/12/2004
	v311.sil, genc.sno, include/macros.h:
		Create new PCOMP[C] SIL operators for pointer comparison.
		On some versions of RedHat ES and Fedora Core, dynamic
		pointers can be negative!  Thankfully Mark Emmer had
		found all the necessary places to change for SNOBOL4+
		Sizes are still constrained to be positive signed ints.

7/19/2004
	configure: update for CygWin 1.5.9(0.112/4/2)
	lib/win32/com.cpp: use USE_WCHAR_H, NEED_COGETOBJECT
	config/win32/mingw.mak: define NEED_COGETOBJECT

7/10/2004
	configure, Makefile2.m4, lib/win32/com.cpp: Support COM under CygWin!

7/1/2004
	config/win32/ntmsvc.mak: add COM
	lib/win32/com.cpp: fix for Visual Studio .NET 2003 (VC71)
	lib/win32/inet.c: tweak setsockopt() args

6/23/2004
	new lib/snolib/stcl.c:
		start of attempt at Tcl/Tk interface

6/20/2004
	pml.h: add COM_GETPROP, COM_PUTPROP, COM_UNLOAD

6/19/2004
	new lib/win32/com.cpp: COM (OLE) Automation
	config/win32/mingw.mak: add COM
	pml.h: PML_COM support

6/4/2004
	configure: Improvements suggested by Robin Kay
		<komadori@gekkou.co.uk>.

		autoconf compatibility: Honor CC, CFLAGS, CPPFLAGS,
		LDFLAGS, DESTDIR environment variables.

		Don't use (Solaris/SysV) /usr/sbin/install -- it's
		(way) different.

5/31/2004
	lib/bsd/inet6.c: NOTE: functions ignore "port" arg (OK, not used)
	INSTALL: fix 1.0 typos

3/3/2004
	configure: attempt to fix pre-panther socklen_t lossage
	version.c: update to 1.0+

**************** release 1.0 (CVS tag REL_1_0)
	(11th anniversary of BETA1 release)

2/18/2004
	doc/snobol4.1 doc/snolib.3: ran ispell, update dates, version
	README, INSTALL: ran ispell, update version
	Switched development from RCS to CVS
	Makefile: add syn.c to GENERATED; remove make tar
	pkg/{bsd,debian,rpm,solaris}: add packaging files
	History: cleanup add RCS tag names, versions

2/17/2004
	lib/bsd/inet.c: add (const void *) cast for MSVC

2/16/2004
	CHANGES: update
	configure: fix LP64_NATIVE

2/5/2004
	COPYRIGHT, README: update copyright years
	include/dt.h: improve info for functions
	lib/io.c: implement MEM_IO; compiles, but not tested

2/3/2004
	lib/{ansi,c99}/spcint.c: check for overflow
	configure: fix test for bsd/suspend.c (look for sigmask macro)

1/29/2004
	doc/snobol4.1: fix SSET entry

1/11/2004
	v311.sil: Fix argument processing for LOADed functions:
		if there are more actuals than formals, pass extras
		without conversion (was looking past end of formal list)!
	pml.h: no longer need (,) in HOST prototype (testing above fix)
	include/snotypes.h: Add BITFIELDS_SAME_TYPE
		gcc 3.3.1 (SuSE Linux) can't handle this!
	config/win32/ntmsvc.mak: set BITFIELDS_SAME_TYPE

1/6/2004
	include/snotypes.h: make FFLD packable by MSVC
	config/win32/ntmsvc.mak: no longer need NO_BITFIELDS define

12/23/2003
	configure: compile test program to get long/pointer sizes
		for LP64 and LP64_native checks

12/22/2003
	timing: use gentoo "emerge" if present

12/18/2003
	INSTALL: update win32 info
	config/win32/ntmsvc.mak: add last tested info

12/9/2003
	Built and tested under WinXP using MS Visual Studio 2003 .NET
	include/lib.h: use EXPORT() on declarations
	include/load.h: SNOEXP() -- import or export, depending on build
	lib/win32/inet.c: handle missing SD_BOTH

11/15/2003
	timing: add gentoo-release, *-release, move redhat to end

11/14/2003
	lib/win32/inet.c: add true (from 8/9/2003)
	lib/ordvst.c: add consts
	config/vms/descrip.mms: add bindresport.obj
	tested w/ Compaq C V6.5-001 on OpenVMS Alpha V7.3-1
	tested w/ hp C X6.6-329 (GEM 50DA7) for I64 on OpenVMS Alpha V7.3-1  
	tested under Cygwin, MINGW, DJGPP, AIX, IRIX, SunOS, Solaris, HP-UX

11/12/2003
	configure: add sparc64
	Makefile: fix for BSD parallel make, gmake on BSD
	Makefile2.m4: wrap regression in subshell for BSD parallel make

11/6/2003
	doc/snobol4.1: add a bit more info on bidirectional "pipe" I/O

10/9/2003
	removed doc/ports.txt

8/6/2003
	doc/porting.ms: add SIL, fix sys.c and inet.c
	doc/snobol4.1: fix typo
	lib/bsd/inet6.c: add IEEE 1003.1g credit

7/29/2003
	doc/snolib.3: improve a little
	doc/*.doc -> doc/*.txt
	README: add snolib.{3,0,ps,pdf}
		remove ports.doc
		s/.doc/.txt/
	Makefile2.m4: remove mention of ports.doc
		install load.txt
		clean up timing.out requests -- send everything to stderr
	Makefile: cleanup
	INSTALL: load.txt, porting.txt. paypal

7/23/2003
	new: doc/snolib.3

7/21/2003
	doc/snobol4.1: add BUG: integer overflow not detected
	configure: FINITE_C and ISNAN_C not needed (were wrong too)

7/19/2003
	doc/snobol4.1: document /udp!!

7/15/2003
	new: test/popen(2).{ref,sno}: popen tests
	Makefile2.m4: make snobol4 depend on tests.in
	timing: tweak for FreeBSD/Alpha

7/14/2003
	lib/snolib/{exp,tan}.c: RETFAIL if result is !finite

7/11/2003
	doc/snobol4.1: talk about CASE & UTF-8

7/9/2003
	include/lib.h lib/bsd/inet(6).c lib/io.c lib/win32/inet.c: add
		INETxxx flags/magic paths: broadcast reuseaddr
			dontroute oobinline keepalive nodelay
			
7/8/2003
	CHANGES: update
	doc/snobol4.1: document 8th bit handling

7/7/2003
	gensyn.sno: treat all bytes with 8th bit set as ALPHA on ASCII systems
		allows UTF-8 encoded characters, and national character sets
		to used in labels and identifiers!
	new: test/8bit2.{sno,ref}: 8bit id/label test

7/6/2003
	INSTALL: update Win32 UDP info
	configure, Makefile2.m4:
		move SNOLIB_DEFINES, PREFIX, BINDIR, MANDIR, MAN1DIR,
		SNOLIB_DIR to configure
		seperate greps for socketpair

7/5/2003
	README: update copyright dates, add logic.sno
	INSTALL: update timing e-mail address, add SNOBOL4 listserv info URL
	Makefile2.m4: add SNOLIB_FILES variable, add README to SNOLIB_FILES
		update timing e-mail address
	lib/djgpp/osinit.c: fix WATTCP compilation
	doc/snobol4.1: updated SEE ALSO

7/4/2003
	COPYRIGHT: update year
	Makefile: removed SMALL_SNO commands
	INSTALL: update VMS and Win32 info, gcc/lp64 info
	config/vms/descrip.mms: fix DECC4 support
		add NEED_BCOPY,NEED_BZERO,SOCKLEN_INT,HAVE_UNIXIO_H
	config/vms/config.h: add SOCKLEN_INT ifdef
	lib/io.c: add unixio.h
	config/win32/config.h lib/ansi/spcint.c lib/bsd/inet.c
		lib/bsd/inet6.c lib/bsd/popen.c lib/djgpp/osinit.c
		lib/{c99,generic,longlong}/intspc.c
		lib/{dummy,hpux,next,unix98,win32}/load.c
		lib/generic/{execute,popen}.c lib/init.c
		lib/{posix,vms}/sys.c lib/{posix,vms,win32}/tty.c
		lib/snolib/retstring.c lib/snolib/system.c
		lib/vms/getredirect.c lib/vms/popen.c lib/vms/sys.c
		include/{bindresvport,macros,snotypes,str}.h: ran comdef

7/3/2003
	configure: check netinet6/in6.h for HAVE_SOCKADDR_IN6
		always set HAVE_SOCKADDR_IN6, for serv.c
	lib/snolib/serv.c: set sin*.sin*_family fields
	config/vms/descrip.mms: fix osopen source path
		vms7.3 TCP needs bindresvport.obj
	lib/vms/osopen.c: use str.h for strcmp
	main.c: comdef fix (leave spaces)
	include/vars.h: use HAVE_WINSOCK_H

6/26/2003
	configure: defend against __vfork, look for popen() shell

6/25/2003
	doc/snobol4.1: add inet6 for SERV_LISTEN()
	configure: check for paths.h, vfork
	lib/bsd/popen.c: use vfork.h

6/24/2003
	doc/snobol4.1: document SERV_LISTEN(), update HOST() output, date
		add DIAGNOSTICS section, more AUTHORS
	lib/snolib/serv.c: update for inet6

6/22/2003
	new: lib/bsd/popen.c
	configure: check for socketpair, use bsd popen.c
	Makefile2.m4: add popen
	doc/snobol4.1: document bidirectional pipes

6/21/2003
	doc/snobol4.1: document /dev/tty and /dev/null magic

6/19/2003
	doc/porting.ms: update
	new: lib/{msdos,vms}/osopen.c
	config/vms/{config.h,descrip.mms}: add OSDEP_OPEN, osopen.obj
	config/win32/{borland,mingw,ntmsvc}.mak: add osopen
	config/win32/config.h: OPDEP_OPEN
	include/lib.h: add osdep_open

6/18/2003
	config/djgpp/config.h: SOCKLEN_T
	configure: flushed HAVE_STDARG_H
	doc/porting.ms: update

6/16/2003
	lib/posix/tty.c: add VALID test
	new: lib/win32/term.c
	config/win32/{borland,mingw,ntmsvc}.mak: use win32/term.c

6/15/2003:
	timing: add hwinfo, sw_vers for Darwin/NS
	lib/win32/tty.c: works!
	config/win32/config.h: WIN32_LEAN_AND_MEAN, TTY_READ_RAW
	config/win32/{borland,mingw,ntmsvc}.mak: use win32/tty.c

6/8/2003:
	configure: always set SOCKLEN_T
	config/win32/borland.mak: cleanup; use config\win32
	config/win32/ntmsvc.mak: cleanup
	config/win32/config.h: SOCKLEN_T
	genc.sno: remove config.h
	parms.h: include config.h, move system includes first
	lib/snolib/{delete,fork,host,sprintf}.c: move system includes first
	lib/snolib/system.c: use stdlib.h
	lib/auxil/bindresvport.c, lib/snolib/serv.c: use SOCKLEN_T

6/6/2003:
	configure: flushed $SYS, config.guess refs, pass HWNAME, OSNAME
	lib/generic/sys.c: flushed CONFIG_GUESS
	include/snotypes.h: flused SIL_FUNC_PROTO

6/5/2003
	new: bindresvport.h
	configure: SOCKLEN_T
	lib/bsd/inet.c: use bindresvport.h, OLD_UCX_INCLUDES, netdb.h!
	lib/bsd/inet6.c: use bindresvport.h
	lib/auxil/bindresvport.h: use bindresvport.h, SOCKLEN_T
	config/vms/descrip.mms:
		only use OLD_UCX_INCLUDES on VAXC?
		move stuff to UCXDEFS   
		use bsd/inet.c!!
	config/vms/config.h: add SOCKLEN_T

6/3/2003
	config/{djgpp,win32}/config.h: NEED_SOCKLEN_T
	config/vms/descrip.mms: OLD_UCX_INCLUDES
	lib/auxil/bindresvport.c: OLD_UCX_INCLUDES

6/2/2003
	configure: NEED_SOCKLEN_T, AUX_BINDRESVPORT, Tru64 v5 crap
	lib/auxil/bindresvport.c: use socklen_t again

6/1/2003
	include/lib.h: remove bindresvport proto
	lib/bsd/inet.c: add bindresvport proto, NULL arg

5/31/2003
	include/h.h: protect TRUE/FALSE, ran comdef
	lib/bsd/inet6.c: move bindresvport_sa decl

5/29/2003
	configure: HAVE_SOCKADDR_IN6, NEED_BINDRESVPORT_SA
	include/snotypes.h: remove mstime()
	include/str.h: s/__/_/
	lib/bsd/inet.c: NEED_BINDRESVPORT_SA
	lib/win32/inet.c: bindresvport()
	lib/{hash,pair,pat,top}.c: move STATIC ifdefs up to top
	lib/auxil/bindresvport.c: HAVE_SOCKADDR_IN6, HAVE_WINSOCK_H
	lib/djgpp/osinit.c: bindresvport
	config/vms/descrip.mms, include/lib.h: NEED_POPEN
	config/win32/{borland,mingw,ntmsvc}.mak: bindresvport.o(bj)
	config/djgpp/config.h: NEED_BINDRESVPORT
	config/djgpp/Makefile: bindresvport.o

5/23/2003
	flushed dummy/rresvport.c
	config/vms/descrip.mms: UCXLIB, UCXOBJ, flush rresvport
	config/win32/{borland,mingw,ntmsvc}.mak: flush rresvport
	lib/vms/inet.c: punt on bindresvport()
	lib/win32/inet.c: punt on bindresvport()
	configure: define NEED_SOCKLEN_T

5/22/2003
	configure, Makefile2.m4:
		use bindresvport[_sa]() instead of rresvport[_af]()
	new: lib/auxil/bindresvport.c
	lib/bsd/inet(6).c: switch from rresvport(_af) to bindresvport(_sa)

5/20/2003
	new: lib/vms/load.c: first cut at VMS LOAD() support!!
	new: lib/bsd/inet6.c: use getaddrinfo()
	new: lib/auxil/rresvport_af.c
	configure: detect getaddrinfo(); use inet6.o
		test for ipv6 first, add string(s).h comments
	config/vms/descrip.mms: more cleanup, add load.c
		use native popen(), bzero(), bcopy(), unlink()
		use bsd/inet.c, posix/mstime.c
		compiles without implicit warnings w C 6.5 on VMS 7.3!!
	config/vms/config.h: add NEED_RRESVPORT_DECL, PML comment
	pml.h: use PMLFUNC2 for renamed functions
	include/lib.h: add getredirection(), popen(), pclose(), rresvport()
	lib/init.c: cleanup, remove dynamic() extern
	lib/io.c: remove externs for term_input(), {udp,tcp}_open(), popen()
	lib/vms/getredirect.c: cleanup: use stdlib.h, lib.h
	lib/vms/sys.c: use starlet.h for system prototypes
	lib/{dummy,vms}/tty.c: add tty_suspend()
	config/win32/config.h: add NEED_RRESVPORT_DECL
	config/djgpp/config.h: add HAVE_STRINGS_H
	Makefile2.m4: add rresvport_af.o, remove finite.o

5/17/2003
	configure: more HP-UX/ia64 tuning
	INSTALL, config/vms/{config.h,descrip.mms}
		update for Compaq C V6.5-001 on OpenVMS Alpha V7.3-1
	config/vms/descrip.mms, lib/io.c, doc/porting.ms:
		s/NO_OFF_T/NEED_OFF_T/

5/16/2003
	timing: add eval for debian 3.0
	configure: more HP-UX/ia64 tuning
	INSTALL: update --longlong, explain ILP32
		include --lp64 caveat for HP-UX
	config/{vms,win32}/config.h: HAVE_STRING_H
	lib/win32/sys.c: detect WinServer2003, Win95OSR2, Win98SE

5/15/2003
	configure, include/str.h:
		handle HP-UX IA64 like PA-RISC
		rework string function handling
		add HAVE_STRING(S)_H
		s/USE_OWN/NEED/

5/14/2003
	lib/hpux/load.c: remove unused variables

5/5/2003
	include/str.h: always use memcmp if ANSI_STRINGS (Solaris 2.4)

4/30/2003
	configure: KERNEL_BITS fix for HP-UX 10 (and earlier)
		up maxmem for full optimization of data_init.c on AIX

4/24/2003
	Cleanup misc ports;
	lib/{c99,generic,longlong}/spcint.c lib/generic/spreal.c: include stdio
	lib/{bsd,dummy,hpux,next}/load.c: include stdio.h and lib.h
	lib/{dummy,dos,vms,win32}/tty.c: include lib.h
	lib/{vms,win32}/exists.c: include stdio.h,h.h,snotypes.h,lib.h
	lib/{vms,win32}/inet.c: lib.h, use str.h for bcopy
	h.h: add NEED_CONST; Tru64 5.0 also has __STDC__ == 0
	INSTALL: add --double and --longlong doc

4/23/2003
	Second round of prototype changes (compilers other than gcc);
	Makefile: add static.h (generated by genc.sno)
	configure: fix strings.h test
	genc.sno: output static prototypes to static.h2; use ret_t
		upcase library call names
	v311.sil: upcase library routines which take descrs or specs
		rename ENFILE to ENDFIL to avoid Unix errno collision
	globals, procs: ENDFIL
	main.c: always include macros.h, for NORET; use NORET for BEGIN call
	include/macros.h: define macros for upcase versions of lib routines
		cast args, call functions; add NORET
	parms.h: remove NORET, include static.h
	include/snotypes.h: add ret_t
	include/str.h: protect index/rindex against multiple definitions
	lib/bal.c: use NORET
	lib/init.c: use NORET for SYSCUT() call
	lib/io.c: use NORET for UNDF() call; add comments
	lib/bsd/inet.c: reverse order of macros and snotypes (for NORET)
	lib/generic/execute.c: include unistd.h before stdio.h
	lib/snolib/host.c: include unistd.h before stdio.h

4/21/2003
	include/snotypes.h: create ptr_t; use void * to avoid gcc3 warnings
	gendata.sno: use (ptr_t) instead of (char *)

	Start(!!) cleanup for -Wimplicit warnings;
	lib/unix98/load.c: include stdio.h, lib.h, RTLD_LAZY cleanup
	lib/{dummy,vms,win32}/tty.c: flush tty_{sav,restor}e
	include/lib.h: add {execute,exists,suspend,tcp,tty,term,sys,version}.c
			entries
		add io_sseek(), io_finish(), io_closeall(),
			io_findunit(), io_getfp(), io_mkfile(), apdsp()
		remove io functions declared by libret.h
		fix getbal() prototype (was bal, returning void!)
		fix pad(), reverse(), substr() return types
		fix unit types for io_{printf,endfile,backspace,rewind}
	lib/snolib/{chop,cos,delete,exp,log,ord,sin,sqrt,tan}.c: return type!
	lib/snolib/{exit,,sset}.c: include lib.h, stdio.h
	lib/snolib/file.c: include lib.h, stdio.h; rename entry point!
	lib/snolib/fork.c: add system headers, return type
	lib/snolib/host.c: add system headers, lib.h, stdio.h
	lib/snolib/findunit.c: include stdio.h, lib.h, add return type
	lib/snolib/serv.c: add system headers, lib.h, stdio.h, flushall arg
	lib/snolib/{rename,sprintf}.c: add stdio.h
	pml.h: rename FILE() entry point to FILE2()
	lib/date.c: include stdio.h, lib.g; fix Y2K bug w/ old date!!
	lib/posix/tty.c: include lib.h for proc_suspend()
	lib/stream.c: remove libret.h
		remove extra arg to clertb -- unused for almost 10 years!!
	include/syntab.h: move stream() declaration here from libret.h
		enable any(), clertb(), plugtb() prototypes
		remove extra arg from clertb()!
	lib/bal.c: include lib.h for getbal() prototype
	parms.h: add includes
	isnobol4.c compiles clean w/ -Wimplicit on RH7.3, FreeBSD4.7

	lib/bsd/inet.c: add includes
	lib/init.c, main.c: include proc.h
	lib/io.c: include lib.h, proc.h; ignore HAVE_STDARG_H; use __STDC__
	version.c: include lib.h
	new include/gen.h: generated (init) functions
	main.c: include lib.h, gen.h
	data_init.c: include gen.h
	genc.sno: output full prototypes to proc.h
	gensyn.sno: output include gen.h
	lib/{bsd,posix}/dynamic.c: include lib.h (et al)
	lib/generic/{expops,intspc}.c: include lib.h
	lib/{ansi,bsd,dummy,generic,msdos,posix,vms,win32}/mstime.c
		lib/{djgpp,generic,posix,vms,win32}/sys.c:  lib.h &c
	lib/{hash,lexcmp,ordvst,pat,pair,pml,realst,replace,top,tree}.c
		{bsd,generic,posix}/suspend.c
		{posix,vms}/term.c generic/ex{ists,execute}.c: lib.h
	lib/snolib/getstring.c: load.h
	lib/snolib/retstring.c: load.h, stdio.h
	new include/str.h: string includes/prototypes
	include/h.h: remove index, bcmp defines
	include/macros.h: move bcmp, bcopy defines to str.h
	parms.h: use str.h
	lib/auxil/getopt.c,lib/djgpp/osinit.c,lib/bsd/inet.c,
		lib/{date,init,ordvst,pml,realst,str}.c,
		lib/snolib/{host,[gr]etstring,serv,sprintf}.c
		lib/{generic,posix,vms,win32}/sys.c,
		lib/{bsd,hpux,next,unix98,win32}/load.c: use str.h
	lib/{ansi,c99,generic,longlong}/{spcint,intspc}.c,
		lib/{generic,ansi}/spreal.c: lib.h str.h
	lib/generic/execute.c: unistd.h
	configure: only use strings.h if it contains both index and strcmp
		(GNU/Linux version is minimal)
	compiles cleanly (except isnobol4.c loops & snolib functions)
		w/ gcc -Wmissing-prototypes!!

1/13/2003
	doc/load.doc: cleanup
	lib/next/load.c: use snolib.so on Darwin
	INSTALL: cleanup

1/12/2003
	config/win32/config.h: add missing endif
	INSTALL: update cygwin info

10/29/2002
	lib/snolib/logic.c: fix for AXP/VMS compilation
	lib/vms/sys.c: fix

8/20/2002
	lib/djgpp/osinit.c: replace with Burkhard's version!
		(He says mine doesn't work)
	lib/io.c: only flag STD{IN,OUT,ERR}_FILENO's w/ NOCLOSE
	README: updated, added URL
	doc/snobol4.1: added http:// to URL
	
6/13/2002
	genc.sno: pass CPP directives! (3/3/2002)

6/6/2002
	v311.sil include/macros.h lib/init.c doc/snobol4.1:
		Add '-S' option for enlarging interpreter stack.
		** 1% speed penalty for genc.sno **
	timing.sno lib/snolib/host.[ch]:
		add HOST_ISTACK_SIZE

4/25/2002
	configure, lib/next/load.c:
		add TRY_UNDERSCORE to next/load.c for Darwin

4/19/2002
	lib/next/load.c: check NSLinkModule() return
		add comments

4/12/2002
	lib/next/load.c: remove unused variable & label

4/2/2002
	lib/snolib/host.h: fix comment typo

3/23/2002
	include/h.h: add default {IM,EX}PORT macros
	include/load.h: add io_closeall, io_mkfile; use IMPORT macro
	lib/djgpp/osinit.c: add io_{findunit,closeall,getfp,mkfile}
	lib/io.c: use EXPORT macro for io_{findunit,closeall,getfp,mkfile}
	lib/snolib/[gr]etstring.c: use EXPORT macro
	config/win32/config.h: add IMPORT & EXPORT macro declarations

3/21/2002
	Fixes for mingw build.
	lib/win32/inet.c: remove dangling saweol
	config/win32/mingw.mak: add a missing $
	doc/porting.ms: add HAVE_OS_INIT
	README: add text from COPYRIGHT

3/20/2002
	clean DJGPP build w/ DXE2, WATTCP.  Tested DXE2.
	lib/djgpp/osinit.c: cleanup
	config/djgpp/Makefile: use install.bat
	config/djgpp/config.h: fix HAVE_OS_INIT
	config/win32/{borland,mingw,ntmsvc}.mak: add make SRCDIR, make install
	doc/load.doc: DJGPP/DXE2, dllwrap info
	new: config/install.bat

3/17/2002
	load.h: add prototypes for getstring, retstring,
		io_findunit, io_getfp

3/16/2002
	configure: make gcc -O3 the default, use -fno-inline-functions

3/15/2002
	config/djgpp/Makefile: fix for WATTCP build
		add HAVE_{WATTCP,DXE2}
		add comments
	config/djgpp/config.h: add defines under HAVE_{WATTCP,DXE2}
		add FOLD_HOSTNAMES
	lib/djgpp/sys.c: add +DXE2 and +WATTCP to sys string
	lib/djgpp/osinit.c: add lib.h, comments
	lib/bsd/inet.c: change WATTCP_DOS to FOLD_HOSTNAMES

3/14/2002
	configure: add --bindir=
		document --mandir=
		show --prefix default
	doc/load.doc: add ArnaudRecipes link

3/13/2002
	version.c: version 0.99.44+
	configure: add --mandir=
	Makefile2.m4: add MAN1DIR

3/12/2002
	lib/init.c: fix VMS getredirection() call

3/9/2002
	Makefile: sh clean.sh

3/8/2002
	timing: show AIX memory/cache conf (thanks to info from
		http://www.fortran-2000.com/ArnaudRecipes/hardwareinfo.html)
	Makefile: add lint

3/6/2002
	Makefile2.m4: add "lint"
	Makefile: remove *.ln

**************** released 0.99.44 (RCS tag BETA8)

3/2/2002
	version.c: update to 0.99.44
	timing: do an ls -l of Entries file

3/1/2002
	config/djgpp/Makefile: tested, make DXE loading optional
	config/djgpp/config.h: remove unneeded stuff!
	lib/djgpp/sys.c: HOST() support for DJGPP
	lib/vms/getredirect.c: defend against argc==0
	v311.sil: remove an empty RCALL label list

2/28/2002
	configure: force -n32 compiler IRIX 32-bit compilations

2/22/2002
	genc.sno, v311.sil: XINCLD 3-way return to handle multiple includes
	lib/io.c: io_include() 3-way return
		defend against path overflow
		cleanup, add comments, type member
	include/libret.h: io_include_ret
	test/line.{ref,sno}: test multiple include handling
	new: test/include.{ref,sno}: test includes w/o -line

2/21/2002
	configure: seperate -Wuninitialized from OPT
	lib/win32/inet.c: cleanup; read text past eol, handle CR
	lib/io.c: fix unix inet I/O

2/20/2002
	install-sh: make cpprog the default
	doc/snobol4.1: add www.snobol4.org
	lib/init.c: fix -P

2/19/2002
	new: COPYRIGHT

2/18/2002
	configure: use -fomit-frame-pointer for --fast w/ gcc
		report glibc version to stderr, config.m4
		default compilation includes -Wuninitialized
		always compile with -Wunused
	v311.sil: compile cleanly with gcc -Wunused;
		add entry labels where needed; add XECODE op
		removed unused labels and unused code!!
	include/macros.h: ENTRY() no longer drops a label!
	genc.sno, gendata.sno: use new XECODE op
	lib/unix98/load.c: only declare found: label if needed

2/16/2002
	configure: add IRIX compiler flags; merge IRIX and IRIX64
		check for /sbin/install
	Makefile: remove timdir.* in cleanmostly
	new lib/djgpp/osinit.c: djgpp os_init()
	lib/init.c: add os_init() call
	new config/djgpp/{config.h,Makefile}
	removed config/djgpp/ misc...

2/15/2002
	config/win32/{borland,ntmsvc}.mak: clean up, bring in to sync
	config/win32/config.h: update
	lib/snolib/getenv.c: needs equ.h

2/14/2002
	Makefile: go back to "cvs login"
	Compile under MINGW (Minimal GNU for Windoze) http://mingw.org
	config/win32/config.h: only define __STD__ if not defined
		add defines for popen, pclose
		no longer NEED_POPEN_DECL?
	lib/snolib/system.c: needs equ.h
	lib/win32/inet.c: remove BORLAND ifdef
	lib/win32/sys.c: add Win{98,ME,2K,XP}; display unknown platforms
		strip trailing spaces from szCSDVersion
	lib/win32/tty.c: add HANDLE casts
	config/win32/ntmsvc.mak: put -Iconfig\win32 first
		intspc moved to ansi/
		add ord.obj
	removed lib/win32/popen.c, config/borland directory
	new config/win32/mingw.mak, config/win32/borland.mak

2/13/2002
	timing: use /usr/bin/oslevel on AIX

2/12/2002
	lib/snolib/host.[ch]: changed HOST_SYSTEM to HOST_SYSCMD
	lib/snolib/host.c: no longer need to set RETTYPE before RETINT()
		handle REAL and integers encoded as strings
	include/load.h: set RETTYPE in RETNULL
	lib/snolib/{delete,file,rename}.c: include equ.h for RETNULL
	doc/snobol4.1: HOST() changes
	CHANGES: HOST() changes

2/7/2002
	snolib/{file,ftp,http,smtp,tcp,url}.sno: s/C-MAINBOL/CSNOBOL4/
	doc/porting.ms: undocument DCMP_BYTES (never needed?)
	lib/init.c: display build date
	CHANGES: add -v
	INSTALL: update --no-gcc --lp64

2/6/2002
	new install-sh (X11 install script)
	configure: find install program/script, set INSTALL
	Makefile2.m4: use INSTALL for make install

2/5/2002
	configure: improve help/usage output
		deal with cc==gcc and --no-gcc
	lib/snolib/ord.c: fix comments; fail on null string
	lib/snolib/environ.c: include config.h
	lib/bsd/suspend.c lib/generic/suspend.c lib/posix/suspend.c: config.h
	new test/ord.{sno,ref} test ORD() function
	test/tests.in: add ord.sno

2/4/2002
	configure: get along without config.guess
		add more non-gcc compiler opt(timizat)ions
		add --fast
		Use -O2 w/ SunOS4 cc (don't optimize data_init.c)
	timing: check if config.guess exists
	removed config.guess
	genc.sno: handle 3-way LEXCMP (used in SORT)
	Makefile2.m4: include h.h in build.c for non-ansi compilers
	cc-M: perform basename on object files

1/30/2002
	configure: don't compile data_init.c w/ -O2 on Darwin
		add --double; add NO_BITFIELDS variable
		rework LP/LONGLONG/NO_BITFIELDS
		use ~(VFLD_T)0 for SIZLIM
	CHANGES, INSTALL: add --double
	genc.sno: flush D_RV() function, use pre-existing RV()!

1/28/2002
	INSTALL: ran ispell, C-MAINBOL -> CSNOBOL4
	README, History: C-MAINBOL -> CSNOBOL4
	configure: output explicit OPT= if NO_OPT

1/27/2002
	Makefile2.m4: install equ.h
	include/load.h: always set RETTYPE in RET{INT,REAL} macros
	lib/{chop,cos,exp,fork,findunit,log,serv,sin,sqrt,sset,tan,ord}.c:
		include equ.h
	doc/load.doc: describe LA_STR_{PTR,LEN}

1/26/2002
	v311.sil: set MAXLNGTH to SIZLIM; increase FNLIST space to 40 slots
	CHANGES: mention MAXLNGTH
	lib/hash.c: defend against Sun compiler bug
	Makefile: fix spotless, comment cleanup options
		rename clean to cleanmostly
		rename distclean to clean
		replaced make tar; removed TAR, G1 (reuse G2)
	lib/snolib/logic.c: use pointers to const for inputs
		handle bases upto 36; no longer use strtol(), getstring()
	include/load.h: make LA_STR_PTR() return ptr to const
	config/vms/descrip.mms: add logic; move defines to config.h
	config/win32/ntmsvc.mak: add logic; move defines to config.h
	config/borland/borlandsnob.mak: add logic; mov defines to config.h
	config/djgpp/{borlandsnob.mak,mak1i.bat}: add logic
	new: config/{vms,borland,win32}/config.h

1/25/2002
	doc/porting.ms: update vfld/NO_BITFIELDS; add SIZLIM data models
	include/snotypes.h: drop default SIZLIM back to 0x7fffffff
	configure: redefine SIZLIM to 0xffffffff if using 64-bit INT_T
		add --no-bitfields
	INSTALL: document --no-bitfields
	timing: move psrinfo to generic location (SunOS5 and Tru64 v5)
	new: test/test.dump.sh: massage MAXLNGTH output
	test/tests.in: use "dump" script for a.sno, dump.sno
	test/{a,dump}.sno: massage for "dump" test script

1/24/2002
	genc.sno: rename ENTER to ENTRY, flush ';' and label
		avoid cast and parens for integers in SETAC
		avoid parens for simple constants for SETAC
		saves 4094 bytes in snobol4.c
		(7928 with yesterday's changes)
	include/macros.h: rename ENTER to ENTRY, output label
	Makefile: don't have Makefile2 depend on GENERATED files
		move GENERATED to before Makefile2
		add "make tidy"

1/23/2002
	timing: add psrinfo, sysDescr for OSF/1
		use ARGS when running timing.sno
	doc/ports.doc: last of old reports! add new ones
	genc.sno: clean up output (snobol4.c is 3838 bytes smaller)

1/22/2002
	lib/snolib/logic.c: cleanup
	v311.sil: make LABEL() honor case folding
		add experimental FUNCTION() predicate
	new: test/function.{sno,ref}
	test/tests.in: add function.sno
	test/label.{sno,ref}: update for case folding
	globals: add FUNCTN
	gensyn.sno: use ALPHA and ALPHANUM variables; fix ALPHANUM!
	doc/ports.doc: update!
	CHANGES: updated

1/21/2002
	v311.sil: add LABEL() and VDIFFER() functions
		updated Table of Contents
	globals: add LABEL and VDIFFR
	doc/snobol4.1: document LABEL() and VDIFFER()
		do some bolding
	new: test/{label,viffer}.{sno,ref}
	test/tests.in: add label.sno, vdiffer.sno
	timing: if 00README.CVS exists, display CVS/Entries
	new snolib/logic.sno, lib/snolib/logic.c
	pml.h: add LOGIC (but not prototype)
	Makefile2.m4: fix install (VERS/pv)
	include/load.h: add LA_STR_{PTR,LEN}

1/20/2002
	started logic.c

1/19/2002
	Makefile2.m4: add star bars

1/18/2002
	configure, INSTALL: add --no-opt
	gensyn.sno: shake off dust; use TERMINAL, SUBSTR()
		use CHARSET, own ORD() function to allow bootstrapping
		take input file from command line
	Makefile: pass right input file to gensyn.sno!
	doc/Makefile: rename porting.doc to porting.txt
		add ALL, PORTING variables
		make snobol4.pdf (by default)
		add "make porting"
		add "make clean"
	doc/snobol4.1: update LOAD(), charset discussions
	v311.sil: fix compiler syntax error pointer display
		fix internal error trying to compile " ()("

1/17/2002
	INSTALL: add more --add-opt= discussion
	CHANGES: updated
	timing: show History RCSID
	v311.sil: up hash table size to 8192, define shift factor (OBSFT)
		fix lexical comparison function optimizations; add to index
	test/lexcmp.{sno,ref}: new version -- test null strings
	lib/hash.c: Use Bob Jenkins' hash function; real assention value
		5% decreases in genc.sno compile & run times

1/16/2002
	Makefile: use $(CC) to build bsdtsort
	INSTALL: note OPT defaults to -O2 with gcc
		enhance --add-opt= and --opt= discussions
		ask for gifts

1/15/2002
	configure:
		renamed autoconf to configure
		retabbed
		output to config.m4 explicitly
		added --debug option
		rework option processing; always m4 quote values
		add --add-define to usage
		add OPT variable; use -O2 for gcc
	Makefile: remove autoconf from kit
		rework tsort comments
		move tools to top
		added pkg to kit
	timing: check if FREQ is non-empty; check for 00README.CVS
	renamed lib/borland to lib/msdos
	config/borland/borlandsnob.mak: renamed lib/borland to lib/msdos
	config/win32/ntmsvc.mak: renamed lib/borland to lib/msdos
	doc/load.doc: update, mention dt.h

1/14/2002
	Makefile: use find | xargs for "make clean"; catch CVS .# files
	lib/snolib/host.h: update comments for Catspaw functions
	snolib/spitbol.sno: add aliases for HOST() functions

1/13/2002
	new: 00README.CVS
	new: bsdtsort.c
	Makefile: use bsdtsort
	Makefile2.m4: remove pv reference
	lib/unix98/load.c: remove NO_UNDERSCORE ifdef
	autoconf: set TRY_UNDERSCORE directly; set for darwin
	doc/snobol4.1: updated
	doc/load.doc: updated

1/12/2002
	lib/init.c: take -d and -P in descriptors (again)
		add showk(), rework p() function
		make -v display just version
	README: add host.sno
	INSTALL: update

1/10/2002
	autoconf: split generated/on lines

1/9/2002
	new: lib/snolib/host.h -- HOST() function codes
	lib/snolib/host.c: use host.h, handle arbitrary string "codes"
		add pmstack, dynamic region size functions
		add char bits
	new: host.awk -- create host.sno from host.h
	timing, timing.sno: use host.sno, report GC's
	Makefile2.sno: add GENSNOLIB for host.sno installation
	lib/init.c: allow NDYNAMIC override, add PSSIZE, allow override
		accept 'm' suffix on region sizes
		accept -v for version
		globals for pmstack, dynamic region size functions

1/8/2002
	doc/Makefile: use groff -Thtml

1/7/2002
	test/tests.in: add crlf.sno
	test/crlf.{sno,ref}: program and data with CR/LF at end of line

1/6/2002
	lib/io.c: toss CR's for DOS files transferred in BINARY mode
		or on Cygwin for files transferred in ASCII mode!
	Makefile: get tsort.sno from parent directory
	v311.sil, globals, procs: rename CON to CONCAT for Cygwin build
	timing: move cygwin EXT check to top; fix blank lines
	autoconf: add --no-inline; rework largefile code again: add USE_FLAGS

Clean builds on: SunOS 4.1.4; Solaris 2.4, 2.5.1, 2.6, 7, 8
	FreeBSD 3.4, 4.4; OSF1/DU/Tru64 3.2, 4.0; IRIX 6.2, 6.5
	Darwin 5.1 (MacOS X); NetBSD/i386 1.5ZA; Cygwin 1.3.3
	HP-UX 10.20, 11.0; AIX 4.3; RH Linux 5.1, 6.0, 7.0, 7.2

1/5/2002
	timing: on HP-UX, try getconf MACHINE_MODEL if "model" cmd not found
	autoconf: use XBS5_LP64_OFF64_{C,LD}FLAGS on IRIX for --lp64
		set XBS5_MODEL on AIX if using native compiler; LFS_CFLAGS
			is not supported.  Don't try to turn on large
			file support under lp64 compilations.  Save
			extra large file getconf values using
			ADD_OPT()
		allow --lp64 builds under AIX (not tested); set ARFLAGS
		Darwin: alias "GT" (conflicts with curses global?)
	Makefile2.m4: use ARFLAGS for AIX lp64
	lib/ordvst.c: remove an old comment

1/4/2002
	autoconf: canonicalize "using" messages to lowercase
		make LARGEFILE checks glibc aware, add --no-largefile back!
		update for Darwin (cc define __GNUC__ but not __gcc__)
			get right path for mach-o/dyld.h (dlopen available)
			add LDFLAGS for libdl
		add HAVE_STDARGS_H check -- Darwin varargs is broken?
	timing: remove CCVERS, show build.c contents
		grep for Id in timing, timing.sno
		clean up BSD sysctl, CPU display
		prefix Linux releasefile
		treat Darwin like BSD (use sysctl hw)
	timing.sno: removed Revision, add ERROR/WARNING prefixes
		display TERMINAL messages at end for WARNINGS/FATAL
	io.c: check HAVE_STDARGS_H (was USE_STDARGS_H)
	lib/ordvst.c: include stdlib.h before h.h for FreeBSD 3.4
	lib/snolib/retstring.c: include stdlib.h before h.h for FreeBSD 3.4

1/3/2002
	autoconf: define CONFIG_HOST, CONFIG_OPTIONS (only if non-null)
	lib/snolib/host.c: add CONFIG_HOST, CONFIG_OPTIONS, reorder 2xxx
		add integer constants (23xx range)
	Makefile: push SNOBOL4 variable down to Makefile2, add TSORT variable
	Makefile2.m4: add SNOBOL4 variable

1/1/2002
	autoconf: disable largefile/getconf cleverness -- glibc getconf botch

12/31/2001
	lib/dummy/mstime.c: add comment to use time()
	lib/io.c, lib/str.c: tweaks (casts) to work on sparc w/ --longlong
	Thank God It's Over

12/29/2001
	lib/io.c: fix sset cast; tested SSET; use HAVE_FSEEKO (or lack thereof)
	autoconf: detect largefile support, always use it, define HAVE_FSEEKO
		detect SIGTSTP on Solaris 8

12/28/2001
	wrote count-procs script

12/27/2001
	genc.sno: make callgraph file tsort friendly
	Makefile: move tsort out to seperate command
		so we can detect errors from bogus tsort programs
		use new callgraph format
	v311.sil, procs:
		rearrange some code to avoid functionization
		eliminate procs (and loops): TRAC{1,4,6},STOPT1,RECOM{N,F,Q,T}
	INSTALL: add "Advanced configuration" section
		(information on local-config, local-defines)
	README: add chars.sno
	new: snolib/chars.sno: character sets

12/26/2001
	CHANGES: update configure options
	lib/io.c: add %G
	v311.sil: use %G for us/stmt
	autoconf: LP64 comments, GETRUSAGE_BUG for openbsd, select suspend.c
		changed cygwin32 to cygwin, check sys/signal.h for sigset_t
	lib/{bsd,posix}/tty.c: fix bad return in find...
		add tty_invalidate, ran comdef
		keep "last" dev_t used
	lib/{endex,init,io,stream,posix/tty}.c: kill unused variables
	include/macros.h: fix cast in OFCHK() to kill warnings
	timing.sno: allow integer compile/execute time/avg

12/25/2001
	config.guess: updated to latest
	Makefile2.m4: add suspend.o, SUSPEND_C
	Makefile: add .NOTPARALLEL
	lib/init.c: add suspend handler, remove tty_save() call
	lib/endex.c: remove tty_restore() call
	lib/posix/tty.c, lib/bsd/tty.c:
		keep state by device dev_t
		flush tty_save(), tty_restore()
		add tty_suspend()
	lib/snolib/serv.c: add SIGFUNC_T for fireman, casts for bzero() args
	lib/bsd/inet.c: cast bzero() args
	new: lib/posix/suspend.c: POSIX process suspension
	new: lib/bsd/suspend.c: BSD42 process suspension
	new: lib/generic/suspend.c: generic process suspension
	new: lib/dummy/suspend.c: dummy process suspension
 
12/21/2000
	Makefile: don't need to pass SIL to Makefile2
	lib/posix/tty.c: restrict recl to 0xff

12/20/2001
	Makefile: consolidate .PRECIOUS lines, add data_init.h
	Makefile2.m4: create and compile build.c before linking
	host.c: add HOST(2001) ... HOST(2005) -- build variables
	include/load.h: handle const strings in RETSTR()

12/19/2001
	INSTALL: updated
	autoconf: always define CONFIG_GUESS for HOST(2000)
	lib/snolib/host.c: add HOST(2000); display CONFIG_GUESS
	timing.sno: display HOST() and HOST(2000)

12/18/2001
	timing: show Ids from genc.sno, v311.sil
	README: updated.  Include snolib file information, web docs.
	lib/{ansi,borland,bsd,dummy,generic,posix,vms,win32}/mstime.c,
	    v311.sil, timing, genc.sno, include/snotypes.h, test/test.trace.sh:
		Keep runtime as a REAL (adds range at loss of
		resolution) effects all contexts; TIME(), trace
		messages, stats messages report microseconds/stmt.
	Makefile, Makefile2.m4: moved data_init.o rule back to Makefile2!
		add comment on DATA_INIT_CFLAGS and local-config
		add $(SRCDIR) prefixes for $(SNOBOL4).c
	Makefile: removed charset.c from TAR
	data_init.c: merged in stuff from charset.c
	lib/init.c: add '+' to start of getopt() optstring for RH7.
		Linux Losers chose incompatible behavior as the DEFAULT!!!
		For "snobol4.c -b genc.sno --inline" getopt was picking
		up the '--' "option"!!!
	removed: charset.c -- merged into data_init.c

12/17/2001
	Makefile2.m4, autoconf: add EXT variable for Cygwin
	test/tests.in: fix scanerr entry
	v311.sil: use CASECL to determine if compiler done at FTLEN2
		ETMCL can be zero on fast systems with bad resolution!
	timing.sno: remove crock for zero execution times

12/16/2001
	autoconf: check LONGLONG seperately for doubles, improve comments
		improved(?) getrusage() detection and comments
		only try LP64 on hppa*w architecture
	charset.c: was ASCII dependant.  use just numeric constants
	timing.sno: crock for zero execution times

12/15/2001
	snolib/wrapper.sno: update TODO, comment out tests
	Makefile: removed bugs dir from TAR list

12/14/2001
	INSTALL: document --add-define= --longlong

12/13/2001
	new: test/scanerr.{sno,ref} scanner error case tests
	test/tests.in: add scanerr
	new: config/djgpp/lots: build scripts for DOS/DJGPP from B.Meissner
	new: lib/djgpp/load.c: DXE based load from Burkhard Meissner
	lib/bsd/inet.c: flatten hostnames to upper case for WATTCP/DOS
	lib/win32/inet.c: borland ifdef/include's
		from Greg White <glwhite@netconnect.com.au> 8/30/2000
	new: Borland make/batch files from Greg White;
		config/borland/{borlandmake.bat,borlandsnob.mak}
		config/borland/{win95test,win95tlist}.bat
	new: snolib/wrapper.sno -- create wrappers for LOAD()ables
	lib/bsd/load.c lib/dummy/load.c lib/hpux/load.c	lib/next/load.c
		lib/unix98/load.c lib/win32/load.c genc.sno:
			renamed link() to callx() to avoid unistd.h conflict
	Makefile: removed []'s carried over from Makefile2.m4
		added "make generated"

12/12/2001
	CHANGES: updated
	autoconf: fix Solaris, Linux
		include date, host, sys info in config.h
	timing: ls -l config.h

12/08/2001
	Makefile, Makefile2.m4: move source generation up to Makefile 
		allows clean cvs checkout to build (with existing binary)
		added "make spotless"

12/06/2001
	include/load.h: RETSTR() takes single arg, handles NULL
		all RETxxx macros wrapped in do { ... } while(0)
	pml.h, Makefile2.m4: add ORD() to snolib.a, PML it
	doc/snobol4.1: add ORD()
	win32/mstime.c: fix Win9x NO_STATIC_VARS

12/05/2001
	win32/mstime.c: fix Win9x version
	timing.sno: ignore zero shell time (cygwin)

12/04/2001
	autoconf: create config.h, add --add-define=
		use longlong/c99 functions when --longlong given
	Makefile2.m4: flushed $(CONFIG_GUESS) $(SYSDEFS), install config.h
	generic/intspc.c: fix comment, add cast
	tested --longlong (on FreeBSD)
	data_init.c: include config.h (for INT_T)
	lib/io.c: use int_t for io_print unit
	lib/longlong/spcint.c: ad hoc implementation (untested)
	new: c99/spcint.c c99/intspc.c
	timing: display config.h contents

12/02/2001
	LOTS: add 'ifdef HAVE_CONFIG_H/include "config.h"'
		(done using a SNOBOL4 program, of course!)

11/15/2001
	split {ansi,generic}/convert.c into {ansi,generic}/{spcint,spreal}.c
	moved intspc.c to generic/
	updated Makefile2.m4, config/vms/descrip.mms, config/win32/ntmsvc.mak
	add serv.sno to snolib/

11/13/2001
	lib/io.c: move osdep_open to top, move popen() to end

09/26/2001
	lib/win32/inet.c: added wVersionRequested variable

08/16/2001
	lib/snolib/serv.c: re-arm fireman at end of handler
		(to avoid zombie creation)

04/29/2001
	doc/snobol4.1: document SSET()

04/26/2001
	autoconf: fix long long, always set PML_SERV
	pml.h: add SERV_LISTEN (under ifdef PML_SERV)
	Makefile2.m4: add SERV_C, add serv.o to SNOLIB_OBJS

03/28/2001
	timing: add SuSE-release

01/18/2001
	autoconf: use win32/mstime.c under Cygwin

01/13/2001
	autoconf: add --longlong
	include/macros.h: cast pointer args for bzero/bcopy to void *
		so that we can use 64-bit ints when pointers are only 32-bits
	include/snotypes.h: allow INT_T to be redefined (default to long)

01/04/2001
	timing: add .exe EXTension if needed, for cygwin
	timing.sno: handle zero execution time (cygwin on win9x)
	autoconf: only add -ldl on SunOS (all flavors)

12/08/2000
	timing: improved for OpenBSD

11/14/2000
	autoconf: add --no-largefile, ARCH_OPT, add Id, options output
	config/vms/descrip.mms: make DEC C the default
	INSTALL: document VMS change, -lp64, --largefile, --no-largefile

11/07/2000
	lib/ordvst.c: declare ordvst_cmp() to take void *'s
	lib/posix/term.c: add ifdef HAVE_UNISTD_H
	removed; lib/generic/term.c

11/06/2000
	autoconf: major rework; disposed of ALL config/*.m4 files
	timing: run "file" command on executable

11/03/2000
	new: config/64bit.m4
	removed: config/{sony_news,ultrx-mips}.m4 (empty)
	config/{irix64,ultrasparc64,irix64}.m4: use 64bit.m4
	lib/next/load.c: NextStep (and MacOS X) LOAD() support
	autoconf: figure out which load.c to use
		removed sunpro goo        
		removed empty config files
		use $INCDIR in dynamic.c tests
	config/{bsd43,netbsd-alpha,nextstep3,osf1}.m4,
		config/skel.inc: remove all LOAD_C settings

10/28/2000
	config.guess: add darwin (MacOS X),
		from www.darwinfo.org/pub/darwin/devel/config.guess
	autoconf: add darwin, help from Russ Urquhart

10/12/2000
	timing: display CPU: line from /var/run/dmesg.boot on BSD systems

9/22/2000
	timing: display mandrake-release file, add "break"


9/14/2000
	autoconf: check for libsocket.so (in case SUNWarc not installed)

9/13/2000
	autoconf: fix dynamic.c messages

8/23/2000
	lib/generic/convert.c: fixed pasteo's thanks to
		"Greg White" <glwhite@netconnect.com.au>

8/21/2000
	autoconf: add NetBSD ELF check

8/15/2000
	timing: display slackware, turbolinux, debian RELEASE files

8/14/2000
	timing: display redhat-release, SuSe-release files

8/5/2000
	Fix for FreeBSD 4.x;
	autoconf: check for /usr/include/sys/vadvise.h to select dynamic.c
	config/nextstep3.m4 config/osf1.m4 config/skel.inc: remove DYNAMIC_C
	timing: display machdep.tsc_freq on FreeBSD

7/25/2000
	new file lib/snolib/serv.c
	autoconf: detect ELF on FreeBSD and add -export-symbolic, NO_UNDERSCORE
		add -export-symbolic on ELF Linux systems
	lib/unix98/load.c: add NO_UNDERSCORE

1/6/2000
	config/ultrasparc64.m4: config for solaris7 64bit env (tested)
	autoconf: emit HAVE_STDLIB_H
	main.c lib/init.c lib/io.c lib/ordvst.c
		lib/{bsd,generic}/dynamic.c lib/{bsd,posix}/tty.c
		lib/generic/popen.c lib/{hpux,unix98,bsd}/load.c:
			use HAVE_STDLIB_H for malloc/getenv

12/17/99
	timing: use psrinfo if available on suns

8/8/99
	config/borland/build.bat: add sset
	config/vms/descrip.mms: add sset
	config/win32/ntmsvc.mak: add sset
	lib/vms/popen.c: add retlen cast (for Alpha)
	lib/vms/tty.c: remove trailing NULs

7/2/99
	timing: use ./xsnobol4 (in case . not in user PATH)
		redirect sysctl stderr (some garbage on BSDI 4.0)
	autoconf: check for libdl in /shlib (for BSDI 4.0)

5/2/99
	autoconf: add mtxinu43, check for missing finite() on hpux
	new: config/mtxinu43.m4, lib/hpux/finite.c

5/1/99
	lib/win32/inet.c: add setsockopt, get_osfhandle, (short) casts

4/27/99
	snolib/http.sno: request 8k record length
	lib/snolib/sset.c: use oof parameter to io_sseek
	lib/io.c: fixed io_findunit, io_sseek
	Makefile2.m4: add sset.o

4/16/99
	config/vms/descrip.mms: fixes for AXP/DECC (not tested in 4 yrs?)

4/12/99
	lib/win32/sys.c: fix osname()
	Makefile2.m4: set SHELL=/bin/sh

3/12/99
	Add Experimental scaled SET interface; 
	lib/io.c: add io_sseek()
	pml.h: add SSET
	new lib/snolib/sset.c

3/3/99
	INSTALL: update for --prefix

2/26/99
	Tested on FreeBSD 3.1
	autoconf: look for getopt in unistd.h
	timing: look for sysctl in /sbin

2/2/99
	Makefile2.m4: add SHELL=sh for IRIX

1/22/99
	lib/win32/mstime.c: fix if(n)def NO_STATIC_VARS

1/14/99
	lib/{win32,vms}/inet.c: removed HAVE_SOCKADDR_LEN

1/8/99
	INSTALL: updates from John Refling <johnr@spimageworks.com>
	Makefile2.m4: remove $(MANPATH) first (from John Refling)
	README: add John Refling!

12/31/98
	updates from trying to make a FreeBSD "port";
	autoconf: add --prefix
	Makefile: change "default" to "all"
	Makefile2.m4: use PREFIX

12/28/98
	v311.sil, test/a.ref, test/dump.ref: fixed CASECL position

12/26/98
	autoconf: add --largefile
	lib/io.c: use ftello/fseeko thruout (crock ifdef on _LARGEFILE_SOURCE)

12/23/98
	lib/win32/sys.c: fix typo

12/19/98
	lib/bsd/inet.c, autoconf: removed HAVE_SOCKADDR_LEN

12/18/98
	autoconf: experiment: try setting _FILE_OFFSET_BITS to 64
		on Solaris 2.6 for Phillip Thomas

12/17/98
	config/vms/descrip.mms: tested, fixed

12/16/98
	Makefile: add .depend dependancy!
	Makefile2.m4: removed HAVE_UNISTD_H variable
		add explicit rules for version.o main.o data.o syn.o
	autoconf: check stdlib.h for getopt()
		flushed HAVE_UNISTD_H variable
		prefer gcc on sun4u systems!
	config/bsd44.m4 config/ansi.m4 config/bsd43.m4
		config/generic.m4 config/hpux-68k.m4
		config/netbsd-alpha.m4 config/nextstep3.m4
		config/osf1.m4 config/posix.m4 config/skel.inc
		config/ultrix-mips.m4: add $(SRCDIR)
	lib/bsd/mstime.c: set last_mstime!
		changed NO_GETRUSAGE_BUG to GETRUSAGE_BUG
	lib/date.c lib/generic/expops.c lib/unix98/load.c
		lib/realst.c lib/str.c lib/auxil/getopt.c
		lib/snolib/chop.c lib/snolib/cos.c
		lib/snolib/exp.c lib/snolib/log.c
		lib/snolib/sin.c lib/snolib/sqrt.c
		lib/snolib/tan.c: include system files first (to get __P)
	timing: make seperate symlink for snobol4 binary; remove .. prefix

12/14/98
	config/vms/descrip.mms: use vms inet.c!
	config/win32/ntmsvc.mak: use win32 inet.c!
	new lib/vms/inet.c: VMS only version
	new lib/win32/inet.c: winsock version; call WSAInit/Cleanup
	include/vars.h: add wsock_init

12/12/98
	timing:
		redir lsattr stderr to stdout (in case proc0 not found)
		avoid builtin "time" command if possible (for AIX4, OpenBSD)
	timing.sno: add "User" pattern for AIX4
	Makefile:
		add "default"; AIX4 make was making all the targets!
		moved "clean", "realclean" from Makefile2
		added "distclean"
	Makefile2.m4: moved "clean", "realclean" to Makefile
	autoconf: output libdl instead of -ldl
	config/osf1.m4: added -D_SOCKADDR_LEN

11/23/98
	lib/io.c: pass mode to osdep_open()
	doc/porting.ms: update

11/09/98
	config.guess: updated to new version
		added romp-ibm-aos
	autoconf: try use of dlopen() on 64-bit HP-UX
	genc.sno: process options
	Makefile2.m4: use genc.sno --inline option instead of inline.sno
		removed inline.sno from TAR files

11/02/98
	lib/vms/mstime.c: use CLK_TCK if available

10/31/98
	lib/bsd/mstime.c: avoid negative runtime deltas

10/22/98
	README: updated

8/18/98
	lib/win32/sys.c:
		add Win98
		suppress version numbers on Win95/Win98
		strip leading spaces from szCSDVersion

7/23/98
	autoconf: added cygwin32 test

6/12/98
	include/macros.h: change APDSP to call apdsp function
		after checking for non-zero length!
	lib/str.c: new apdsp function; call bcopy if above
		threshold (else do simple copy)
	12% reduction in genc.sno compile time
	 7% reduction in genc.sno run time

Made 060298.tar.gz; fetched by;
	Charles Wardell <cwardell@skila.com>

5/30/98
	Changes to allow building a Win32 DLL out of SNOBOL4;
		(under ifdef NO_STATIC_VARS)
	Makefile2.m4: add syn_init.{h,h2}
	data_init.c: include vars.h
	gendata.sno: bracket equ.h & res.h against multiple includes
		include BUFFERs in res struct; ifdef struct res decls
	gensyn.sno: output syn_init.h (included by generated syn.c)
	main.c: allocate vars struct; call init_syntab
	parms.h: include vars.h
	version.c: include vars.h; update to 0.99.4++
	include/vars.h: new include file for static vars struct
	include/macros.h: ifdef math_error decl
	lib/{expops,endex,stream,date,ordvst,intspc,realst,init}.c: vars.h
	lib/{ansi,generic}/convert.c: include vars.h
	lib/win32/{load,mstime,tty}.c: keep static in vars.h storage
	lib/snolib/{host,retstring}.c: use vars.h

5/29/98
	lib/io.c: moved all static vars to "struct iovars" for DLL'ification
		units array and indexing now hidden by INTERN and FINDUNIT
		ran comdef

5/6/98
	autoconf: seperate --no-dynlib and --no-dlopen options

4/9/98
	doc/ports.doc: updated

3/7/98
	lib/bsd/inet.c: comments, ran comdef
	lib/win32/mstime.c: swap old & new in subtraction!

3/3/98
	lib/win32/load.c: rework load path handling;
		try bare filename first, then prepend snolib dir
	lib/bsd/inet.c: define "unix" (for HP-UX, AIX)

3/2/98
	doc/load.doc: talk about HP-UX and getstring()
	README: fix Steve Kibler's name!

3/1/98
	config/vms/descrip.mms: add .ifdefs (for DEC_C, NO_TCP)
	INSTALL: document VMS MMS/MACRO= options

2/26/98
	lib/hpux/load.c: keep seperate "lib" struct with refcounts

Gave to Steve Kibler (Win32 DLL port) 2/24/98

2/15/98
	INSTALL: updated

2/14/98
	config/borland/build.bat: add exists.c
	genc.sno: check for zero integer divisor, use RMATH_ERROR() macro
	include/macros.h: add RMATH_ERROR(); calls finite()
	config/win32/ntmsvc.mak: add -Dfinite=_finite
	new lib/dummy/finite.c
	Makefile2.m4: add FINITE_C
	autoconf: add finite.o

2/13/98
	config/win32/ntmsvc.mak: add exists.c

2/12/98
	new lib/vms/unlink.c: use delete function!
	lib/io.c: fixed TTY_READ_COOKED (noeol arg, accept empty lines)
	lib/vms/popen.c: fixed typo
	lib/vms/sys.c: blows on VAX up unless debug puts() present?
	lib/vms/tty.c: fixed term/termlen swap
	config/vms/descrip.mms: updated (works on uVAX 3100 under VMS 6.1)!
	removed build.com

2/10/98
	config/vms/{build.com,descrip.mms}: updated
	lib/stream.c: renamed index variable for VAX/VMS cpp
	lib/io.c: include res.h for VAX/VMS CC
	lib/bsd/inet.c: ifdef includes for VMS
	lib/vms/tty.c: fix typo
	lib/vms/popen.c: add <errno.h>
	new lib/vms/exists.c: check for file existance
	INSTALL: cleaned up VMS instructions

2/8/98
	config/win32/ntmsvc.mak: add TTY_C TTY_DEFS NO_BITFIELDS vars
	lib/io.c: add /dev/tmpfile, OSDEP_FOPEN
	README: add L. Gene Battin

2/6/98
	lib/bsd/inet.c: use winsock.h under USE_WINSOCK_H
	config/win32/ntmsvc.mak: USE_WINSOCK_H, use wsock32.lib

2/5/98
	Makefile2.m4: move exists to snolib.a
	config/vms/descrip.mms, build.com: add exists

2/4/98
	lib/dummy/rresvport.c: for NT
	lib/bsd/inet.c: use winsock2.h on NT
	lib/win32/tty.c: fix typos
	new config/win32/ntmsvc.mak: NMAKE file
		add -O2, remove -Za, define __STDC__ as zero to avoid
		losing non-ANSI extensions! define isnan as _isnan

2/2/98
	lib/snolib/file.c: use exists() function
	lib/win32/load.c: use exists() function
	new lib/generic/exists.c, lib/win32/exists.c
	ntmsvc.bat: add -DUSE_STDARG_H, -DUSE_WINSOCK_H
		removed dump.{c,obj}
	Makefile2.m4: add exists.c, EXISTS_C
	lib/bsd/inet.c: add USE_WINSOCK_H ifdef (ugh)

1/28/98
	Fixed up ntmsvc.bat with help from Bert Vincent
	add win32/rename.bat to fix truncated filenames
	new lib/win32/tty.c

1/27/98
	lib/win32/sys.c: worked first try; made it better
	lib/win32/load.c: now compiles
	tested win32 popen-- works on NT 4.0
	lib/bsd/inet.c: added NEED_SOCKADDR_LEN ifdef
	autoconf: add INCDIR; define NEED_SOCKADDR_LEN if needed

1/26/98
	config/win32/ntmsvc.bat: removed some rem's, use new files!

1/5/98
	new lib/win32/popen.c: use MSVC _popen() UNTESTED!!
	new lib/win32/load.c: use LoadLibrary() UNTESTED!!
	lib/win32/sys.c: use GetSystemInfo() for hw type
		use GetVersionEx for O/S
	lib/win32/mstime.c: use GetSystemTime() and SystemTimeToFileTime()
		if GetProcessTimes fails (only implemented on NT?)

12/23/97
	include/h.h: add __P macro
	include/snotypes.h: add SIL_FUNC_PROTO macro
	include/syntab.h: add prototypes for functions in stream.h (if'ed out)
	lib/realst.c: declare void return
	lib/stream.c: fix accidental parameter removal?
	genc.sno: put silpath in top comment
	New include/lib.h: lib file prototypes (not used)

12/22/97
	New lib/win32/sys.c, lib/win32/mstime.c: UNTESTED, UNUSED
	README: add David Feustel

12/21/97
	New config/win32/tlist.bat
	New config/win32/nttest.bat
		David Feustel's WinNT reression test batch files

12/17/97
	New config/win32/ntmsvc.bat:
		David Feustel's WinNT batch file using MS VC++ 5.0

12/10/97
	Fixes from David Feustel's WinNT port;
	config/borland/build.bat: add missing files
	lib/io.c: added NEED_POPEN_DECL

12/5/97
	doc/snobol4.1: fix typo (thanks to Phillip Thomas)

Gave to David Feustel 12/3/97 for WinNT port (0-99-4xx.zip)
Gave to Phillip Thomas 11/23? for tcp/findunit fixes

11/23/97:
	lib/init.c: catch SIGPIPE!
	lib/io.c: write newline directly if unbuffered
	Makefile2.m4: send test results to stdout

11/22/97:
	lib/bsd/inet.c: removed extra "int port" decl

11/21/97:
	Fix io_endfile() exhaustion reported by Phillip Thomas
	lib/io.c: io_closeall(); return status, free file blocks
		io_endfile(); call io_closeall(), even if no curr!

11/16/97:
	lib/generic/expops.c: use int_t in SIGN cast

11/8/97:
	doc/porting.doc: NO_UNBUF_RW
	Makefile2.m4: install .h files in snolib dir
		make hard link for snobol4-VERS
		touch snobol4 after hard link
			to ensure newer than snobol4.c

11/7/97:
	v311.sil: removed keyword tracing for &ERRTEXT
		didn't work (output as integer)
		neither SNOBOL4+ nor SPITBOL allow it

11/5/97:
	v311.sil: replace PROC with XPROC on merged scanner procs
	snolib/spitbol.sno: set &FULLSCAN = 1
	gendata.sno: get input filename using HOST() functions
	genc.sno: get input filename using HOST() functions
		add missing "new" SIL op names to comments
		add new XPROC op
	Makefile2.m4: pass SIL file to genc, gendata on command line
	lib/dump.c: use X_BKSIZE() in dump_dyn()
	timing: link v311.sil into timdir, and pass on command line to genc.sno
	include/macros.h: check second character in LEXEQ()

11/4/97:
	lib/init.c: increase default dynamic space to 64K descrs
	Makefile2.m4: removed -d512k arg from SNOBOL4 command
		(could reduce workspace in 64bit environs)
	genc.sno: use X_BKSIZE and X_GETLTH macros
	include/macros: add X_BKSIZE and X_GETLTH macros

10/30/97:
	lib/pat.c: make inlinable
	parms.h: inline pat.c
		8% reduction in genc.sno compile time
	v311.sil: catch bad data at PATBRA

10/29/97:
	lib/vms/{tty,getredirect,term}.c: flushed xxx_file hacks
		always use fgetname()

10/28/97:
	genc.sno: add IND before "hash()"
	v311.sil: merge scanner functions into SCIN1
	globals, procs: removed scanner functions
		genc runtime reduced 15%
		avoids nasty mutual recursions, stack overflows
		atn.sno runtime reduced by 63%!! (2.7x faster)
		worst case (4096 char string) reduced 69% (4.8x faster)
		snocone self-compile runtime reduced 5%

10/27/97:
	lib/io.c: perform lseek() directly on unbuffered units
	config/hpux.m4: removed -Dconst (now done in h.h)
	snolib/ftp.sno: add mode arg to FTP.DATA.COMMAND
			add TCP.DATA.CLOSE function
			fix anon open error return

10/24/97:
	v311.sil: allow REALs in INTVAL for Stephen Del Rea (from SNOBOL4+)
	snolib/snobol4+.sno: removed CONVERT() calls
	snolib/url.sno: use file.sno for local files
	test/tests.in: add intval
	New snolib/file.sno: local file ops for URLs
	New test/intval.sno test/intval.ref tests

10/11/97:
	snolib/http.sno: add "Host: " to request

10/10/97:
	snolib/snobol4+.sno: accept REAL offset argument to SEEK()!
	lib/vms/sys.c: removed OSNAME, trim trailing spaces from version

10/10/97:
	snolib/snobol4+.sno: add SEEK()
		
10/5/97:
	New h/dt.h; struct definitions for SNOBOL4 datatypes
	include/h.h: define dummy const & volatile if __STDC__ == 0
	lib/dump.c: use dt.h
	
10/3/97:
	lib/vms/sys.c: use SYS$GETSYIW to get architecture and VMS version
	lib/{bsd,dummy,posix,vms}/tty.c: add fname arg to fisatty
	lib/io.c: add FL_INPUT and FL_OUTPUT flags
		add fname arg to fisatty

10/1/97:
	New lib/borland/tty.c
	config/borland/build.bat: define TTY_READ_RAW, use borland/tty.c

9/30/97:
	Fixed (integer) math error handling;
	lib/init.c: declare math_error volatile
	include/macros.h: declare math_error extern volatile
	include/h.h: dummy out volatile on non-ansi compilers

9/29/97:
	doc/ports.doc: updated

9/27/97:
	gensyn.sno: set exit code if input file not found
	lib/realst.c: fixed comment
	doc/porting.ms: updated, merged, sorted ifdefs

9/26/97:
	lib/io.c: pass raw, keepeol flags to tty_read()
		add seperate TTY_READ_{RAW,COOKED} ifdefs
	lib/vms/tty.c: add back "raw" arg; support cooked reads (not used)
		add keepeol arg; use fgetname() to get fname for ASSIGN
		add TRMNOECHO (for cooked)
	config/vms/{build.com,descrip.mms}: TTY_READ_{RAW,COOKED}
	New: snolib/ftp.sno

9/25/97:
	lib/vms/tty.c: added SUCCESS() macro, NOFILTR flag, term[] mask
	lib/vms/popen.c: added SUCCESS() macro

9/24/97:
	autoconf: accept null string as an option for HPUX9
		problem reported by Yuli Barcohen
	config/borland/build.bat: added lib/generic/popen.c
	lib/io.c: removed NO_POPEN ifdefs
		TTY_READ for binary only, pass fname
	lib/bsd/tty.c: removed "old" and "TTY_SAVE_RECL"
	lib/vms/tty.c: use filenames to assign tty channels
	lib/posix/tty.c: removed "old"; fixed recl saving
	lib/vms/term.c: add term_file, term_fd globals
	lib/vms/getredirect.c: add std{in,out}_file globals
	New: lib/dummy/popen.c: does nothing
	New: lib/generic/popen.c: uses system()

9/23/97:
	lib/generic/expops.c: check for overflow
	New: snolib/smtp.sno snolib/http.sno snolib/url.sno

9/22/97:
	config/vms/{descrip.mms,build.com}: add READ_TTY define
	lib/generic/expops.c: use repeated multiply for expint()
	lib/vms/tty.c: implement tty_read(), tested
	lib/vms/popen.c: tested.  Now available in DEC C RTL??

9/21/97:
	lib/io.c: add io_finish(); 
		much tweaking;
		added TTY_READ ifdef
		call tty_close() even if FL_NOCLOSE set
		free source files when compiler finishes
		make "|xxx" open fail if NO_POPEN defined
	lib/endex.c: call io_finish()
	lib/vms/popen.c: replaced with version from Icon
	config/hpux-pa.m4: removed -mlong-calls per Yuli Barcohen
	timing: check for /bin/model

9/17/97:
	Makefile2.m4: made snobol4 precious
	lib/init.c: catch resource limit signals
	lib/io.c: use fgets() again in io_read(). Only getc()
		for last character, if needed.
	New: lib/vms/popen.c
	New: lib/vms/tty.c my crude attempt at noecho support
	config/vms/{descrip.mms,build.com}: add popen.c, use vms/tty.c

9/15/97:
	New: snolib/snobol4+.sno emulates SNOBOL4+ functions

9/13/97:
	New: snolib/{unique,fence,not}.sno from Peter Arno-Coppen
	New: snolib/spitbol.sno emulates SPITBOL I/O & functions
	snolib/bq.sno: use IO_FINDUNIT()

9/10/97:
	Makefile: replaced seperate 2nd level rules with one using $@
	Makefile2.m4: added SH=sh for IRIX
		replaced TESTED with "snobol4"
		do all cmp's silently
	lib/stream.c: stream tweaking; do put outside loop, use for()

9/9/97:
	v311.sil: Call io_pad() to fix -LIST RIGHT
	lib/io.c: add io_pad() function
	gensyn.sno: CONTIN is always implicit action zero
	lib/stream.c: handle CONTIN quickly (no table lookup);
		CONTIN actions are taken for 97% of characters scanned
		while compiling genc.sno; Compile time reduced by 8%

9/7/97:
	Ran profiling (prof and tcov)
	lib/io.c: only tack on one space to compiler input
	v311.sil: have compiler use length returned by STREAD
		reduces genc.sno compile time by 65%
			an average of 1000 padding spaces were being
			added to each line using 1024 recl.
		reduced 10% below compile time for 80 char recl.
		Use input length for listings; -LIST RIGHT is dead.
	lib/top.c: allow inlining
	parms.h: inline top.c

9/3/97:
	config/vms/build.com, config/vms/descrip.mms: updated
	new file lib/vms/sys.c

9/2/97:
	v311.sil: Implemented fatal "Output error"
		problem reported by Phillip Thomas in June 1994!
	genc.sno: pass iokey to io_output(), add labels to ENFILE
	io.c: return status from io_output(), io_endfile()
	procs: add COMP6

8/29/97:
	lib/unix98.c: add TRY_UNDERSCORE ifdef, enable for FreeBSD
		added mode var, default to zero if RTLD_LAZY not defined

8/20/97:
	lib/realst.c: include stdio.h for SGI -n32 ABI

8/19/97:
	lib/io.c: removed unused vars, fixed typos
	autoconf: fixed irix64 comment

8/13/97:
	configure: check into RCS!  Use ./autoconf

8/12/97:
	INSTALL: replaced autoconf references with configure
	timing: redirect sunmodel standard error output

**************** version 0.99.4 (RCS tag BETA7)

8/11/97:
	version.c: upped to 0.99.4
	CHANGES, README: updated
	doc/snobol4.1: updated date
	doc/load.doc: new sections on shared libraries, I/O functions
	doc/ports.doc: updated version numbers

8/10/97:
	timing.sno: calculate FACTOR before using it! use CHECKHZ()!!
	new test: any

8/8/97:
	doc/ports.doc: updated

8/6/97:
	Makefile: use ./configure
	Makefile2.m4: added configure to tar

8/5/97:
	v311.sil procs syntax.tbl: Code from SNOBOL4+
		seperate syntax tables for BREAK(X) and SPAN
		simple index lookup for ANY/NOTANY
	lib/stream.c: new any() function

8/1/97:
	autoconf: general cleanup
		commented out irix64 detection (does not yet work)
	lib/stream.c: optimized clertb() -- 4% reduction in genc runtime!!

7/26/97:
	gensyn.sno: include h.h before syntab.h for non-ANSI compilers (sos4)
	sunmodel: use hostid on systems without openprom
	timing.sno: use REM to capture version number
	timing: removed "who am i"
	doc/ports.doc: updated

7/25/97:
	v311.sil: cleaned up clearing of compiler variables
	lib/auxil/bzero.c: zero blocks of "words"

7/18/97:
	autoconf: revamped gcc testing for Solaris/x86

7/16/97:
	doc/ports.doc: updated

7/11/97:
	autoconf: use CCVERS to output comments
		add --force-memmove; check for memmove in string.h if
			no bcopy(); define USE_MEMMOVE
	include/macros.h: added USE_MEMMOVE USE_MEMCMP ifdefs
		USE_MEMCMP not set; only necessary if DCMP_BYTES in use (rare)
	lib/bsd/inet.c: include macros.h for bcopy redefn
	INSTALL: document --force-memmove
	doc/ports.doc: updated

7/7/97:
	README CHANGES: updated for 0.99.4

7/6/97:
	init.c: deal with long arg vectors; created getargs() -- no static bufs
	lib/snolib/retstring.c: return long strings -- no static buf

7/5/97:
	autoconf: redirect grep output to /dev/null
	version.c: upped to ".3++" (pre .4 testing)
	doc/ports.doc: updated with "3++" timings

7/4/97:
	Makefile: made Makefile2 precious
	INSTALL: add --no-dlopen --no-dynlib
	doc/snobol4.1: add IO_FINDUNIT(), unit range, /dev/fd/n, dlopen(3)
	doc/porting.ms: add NO_FDOPEN

7/3/97:
	lib/io.c: add /dev/fd/ magic path, NO_FDOPEN ifdef
		add FL_NOCLOSE flag bit (but do fflush)
		have I/O close return status from (p|f)close
		have io_findunit() keep static finger
		Upped MAXUNIT to 256
	lib/snolib/findunit.c: PML access to io_findunit()
	pml.h: add IO_FINDUNIT
	Makefile2.m4: add findunit.c
	new tests longline, longrec

7/2/97:
	v311.sil: upped CARDSZ to 1024 again. For David J Birnbaum

7/1/97:
	lib/io.c: soak up excess "record" data after newline in ASCII input
		(problem reported by David J Birnbaum)
		Return full recl's worth of data for EOL mode ASCII input
			used to return recl-1; replaced fgets()

6/23/97:
	timing: cat /proc/meminfo on linux

6/22/97:
	lib/io.c: have T mode I/O imply unbuffered (for tty prompts)
	lib/snolib/getstring.c: handle null string
	tested resp.sno (see spring 1985)
	Makefile2.m4: add SNOLIB_FILE variable
	autoconf: check for bcopy() and bzero() in string.h
		alter SNOLIB_FILE when using dynamic linking

6/21/97:
	timing: use HP-UX "model" command, if present
	doc/snobol4.1: updated exponent info

6/20/97:
	lib/aux/bcopy.c: use (long) for casts
	ports.doc: updated

6/19/97:
	autoconf: look for /lib/libdl (for Linux)
	gensyn.sno: removed letter D from EXP class
	lib/ansi/convert.c: removed extra strtod() arg
	lib/realst.c: expanded buffer
		use "g" format (but make sure output doesn't look like an int)
		will use exponentials if output smaller.
		eliminates trailing zeroes, inaccurate output;
		(ie; 1e12 output as 999999995904.000000,
		 1.e14 output as 100000000376832.000000)
	syntax.tbl: allow exponent's without fractions (ie; 1e5), like SPITBOL
	timing: cat /proc/cpuinfo (if present) on Linux
		dump hw sysctl info on BSD systems
	updated test output for realst change for;
		conv2.ref float.ref pow.ref space.ref spit.ref

5/27/97:
	lib/str.c: add spec2str() utility
	lib/bsd/load.c lib/unix98/load.c lib/dummy/load.c lib/hpux/load.c:
		make consistant; use spec2str, check for abs path
			clear V/F fields in function pointer
	autoconf: use hpux/load.c on HP's with dl.h

5/22/97:
	lib/bsd/load.c lib/unix98/load.c:
		fix "next" pointer setup
	new lib/hpux/load.c

5/21/97:
	gendata.sno gensyn.sno parms.h data_init.c v311.sil version.c
	Makefile2.m4 lib/ansi/convert.c lib/generic/convert.c
	lib/dump.c lib/endex.c lib/str.c lib/ordvst.c lib/init.c:
		Created "struct res" for resident data.  All data now
		in named members, for easier debug.  Expressions now
		legal in SIL ARRAY macro!  flushed duplicate COPYSP decl.
		New machine generated res.h file.
	lib/stream.c:
		use isspace() in trimsp().

5/20/97:
	genc.sno lib/endex.c include/macros.h parms.h:
		applied 10/10/96 tailcall depth stats changes
		all tailcalls use "BRANCH()" macro
		don't output PANIC() if LIVE not set
		9% reduction in isnobol4.c size
	genc.sno include/macros.h:
		moved RSTSTK() to RETURN() macro
		"alt" variable never needed,
		no need to bracket/indent calls
		5% reduction in isnobol4.c size

5/17/97:
	lib/str.c: TRIM tabs as well as spaces, like SPITBOL
	test/trim{0,1}.{sno.ref}: added tab tests

5/3/97:
	lib/unix98/load.c: check for name with _ prepended
		if not found (for NetBSD/pc532)

4/24/97:
	autoconf: added comments, $(SRCDIR) on XXX_C= lines

4/17/97:
	Makefile, Makefile2.m4: use mv -f throughout
	tested dlopen() on OSF/1, SGI

4/14/97:
	config/irix64.m4: ditch long long
	autoconf: check for libdl

4/13/97:
	new lib/unix98/load.c: load support using dlopen()
	autoconf: check for dlfcn.h, added --no-dlopen

4/5/97:
	doc/snobol4.1: document DATE() args
	autoconf, timing: added CCVERS for C Compiler version
	autoconf: new options --add-{cppflags,ldflags,objs,opt,srcs}= --opt=
	INSTALL: document new autoconf options

4/2/97:
	genc.sno, v311.sil, lib/date.c: support SPITBOL DATE() args
	doc/ports.doc: 486SX33

3/27/97:
	doc/snobol4.1: typo tweaks

3/7/97:
	doc/ports.doc: lots of new stuff from Rik Faith
		reformatted: removed "conf" column, added "opt"

**************** version 0.99.3 (RCS tag BETA6)

2/12/97:
	autoconf: added sun4u and define __SPARCV9__
	lib/bsd/dynamic.c: add vm_gc_advise()
	lib/generic/dynamic.c: add vm_gc_advise
	lib/io.c: default SNOLIB_DIR to "./" (for DOS)
	v311.sil: add calls to vm_gc_advise()
	version.c: upped version to 0.99.3
	config/borland/build.bat: new version from Steve Kibler
	config/borland/README: updated
	doc/ports.doc: new ss2 timing
	diffall: take TAG arg
	README: upped version to 0.99.3
	CHANGES: updated

12/25/96:
	autoconf: added openbsd
	config.guess: updated to latest (knows openbsd)
	doc/ports.doc: add openbsd/486, hpux7

12/10/96:
	README: mention SNOBOL4 list, new contributors
	lib/ansi/convert.c, lib/generic/convert.c:
		apply length limit.  EVAL() can pass big strings!
		bug reported by p.a.coppen

12/07/96:
	second last TMRC open house in Bldg 20
	init.c: mention "k" suffix in usage message, per skibler
	lib/auxil/getopt.c: reorder includes for borland 4.51, per skibler
	lib/dummy/tty.c: add h.h for FALSE, per skibler
	lib/generic/sys.c: fixed ANSI_STRINGS ifdef sense. ran comdef

12/04/96:
	autoconf: grep strings.h for "index" before using BSD functions

**************** version 0.99.2 (RCS tag BETA5)

11/28/96:
	timing.sno: made NOTIME error non-fatal
	doc/ports.doc: added bsdi
	checked out on AIX 4.1.2

11/27/96:
	README: updated version
	INSTALL: ./autoconf
	genc.sno: renamed raise() to raise1() to avoid ANSI raise() function
	lib/str.c: raise() -> raise1()
	doc/ports.doc: added HP 720/HP-UX 9.05
	version.c: upped version to 0.99.2
	checked out on HP-UX 9.05, SunOS 5.4, SunOS 4.1.4

11/24/96:
	doc/ports.doc: new timings

11/19/96:
	CHANGES: updated

11/14/96:
	timing.sno: output $rev$
	config/gcc.m4: removed obsolete(?) SNOBOL4_CFLAGS=$(SNOBOL4_C_CFLAGS)
	config/hpux.m4: changed -D_INCLUDE_POSIX_SOURCE to -D_HPUX_SOURCE

11/13/96:
	timing, timing.sno:
		output on genc.sno to stdout, stderr
		move stdout compare check out of timing.sno
		allow times +/-1, +/-5%
	autoconf: avoid gcc on hppa-hpux
	test/clean.sh: rm *.bin

11/12/96:
	autoconf: check for sys/ttyio.h, define USE_TTYIO
	lib/bsd/tty.c: add USE_TTYIO ifdef for Version 10

11/11/96:
	INSTALL: change tcp.c to inet.c

11/08/96:
	doc/ports.doc: Ultra 170E, 200MHz PPro

11/06/96:
	lib/io.c: export io_mkfile(), call io_closeall(), return a value
		add /udp magic path
		add {STDOUT,STDERR,TERMIN}_NAME defines
		add io_findunit(), io_getfp(),
			export io_closeall() for PML'ed I/O
		renamed FOPEN_NO_B to NO_FOPEN_B
		add comments (incl. "close hook" idea)
	lib/bsd/inet.c: make "priv" open for UDP fail
		use INADDR_NONE; define our own if none avail
	Makefile: add xsnobol4 tag, $(TARGET)
	doc/ports.doc: timing for 110Mhz SS5

11/05/96:
	doc/ports.doc: timing for netbsd/sparc on 4/110
		clock speeds for A3000, 4/100
	put allrcs, diffall, tagall under RCS

11/04/96:
	lib/io.c: fix "update I/O"; add "last" member to struct file and
		fseek() before direction changes
	test/tests.in: add update
	INSTALL: add c-mainbol-users-request addr
	fixed diffall to handle new files

10/30/96:
	autoconf: add option processing; --force-gcc, --no-gcc options
		add check for getopt in stdio.h; add getopt.o $(GETOPT_C)
		add comments on sgtty use
		use CCPATH more
	config/skel.inc, config/bsd43.m4: remove getopt.o $(GETOPT_C)
	doc/ports.doc: new P75, PPro175(!!) numbers
	doc/snobol4.1: fix typo
	checked out fresh copies of all files with old (two digit year)
		RCS Id's, for cleaner rcsdiffing
	INSTALL: talk more about what autoconf, Makefile2 do
		document autoconf options
	Makefile2.m4: remove old files in SNOLIB_DIR before installing new ones
		(thanks to Jerry Leichter)

10/29/96:
	config/hpux-pa.m4: add gcc -mlong-calls comments
	doc/ports.doc: got an Alpha model number

**************** version 0.99.1 (RCS tag BETA4)

10/28/96:
	autoconf: fix c89 test, add isnan.o for m68k-hp-bsd
	config/bsd43.m4: remove isnan.o
	version.c: updated vdate
	doc/snobol4.1: updated date

10/27/96:
	lib/io.c: add USE_STDARG_H ifdefs (just in case)

10/26/96:
	Makefile2.m4: have io.o, load.o depend on $(MAKEFILE)
		use $(LD_PATH) for load.o
	INSTALL: no longer need to fuss with io.o, load.o
	autoconf: use generic/term.c if no unistd.h
	config/bsd43.m4: set LD_PATH, removed TERM_C
	timing: search PATH for uname
	lib/bsd/tty.c, lib/posix/tty.c:
		use tty_mode(stdin,0,0,0) for tty_save() AND tty_restore()!!
	lib/io.c: call tty_mode() in io_flushall if FL_TTY set

10/25/96:
	v311.sil: call io_flushall
	lib/io.c: add io_flushall, ran comdef, add comments
		add fp check in io_seek()
		include ctype.h
	lib/lexcmp.c: subtract lengths
	lib/bsd/inet.h: include ctype.h
	lib/snolib/host.c, lib/snolib/exit.c: call io_flushall
	autoconf: tweak *bsd*
	Makefile2.m4: add sunmodel to tar; add leading -'s in install
	config/bsd43.m4: add getopt, isnan
	doc/ports.doc: hp370/bsd43, pc532/netbsd
	include/macros.h: compare first char in LEXEQ macro
		NOTE: all timings for 0.99.1 include LEXEQ change
	tested on Mt. Xinu 4.3

10/24/96:
	INSTALL: updated
	new: sunmodel script
	timing: run sunmodel on SunOS, hinv on IRIX
		add cleanup trap
	Makefile2.m4: removed syn.c2 from GENERATED

10/23/96:
	new lib/generic/execute.c
	new lib/dummy/execute.c
	removed lib/dummy/execl.c
	lib/snolib/exit.c: use execute function
	Makefile2.m4: add execute.o EXECUTE_C, removed execl.o EXECL_C
	CHANGES: updated
	README: updated
	version.c: upped to 0.99.1
	tested on SunOS 5.4, IRIX 5.2

10/22/96:
	new lib/bsd/tty.c
	new lib/bsd/tty.c
	new lib/dummy/tty.c
	lib/posix/tty.c: add USE_TERMIO
	lib/io.c: free include list at end of compilation
	new config/irix64.4
	autoconf: use irix64.m4 on "IRIX64"
		add -lsocket if libsocket.a exists
		add -lnsl if libsocket.a exists and on "SunOS"
		use dummy/inet.c if no socket.h
		check for termios.h/termio.h/sgtty.h
	Makefile2.m4: mention ports.doc
	doc/porting.ms: updated
	doc/snobol4.1: fixed lq,rq

10/21/96:
	lib/io.c: pass recl to tty_mode; use fisatty, tty_close
	lib/posix/tty.c: add save list, tty_close, tty_mode recl arg
		add TTY_SAVE_RECL, TTY_RAW ifdefs
	doc/snobol4.1: updated

10/20/96:
	lib/io.c: fix so REWIND(5) works on stdin: clear fp->f in io_close
	lib/posix/tty.c: disable CR/LF translation, signal processing

10/19/96:
	v311.sil: add SPITBOL SET() function
	procs, globals: add SET
	lib/io.c: fix io_open[io] to allow rewind (set "head")
		add io_seek for SET()
		add /tcp magic path
	new lib/bsd/inet.c lib/dummy/inet.c

10/18/96 (my 35th birthday);
	lib/io.c: implement update, unbuffered, append, raw tty, noecho
		tty modes are per-unit!
	lib/posix/tty.c: POSIX.1 tty support
	lib/endex.c: call tty_restore()
	lib/init.c: call tty_save()
	Makefile2.m4: add tty.o TTY_C

10/17/96:
	hacked up a version to use gcc &&label construct and compile
	all of v311.sil as a monolithic function (no SYSCUT or UNDF
	entry points) benchmarked using genc.sno, snocone2.sno, atn.sno

10/15/96:
	v311.sil: use XCALLC for io_open[io]
		replace INPUT() 3'rd arg with options string
		pass options/format to io_open[io]
		get recl back from io_openi
	genc.sno:
		deprecated XOPEN[IO]
	lib/io.c:
		implement io_options, io_open[io] take new args
		implemented "terminal" mode

10/13/96:
	v311.sil: fixes from SNOBOL4+ to avoid "Internal Errors" on runout

10/12/96:
	v311.sil: fix error pointer again
		add COMPCL; don't show syntax errors after compilation done
		set &ERRTEXT with compilation error messages!

10/11/96:
	doc/ports.doc: updated
	v311.sil: don't crash on CODE() syntax errors

10/10/96:
	doc/ports.doc: updated

10/9/96
	test/spit.sno: enabled ? at top level
	test/tests.in: removed ntrace.sno -- covered in spit.sno
	performed analysis of functions inlined
	looked at longjmp'ing out of deep tail-calls
		(analyzed tail-call depths)

**************** version 0.99 (RCS tag BETA3)

10/7/96
	TODO: updated
	CHANGES: updated
	INSTALL: wrote it
	doc/snobol4.1: updated
	doc/ports.doc: updated
	autoconf: fix CONFIG_GUESS; add netbsd-alpha, osf1-alpha
		add CCPATH (was GCCPATH)
	config/alpha.m4: split out from osf1.m4
	config/gcc.m4: let autoconf do CC=
	new: config/netbsd-alpha.m4 config/osf1-alpha.m4
	lib/bsd/load.c: undef N_SIZE for NetBSD
	lib/init.c: save signal number in SIGNCL
	v311.sil: display signam number (SIGNCL) from SYSCUT
	config.guess: latest version; added romp-ibm-aos
	Makefile: add spotless, install
	Makefile2.m4: add spotless, install
	tested on AOS/ACIS 4.3; NetBSD/Alpha 1.2
	version.c: upped to 0.99

10/6/96
	CHANGES: new
	INSTALL: empty place holder
	doc/porting.ms: updated
	Makefile2.m4: add CHANGES INSTALL to tar
		add syn.c, syn.c2 back to tar
	doc/ports.doc: updated
	tested on SunOS 4.1.3U1, 4.1.4, 5.4, 5.5;
		HP-UX 10.10; IRIX 5.2; AIX 4.1; OSF/1 3.2

**************** version 0.98.5

10/5/96
	README: updated
	add bsplitu.c
	autoconf: ADD_OBJS/SRCS for bcopy, bzero
		flushed ANSI_STRINGS var; moved back to ADD_CPPFLAGS
		added SYSDEFS to sys.o (for -DOSNAME or -DHWNAME)
	Makefile2.m4: flushed ANSI_STRINGS var
		added SYSDEFS
		added rules for dummy files: execl.o getenv.o system.o
		worked on "make tar"
		use bsplitu in "make uu"
	config/skel.inc: removed ADD_OBJS/SRCS for bcopy, bzero
	lib/init.c: fix usage; show name, version, date, descr size
	new lib/dummy/{execl,getenv,system}.c
	doc/snobol4.1: updated

10/4/96
	new lib/generic/sys.c, lib/posix/sys.c
	lib/snolib/host.c: use osname(), hwname()
	autoconf: check for ranlib, set RANLIB
		check for sys/utsname.h; set SYS_C
		add CONFIG_GUESS, HAVE_UNISTD_H, ANSI_STRINGS
	Makefile2.m4: add SYS_C, sys.o
		use CONFIG_GUESS, HAVE_UNISTD_H, ANSI_STRINGS
	config/skel.inc: removed -DANSI_STRINGS
	Makefile: add local-config comment to Makefile2
	doc/porting.ms: updated
	v311.sil: more comment tweaking
		moved INCSTK to ICLBLK (sir.sno GC crashed compiler)
		increased FNLIST free space to 20 functions
	version.c: always include macros.h
		upped version to 0.98.5

10/2/96
	doc/load.sno: add polymorphic args/returns
	include/load.h: add RETTYPE macro
	autoconf: add comments about local-config to generated config.m4
	Makefile2.m4: add SNOLIB_SRCS for make depend; quote include for pv
	lib/init.c: round ndynamic, pmstack down to even number of descrs
	lib/pml.c: fix const pointer, rename PMLOAD to PMPROTO
	lib/snolib/host.c: use RETTYPE
	lib/snolib/exit.c: improve comments
	test/tests.in: add ntrace
	pml.h: add FILE() RENAME() DELETE(); changed PMLOAD to PMPROTO
	include/macros.h: removed D_XXX; declare ostack as global descr
	v311.sil: fixed space at end of FNLIST; upped STSIZE from 1000 to 1500
		dynamic allocation slows OFCHK!

9/30/96
	v311.sil: don't zap FILENM at XLATND in case only stmt is END!
		use getpmproto function
	lib/pml.c:
		made arrays const
		add getpmproto function
	include/path.h
		removed SNOLIB_A, SNOLIB_DIR defaults
	Makefile2.m4: fixed SNOLIB_A path
		add SNOLIB_DEFS (supply SNOLIB_DIR and SNOLIB_A values)
		add *.a to disposables

**************** 0.98.4

9/29/96
	v311.sil, procs, globals: renamed EXP to EXPOP
	renamed lib/{dummy,generic}/exp.c to lib/{dummy,generic}/expops.c
	autoconfig: include contents of local-config file, if any
	genc.sno: output '#define INLINING'
	param.h: add ifdef INLINING; inline hash.c
	pml.h: add HOST, EXIT, LOG, EXP, CHOP, SQRT, SIN, COS, TAN
		add NO_PML_{EXIT,HOST,REAL,TRIG}, ran comdef
	lib/hash.c: allow inlining
	lib/io.c: use HAVE_UNISTD_H, check for L_SET
	moved snolib/*.c to lib/snolib/
	Makefile2.m4: add AUX_OBJS, AUX_SRCS, SNOLIB_A
		add SNOLIB_A to regular link
		add -r flag (back?) to make clean
		add warning for make realclean
		renamed exp.c to expops.c
		add rules to build snolib.a
		moved AUX_OBJS to snolib.a
	version.c: 0.98.4

9/28/96
	doc/snobol4.1: ran ispell

9/27/96
	doc/snobol4.1: updated
	doc/Makefile: use groff; add snobol4.html, snobol4.ps, porting.html
	doc/design.doc: updated

9/25/96
	doc/snobol4.1: updated
	added sin.c, cos.c, tan.c, exp.c, log.c, sqrt.c, chop.c to snolib
	v311.sil: fixed autoload temp usage
	version.c: add snoname, made version strings "const" again
	Makefile2.m4: add RANLIB, compile pv with -I./include
	lib/init.c: added -h
	lib/io.c: check SNOLIB for INCLUDE files
		remove trailing NUL's in STPRNT when compiling
		plug NUL's with spaces in place
		Listings finally tamed?

9/24/96
	lib/init.c: cleaned up usage message; fixed getk(), -p/-D alloc
		have math_catch & err_catch take int arg
	genc.sno: pass hash() two args
	lib/hash.c: take two args; added lots of comments
		tried different ascention calculations, no big wins
	Makefile2.m4: added DATA_INIT_CFLAGS
	removed unused symlinks config/posix.m4, config/irix.m4
	timing: take snobol path and args
	timing.sno: get version, added CHECKHZ(), DIFF array
		add yet another time format for m68k-hpux8.0
		indicate line number of diff failure
		handle blank line at end of diff
	include/snotypes.h: added VFLD_T
	lib/io.c: use strncpy, S_L for %v/%S in io_printf
	doc/ports.doc: updated
	config/osf1.m4: set NO_BITFIELDS, use double for FLOAT_T
	v311.sil: add autoload!!
	procs: add LOAD2
	pml.c: add PMPROTO macro for autoload

**************** version 0.98.3?

9/23/96
	genc.sno: twiddle &INPUT (reduces some overhead)
	ports.doc: updated
	autoconf: (re)set CC when cc is gcc!
		show gcc version
		added HAVE_UNISTD_H define
	lib/init.c: cleanup, implemented -P (malloc pmstack)
		added getk(), -d takes bytes, k = 1024
	v311.sil: removed PDLBLK (now malloced in init)
		dropped SPDLDZ back to 5000
		tried doubling string hash table size (to 512)
			no big win (<2%); left it alone
	Makefile2.m4: updated -d arg

9/22/96
	v311.sil: use MOVA for &LAST(FILE|LINE) for speed
		handle tabs in error pointer code, moved FILCHK
		include file & line in compiler error messages
	test/tests.in: add line.sno err.sno reverse.sno
	lib/io.c: trim STPRNT output while compiling
	doc/snobol4.1: updated
	Makefile2.m4: fixed make tar
	version.c: upped version to 0.98.3

9/21/96
	v311.sil: added &PARM. fixed error number typos from yesterday.
	lib/init.c: added getparm()
	lib/date.c: use full julian year
	Makefile2.m4: removed vfprintf
	config/bsd43.m4 removed vfprintf
	deleted lib/auxil/vfprintf
	doc/snobol4.1: updated

**************** version 0.98.2

9/19/96 & 9/20/96
	v311.sil:
		canonicalized lines with two edit numbers
			fixed some comment typos
		don't increment &STCOUNT if &STLIMIT < 0
			keep seperate stmt count for stats output
		add errors for bad INCLUDE, INCLUDE open error, missing END
		add &LINE &FILE and -LINE for real source line in errors
			use io_file to get initial (and subsequent filenms)
		add S4+ CTLADV proc, use for INCLUDE and LINE processing
		put all control card tests in a row
		add &LASTLINE &LASTFILE &ERRTEXT keywords
		changed formats; added file/line to errors
	lib/io.c: add NO_OFF_T, io_file
		removed quote removal in io_include
		implement conversions for io_printf for var/spec
	lib/init.c: implemented -M option for multifile input
		added SIGARG_T to SYSCUT prototype for picky compilers
	lib/lexcmp.c: fix for unequal string lengths by Keith Waclena
	README: added Keith Waclena
	test/tests.in: add lgt (by Keith Waclena)
	procs: add CTLADV, FILCHK, COMP1
	genc.sno: put &TRIM = 1 back for SNOBOL4+, allow _ in args
		pass addrs to io_printf, no more hacks for floats
	config/hpux-pa.m4: add -D_INCLUDE_POSIX_SOURCE for non gcc builds
	config/vms/build.com, config/vms/descrip.mms: add NO_OFF_T, SUBSTR defs
	autoconf: added undefine hpux, interferes with include file names!
	param.h include/macros.h: declare cstack only once (in snobol4.c)
	cc-M: reworked for #line output (AIX)
	Makefile2.m4: make GENERATED files newer than G2 versions
		add comments, cleanup & quoting in kitting
		compile, use pv
	version.c: moved version, ifdef MAIN back (for VMS)
		upped version to 0.98.2

9/18/96
	lib/auxil/getopt.c: fix ERR() for SUNpro (Sol2 fix)
	configure: fixed echo to stderr (Sol2 fix)
	doc/ports.doc: updated (new section for 0.98+)
	gendata.sno, genc.sno, gendep.sno: use TERMINAL, flush STDERR
		read SIL source from stdin
	Makefile2.m4: add SIL=, gendata.sno, genc.sno, gendep.sno read stdin
	timing: genc.sno takes SIL from stdin
	v311.sil: add REVERSE(), SUBSTR(), LEQ(), LGE(), LLE(), LLT(), LNE()
	globals: add REVERSE, SUBSTR, LEQ, LGE, LLE, LLT, LNE
	lib/str.c: support for REVERSE(), SUBSTR()
	test/tests.in: removed punch, added substr, lexcmp, space, space2
	Makefile: renamed configure to autoconf

**************** version 0.98.1

9/17/96
	lib/tree.c: fixed INSERT (from SNOBOL4+)
	lib/dump.c: added dumpcode()
	added test/ops.sno
	now runs all GNAT SPITBOL programs
	version.c: use VERS/DATE, changed name to C-MAINBOL
	Makefile2.m4: Added VERS/VDATE (for version.c), use in make tar
		upped version to 0.98.1

9/12/96
	v311.sil: add TERMINAL variable associations for input & output
	include/units.h: UNITT for TERMINAL input
	lib/posix/term.c, lib/generic/term.c, lib/vms/term.c: term_input()
	lib/io.c: use term_input() to setup UNITT
	lib/hash.c: only look at first and last four! Thanks Mark!!
	Makefile2.m4: add TERM_C/term.c/term.o
	config/bsd43.m4; use generic/term.c
	config/vms/build.com, config/vms/descrip.mms; add term.c/term.o

9/11/96
	v311.sil: fix sort; edit [PLB31] added one MULTC too many

9/8/96
	v311.sil: only case fold strings in FIELD (fix from SNOBOL4+)
		upped SPLDSZ to 10k for snocone.sno
	lib/init.c: parameters support (-u and --) used by "external" host.c
	lib/stream.c: use unsigned char in stream/plugtb;
		ANY/NOTANY/BREAK/BREAKX/SPAN with 8-bit bytes
		were causing PREVIOUS table to get trashed!
	Makefile2.m4: make both isnobol4.c and snobol4.c PRECIOUS

9/6/96
	v311.sil: FREEZE()/THAW(), new table access code from SNOBOL4+
		added -EXECUTE/-NOEXECUTE control cards
		ran untabify (skipped RCS History)
		moved all [edit] ids to column 64+
		moved SORT to Arrays, Tables etc section
	include/snotyoes.h: add FRZN bit
	lib/ansi/convert.c, lib/generic/convert.c: strip leading
		spaces in spcint()/spreal() under SPITCL. Append
		terminator if using scanf() to detect if whole string
		was accepted (necessary for NUMERIC conversion)
	lib/init.c: updated usage(), added -n, parse up 'k' suffix on -d
	genc.sno: use FREEZE()/THAW(); 15% reduction in execute time!
	Makefile2.m4: added COPT, use -d<n>k
	doc/snobol4.1: updated
	globals: updated

**************** version 0.98

9/4/96
	v311.sil: &STLIMIT < 0 means no limit, default to -1
		always case fold control card keywords
		disable stats by default
		default listing off (was being hit by init.c)
		removed EXPCL; default SPITCL to on
		fixed SPITBOL ? operator at top level
	lib/init.c: make -p toggle SPITCL, removed LISTCL hack
	gen{c,data,dep,syn}.sno: remove refs to &STLIMIT (and &TRIM)
	inline.sno: fix comment typo
	gensyn.sno, syntab.h: output syn.c2; made acts const
		tried making syntab's const; fails for SNABTB
	genc.sno: quiet warnings from PLUSOPS AEQLIC usage
	lib/pml.c: fix ifdef STDC typo
	timing: add/subtract -s switches
	version.c: upped to vers to 0.98, added "ifdef MAIN"
	Makefile2.m4: remove .c2/h2 files, added syn.c to SRCS (for depend)
		changed .c.TMP to .c2
9/3/96
	v311.sil: Add SPITBOL operators (under -PLUSOPS) from SNOBOL4+;
		embeded scan, assign, scan/replace, selection (comma),
		NUMERIC conversion.  value tracing for pattern match
		assignment.  allow multiple array/table accesses.
	syntax.tbl: added SPITBOL binop table, exponents on REALs
	gensyn.sno: upped STLIMIT, added EXP char class
	gendep.sno: fixed SPREAL, added SPCINT
	procs: updated
	timing: run config.guess
	gendata.sno: output data.h2 data.c2 equ.h2 data_init.h2
	Makefile2.m4: cmp || cp for .h2/c2 files
	globals: added CMA
	configure: include config.guess output
	lib/init.c: added -p option
	test/run.sh: pass additional ARGS

8/31/96
	v311.sil Add SPITBOL features with code from SNOBOL4+ and
		Minnesota SNOBOL4; CHAR(), RPAD()/LPAD(), BREAKX(),
		SORT()/RSORT().
	lib/str.c: added pad()
	genc.sno: added VCOMPC and NANCHK macros,
		optimize three-way with three different labels
		handle boolean with no labels (for XCALLC)
		output braces around escaped code
	renamed global.procs to globals
	gendep.sno: handle %{ %}, XCALLC, RCOMP, NANCHK, upped &STLIMIT
	Makefile2.m4: added isnan, configure, config.guess, globals
	added lib/dummy/isnan.c
	updated procs, doc/snobol4.1

8/29/96
	Tested on DS3100 (MIPS Ultrix -- 4.3 with a COFF)
	added config/ultrix-mips.m4
	updated ports.doc, configure

8/25/96
	Makefile: use new configure script
	configure: create config.m4 from thin air, using config.guess
	config.guess: GNU script

8/19/96
	Makefile2.m4: renamed lib/aux/ to lib/auxil/
		AUX is a reserved filename in DOS(?!) thanks to Mark Emmer
	genc.sno: added XCALLC, %{ %}, allow LC in arguments
		added -CASE 0 (try and win back some speed)
	v311.sno: added real VARVUP, VPXPTR (Thanks to Mark Emmer)
	procs: added VPXPTR
	str.c: added raise2
	Makefile2.m4: leave test.out at top level!

7/28/95
	timing: include config.m4 contents
	doc/snobol4.1: update &DUMP &ABEND and &CODE behaviors
	v311.sil: add VARVUP (copy of VARVAL for now)

5/15/95
	hp4xx port (3/95 -pb):
	config/hpux-68k.m4
	gendata.sno: cast values for D_V()
	updated ports.doc
	
3/15/85
	config/nextstep3.m4		(Thanks to Leigh Smith)
	updated ports.doc
	added tests/rewind1

3/7/95
	lib/io.c: struct unit: better rewind 	(Thanks to Leigh Smith)
	lib/pml.c: fix for nextstep compilation	(Thanks to Leigh Smith)

2/10/95
	lib/init.c, include/macros.h: implement [CLR_]MATH_ERROR()

2/3/95
	genc.sno: port improvements from experimental version:
		SELBRA() omits redundant labels
		new PLUS() functions omits "+ 0"
		include "else" in DOCMP2 and DOBOOL
		generate SHORTN/FSHRTN in-line
		Net change in snobol4.c size: +35 chars
	include/macros.h: removed SHORTN/FSHRTN
	Makefile2.m4: Add -b flag to SNO

1/25/95
	Makefile2.m4 config/{gcc,aix-rs6000,hpux,hpux-pa,skel.inc}.m4
		new ADD_XXX m4 macros

1/24/95
	lib/aux/getopt.c: fix endless comment
	Makefile2.m4: include CONFIG_CFLAGS in "make depend"

**************** BETA2 patch2 version 0.91.2 (tag BETA2_patch2)

1/20/95
	lib/io.c: check for std{in,out,err} before fclose()

1/13/95
	config/borland/build.bat: added -DANSI_STRINGS
	lib/aux/getopt.c: include h.h (for index)

1/10/95
	config/vms/build.com: use CFLAGS variable
	lib/io.c: hacks for "-", "/dev/stdin" and "/dev/stdout", cleanup
	genc.sno: generate return after endex call!
	timing.sno: added stmts/sec

1/7/95
	Merged in DOS Port (using 32-bit Borland C++ 4.0) by Mark Emmer!
	lib/generic/convert.c: check for empty strings, changed ifdefs
	lib/init.c: ifdef SIGBUS
	new files: lib/borland/mstime.c
		config/borland/build.bat config/borland/snobol4.lnk

	Alpha fixes;
	don't need "long long"
	lib/intspc.c: use %ld
	lib/realst.c: use %lf
	lib/ordvst.c: declare malloc() as returning pointer

1/6/95
	checked in 11/3/94 v311.sno, tests
	README, History: updated/fixed

	** Tested on AXP OpenVMS and DECC (1/4/94);
	lib/init.c: fix VMS typo
	lib/aux/getopt.c: use stdio.h
	lib/vms/getredirect.c: use unixio.h with DECC
	include/h.h: add index/bcmp defines under ANSI_STRINGS
	new files: config/vms/descrip.mms config/vms/build.com

	** Ported to AXP OSF/1 (1/5/94) -- has 64-bit integers!!
	Makefile2.m4; moved .PRECIOUS after first real target
		make TESTED depend snobol4.c
	Fix pointer/int sloppiness (sizeof(int) < sizeof(void*))!!
		gensyn.sno; cast pointers to int_t, move syntab.h include
		include/syntab.h; make put an int_t to hold pointers!
		include/macros.h; fix various stack macros casting to (int)!!!
		lib/stream.c; declare "tok" as "int_t"
	new files: config/osf1-alpha.h config/osf1-alpha-cc.h

11/3/94
	lib/ansi/mstime.c: ansi only version
	doc/porting.ms: update for above
	config/ansi.m4: config to use ansi mstime function
	config/generic.m4: added a comment
	v311.sil: quick fix for local variable case folding
	test/tests.in test/local.{sno,ref} tests for local var case folding

9/14/94
	timing, timing.sno: cleanup/improvements
	config/hpux-pa-cc.m4: new config for HPUX with native C compiler
	lib/date.c: tweak for VMS compilation (Martin Waller)
	charset.c: fix for SunOS5 SC3.0 compiler
	README: updated

9/13/94
	timing: AFS doesn't allow hard links across directories (Rik Faith)

9/3/94
	porting.ms, snobol4.1, load.doc, goals.doc, design.doc: ran ispell
	doc/Makefile: update for Solaris 2

9/2/94
	README: fixed spellings!

8/8/94
	lib/ordvst: got rid of a warning
	config/posix-cc.m4: new. used/tested on SunOS 5.3
	config/sunos5.m4: now a symlink to posix.m4
	charset.c: make ALPHA unsigned (for Sun SC3.0 compiler)

8/1/94
	lib/ordvst.c: real code, thanks to Martin D. Waller!!
	README, TODO: updated
	test/a.ref, test/dump.ref: updated

7/24/94
	lib/init.c: fix call to getredirect() (Thanks to Martin Waller)

7/7/95
	v311.sil, global.procs: Added FAILG label so FAIL can be inlined.
	timing.sno: more tweaks for AIX
	config/aix-rs6000.m4: new file (thanks to Phillip Lee Thomas)
	Makefile2.m4: fixed awk command

**************** BETA2 patch1 version 0.91.1 (RCS tag BETA2_patch1)

7/5/94
	h.h: only define NULL if not already defined
	version.c: update for patch1

6/30/94
	more cleanup of timing.sno, added start of diff tag line
	fixed bsd/load.c when space in pathname

6/29/94
	version.c: clean up for non-ansi compilation
	timing.sno: Output bad diff results, loosten ms/stmt check

**************** Second Beta release (RCS tag BETA2) version 0.91

6/24/94
	Made isnobol4 the default
	Added label RTNL3G so RTNUL3 can be inlined
	Use register pointer to "res" in data_init.c
	Updated load.doc
	Use awk to reverse tsort input (instead of reverse on output)
	Fixed sense of DO_UFCHK!
	Updated ports.doc

6/23/94
	Include both snobol4.c and isnobol4.c in kit
	Use register in data_init.c
	Implemented TRACE_DEPTH
	Ran "prof" profiling
	Inline pair.c!!

6/21/94
	Cleaned up config/ dir.
		Removed all "cc" configs.
	Turned on -finline-functions by default
	Added Makefile2 rules for isnobol4.c
	Added SNOBOL4 variable

6/20/94
	Fixed problem found by Phillip Thomas; Restart "card"
		processing after a semi.  Allows comment and control
		lines after a semi.
	Created scripts for analysis of inlining results.

6/19/94
	Added {generic,posix}-cc.m4 configs
	Use skel.inc in generic configs
	Added AUX_{SRC,OBJ}, PML_OBJ
	Played with inlining

6/17/94
	Dropped compiler CARDSZ down to 132 for sane listings

6/15/94
	Upped compiler CARDSZ and default input size from 80 to 1024.
	Created snolib/{breakx,lcmp,pad,sort,substr}.sno,
			{fork,system,sprintf}.c
	bsd/load.c; use PML before trying real load. use SNOLIB env var.

6/13/94
	Prevent multiple inclusions
	trim include file names (after multiple inclusion test)

6/12/94
	Implemented -INCLUDE/-COPY
	Use RETxxx macros in snolib

6/10/94
	Added RETxxx macros to load.h

6/9/94
	Gave WIPS talk at Boston Usenix
	Created configs for aix, linux, irix, sunos5
		(all just include posix.m4)

6/6/94
	Run timing script in regression test (runs genc)!!
	UFCHK no longer on by default

6/4/94
	Created snolib (DELETE, FILE and RENAME functions)
	Call getredirect() under vms

6/3/94
	Turned off output NUL translation after compiler runs
	Try PML if ld() fails in bsd/load.c

6/2/94
	Created load.h LOAD_PROTO, LA_xxx macros
	Updated load.doc, sqrt.c
	Implemented "Poor Man's LOAD" for linked in functions!!
	Made REPLACE() 8-bit clean
	Fixed padding on input problem

6/1/94
	Started man page
	Made 8-bit clean
	Implemented simple pipe open

5/31/94
	Fixed/improved make tar; include "bugs" dir
	Updated porting.ms
	Added vms/getredirect.c
	Handle errors in genc.sno
	Avoid .h.new (for VMS)
	Updated ports.doc for LINUX
	Started on autoconfig script

5/30/94
	Fixed hp*.m4 include path
	Updated ports.doc for hp710

5/29/94
	Finished &LCASE &UCASE
	Fixed -CASE n

5/28/94
	Updated ports.doc for HP, SGI, IBM
	Implemented -f option
	Added ; and ! as comment chars (per SITBOL)
	Added &LCASE, &UCASE

5/27/94
	Allow external redefinition of HZ in generic/mstime.c
	Invalidate self pointer in lib/bsd/load.c unload()
	Changed types.h to snotypes.h to avoid include confusion on VMS?!

5/26/94
	Supress padding once compliation is over
	Turned off &TRIM by default
	Caught more CASE sensitivities
	Accept either case for S/F gotos
	
5/25/94
	moved Un*x version banner to version.c
	implemented case insensitivity -CASE/&CASE
	implemented DOBOOL() in genc for real

5/24/94
	converted Makefile2, config files to use m4

5/23/94
	cleaned up bsd load.c, for use on bsd44 systems
	added SIGFUNC_T to init.c, made default void

**************** First Beta release (RCS tag BETA1) version 0.90

2/18/94
	*** First Beta release (RCStag BETA1) 
	updated README, late entry in ports.doc
	include tests in tar!
	
1/25/94
	updated README, include TODO.soon in tar

1/24/94
	improved porting.doc
	run regression test from Makefile2
	added "make uu"

1/18/94
	wrote porting.doc, put all doc files under RCS
	added getopt to Makefile2.cpp, generic.h

1/16/94
	set exit code on fatal errors (including when
	execution aborted due to -NOERRORS)

1/8/94
	output UNIXF UNIXF2 at startup
	make 'LEFT' default listing side
	output error name string to stderr
	implemented -b (BANRCL), -s (STATCL)

1/7/94
	cleaned up config/ files. added bsd43, sony_news, posix
	checked in changes from 1/3
	added standards info to various lib files
	updated README (was README.alpha) for beta test
	split intspc.c realst.c from convert.c
	caseified formats, converted to printf() style
	caseified misc strings

1/3/94
	Brought up on Sony News 800 (68020) sqrt.sno works (no changes)!
	Tested on hp9000s800 (added posix/mstime.c)
	Brought up on Mt. Xinu hp300 4.3 BSD and IBM RT ACIS 4.3
		added generic/vfprintf.c, generic/convert.c
		use mktemp() in load.c

12/30/93
	cleaned up gensyn.sno output
	made format.c strings const
	did compiler timings (tried gcc -O2)
	did profiling. do DCMP() inline!!
		do LOCAPV inline? (called 6.7 million times by genc.sno)!!
	Created Makefile2, lib subdirs (generic, bsd, dummy)
		Flushed lib/Makefile

12/29/93
	cleaned up gendata.sno output, output formats
	cleaned up include file Id lines

12/28/93
	created (empty) mlink.h, mdata.h
	renamed headers.h to parms.h
	created dynamic.c
	include charset.c into init.c
	types.h cleanup;
		flushed flags.h
		created VFLD/FFLD macros
		made f field char, v field a 24 bit bitfield!
		(no time penalty on sparc!?)

12/27/93
	Announced alpha dist (finally got a place to put it)!
	Have gendata.sno (was data.sno) generate data.h, data.c, init.h
	Created init.c

	Compiled and ran on HP 9000/8xx (PA RISC) machine!

**************** First Alpha release (RCS tag ALPHA1)

12/9/93
	*** First Alpha release (RCS tag ALPHA1)
	Updated usage message, README.alpha, Make tar
	put this (and other files) under RCS

12/4/93
	Implemented -NOERRORS/-ERRORS control cards (default -NOERRORS)
	to supress/allow exeution of programs with compile errors.
	Implemented -k command line switch (like -ERRORS)

12/3/93
	output compilation error messages to stderr as well as listing
	accept '#' and '|' as start of line comments
	(can now use '#!' magic number for scripts!)

11/27/93
	revised README.alpha
	wrote LOAD.doc sqrt.c sqrt.c

11/26/93
	re-implemented io.c (file lists, no more io_unit struct)
	take file names on command line! implement -r flag
	changed -D to -d; default now 25000 now that GC works!

11/25/93
	fixed RSETFI; genc runs with 25K descrs (with 69 GC's)!!

11/24/93
	wrote dump.c

11/23/93
	fixed lvalue: comment.sno works
	atn.sno produces same SIZED (chars/lines) output as spitbol

11/22/93
	fixed linkor: alt1/2.sno work
	found problem in atn.sno (comment.sno)
	atn.sno gets pattern stack overflow (runs with SPDLSZ of 5000)
	atn.sno dies after table to array conversion (convert.sno)
	fixed MOVDIC: convert.sno works
	atn.sno runs to completion (sans comment problem)
		but output differs from spitbol?!
	w/ 200K descrs genc dies in last few lines (after 2 GCs)
		runs to completion with "only" 250K descrs (1 GC)

11/19/93
	implemented expint() exreal()
	found smallest proram with atn.sno bug (alt2.sno)
	create/use LEXEQ() macro!
	worked on README.alpha, DESIGN
	genstg.sno now creates equ.h, stgtyp.c, stg.h
		(flushed equ.awk, stgtyp.h stgh.awk)

11/18/93
	isolated match problem with atn.sno

11/17/93
	fixed MNREAL/MNSINT F/V output
	created IND_ARR, INDENTX, UNINDENT in genc.sno

11/16/93
	fixed locap{v,t} F/V output

11/15/93
	ran genstg under mainbol (w/ -D1M) after consolidating patterns

11/13/93
	ran genstg under mainbol (w/ -D2M)

11/10/93
	implemented filename support ala Catspaw (Vanilla) SNOBOL4(+)!!
		added XOPENI, XOPENO, XECOMP
	send all completion messages to stderr (PUNCH)
	ran gensyn under mainbol

11/9/93
	wrote, debugged load() and link()
	added CLR_S_UNUSED() to no avail

11/8/93
	clear V&F in DATE, MSTIME, SETAV, INTSP, REALSP, MULTC
	GC generally runs, but leaves bad pointers

11/6/93
	fixed lengths in MOVBLK and ZERBLK
	genc ran for the first time (generated code until LOCA1) died in GCM
	runs to completion with -D1000000

11/5/93
	implemented GETLTH by the book
	collect.sno runs (nothing to collect)

11/4/93
	fixed order of spec members, GC marking pass now runs
	upped number of user defined functions from 10 to 50
	upped OCASIZ from 1500 to 15000!
	implemented command line options

11/3/93
	diff.sno runs
	added junk PUSH() to SAVSTK() -- GC expects RCALL to use stack!!

11/2/93
	immed value assignment working (fixed assignment order in MAKNOD)
	cond value assignment working (output PUTSPC!!)
	put v311.sil, syntax.tbl under RCS
	got rid of IDENT columns!!!
	cleaned up genc, now parsed by mainbol!!
	worked on POUND_LINE
	match replacement working (fixed SPUSH/SPOP again!!)
	implemented rplace() library routine

11/1/93
	have gensyn process comments
	last SIL ops (ADJUST, ORDVST, RPLACE) handled in genc
	function args working (fixed PSTACK *PUSH, *POP)
	implemented getbal library routine

10/29/93
	complex patterns working (fixed CPYPAT)

10/28/93
	simple patterns working (but not pattern concatenation)
	implemented
		CLERTB, PLUGTB, DATE, LINK, MOVBLK, REMSP, LOAD, UNLOAD

10/27/93
	implemented;
		misc I/O (BKSPCE ENFILE REWIND)
		code tree ops (ADDSIB ADDSON INSERT)
		pattern ops (MAKNOD LINKOR
		value pair ops (LOCAPT LOCAPV)
		others;
			ADDLG BKSIZE CHKVAL EXPINT EXREAL LCOMP LVALUE
			MOVDIC PUTSPC SUBSP TOP TRIMSP
	runs simple programs (loops.sno runs ~15 x slower than SPITBOL)!!

10/25/93
	recieved S4D58 report (SIL reference manual) from Dr. Griswold
	implemented SETVA

10/24/93
	implemented INTSPC, REALST, SHORTN, SPCINT, SPREAL
	END recognized!

10/20/93
	implemented FSHRTN
	"END" not recognized

10/19/93
	implemented input and output ops (STPRNT, STREAD)
	implemented STREAM!

10/18/93
	implemented APDSP, LOCSP, PUTVC
	initialization code starts to run

10/17/93
	implemeted SETVC, VCMPIC

10/15/93
	implemented ENDEX, LEXCMP, VARID

10/14/93
	implemented GETSP, LEQLC

10/13?/93
	implemented ZERBLK

10/8/93
	implemented GETLG, SETSP

10/5/93 - 10/7/93
	implemented INIT, MSTIME, PUTLG, PUTSPC, GETSPC
		MOVDIC, GETLTH, PSTACK

8/92
	46 ops remaining (on 522 lines of SIL)


7/24/92
	implemented:
		PUTAC, GETAC, SETFI, RSETFI, DIVIDE, BRANIC, INCRV
		MNSINT, RLINT, ADREAL, SBREAL, MPREAL, ADREAL, DVREAL

7/22/92
	implemented:
		int math: SUM, SUBTRT, MULT, MULTC
		SETAV, SETVC, SETLC, SPEC, TESTFI, MOVA, MNREAL

to 7/21/92
	71 ops remaining

5/92
	C pattern matching working (see 3/90)

3/91
	Started genc.sno using Catspaw SPARC SPITBOL

11/90
	Found out about Catspaw SPARC SPITBOL from a Catspaw mailing.

7/90
	Started work at Shiva Corp.

3/90
	Started on C implementation of SNOBOL patterns using
	Gimpel's CACM article (and Orange book).

12/89 thru 3/90
	Worked on C versions of syn, genc using "traditional" tools
	awk/lex/yacc

11/89
	Got report on old/new naming conventions from Dr. Griswold
	began studying SIL source in earnest.

10/89
	Got (a rare) copy of "The Macro Implementation of SNOBOL4" book
	from Catspaw.

late 1988?
	Found Vanilla SNOBOL4 (including Catspaw book order form)
	and SIL sources on cs.arizona.edu

Fall 1987
	Tried using OS/360 MAINBOL to run questionnare analyzer

Fall 1986
	BUCS20 unplugged, lost access to SITBOL for first time in 7 yrs

Fall 1985
	Started work at BU full time.

Spring 1985
	Used SITBOL to analyze questionnaires from
		Psychology directed study on computer mediated communication.

Fall 1983
	Returned to school full time at BU, helped manage BUCS20 (2060)

Fall 1981
	Started at DEC/LCG FORTRAN-10/20 group (which used SITBOL
	to perform FORTRAN regression tests)

Fall 1979
	Learned SNOBOL4 using SITBOL freshman year at Stevens Tech
	Used to find errors (typos, mismatched commons) in FORTRAN programs
