summaryrefslogtreecommitdiffstats
path: root/ANNOUNCE
blob: 0edea3cc479b558eeba57cec3b1e259f0d24e26f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
This message announces the availability of Scheme release scm4e6.

New in scm4e6 are:

	* bench.scm (benchmark): added.  computes and display statistics
	on "pi.scm" benchmark.
	* Makefile (benchlit bench): targets added.  Append stats to file
	"BenchLog".
	* scm.texi (Socket): added examples of chat servers and clients.
	(Internet Addresses and Socket Names): enlarged from "Internet
	Addresses".
	* socket.c (l_connect): BUF0 was missing from mode bits set in
	returned port.
	* build.scm (build-params): Added compiler-options and
	linker-options; added --batch-dialect and --script-name as aliases
	for -h and -w.
	* scmfig.h (HAVE_SELECT): Now defined for linux.
	* sys.c (igc): fixed off-by-1 error for sizeof save_regs_gc_mark.
	(gc_mark): fixed off-by-1 error for sizeof(CONTINUATION).  These
	seem to fix a very obscure GC bug.
	* Init.scm (exec-self): Added.
	* repl.c (init_repl): DUMP sets RESTART to EXEC-SELF.
	* repl.c (tryload): Made tail-recursive so that dump, quit, exit,
 	etc. will work as the last expression in a loading file.
	(scm_execpath): Split out from scm_unexec.
	* unexec.c: All Updated from emacs-19.34 -- no changes necessary.
	* gmalloc.c: 
	* pre-crt0.c:
	* ecrt0.c:
	* unexelf.c: fixes Linux (ELF) dump bug.
	* build.scm (platform): linux renamed linux-aout.  linux-elf fixed
 	and renamed linux.
	(C-libraries): X11R6 moved library files on RedHat Linux.  Linux
 	graphics library now has entry (doesn't default).
	(compile-dll-c-files linux):
	(make-dll-archive linux): Now converts from ".o" objects to ELF
	".so" form and "links" the usual libraries.
	* Link.scm (usr:lib x:lib): dynamic linking fixed for (linux ELF)
	dlopen.  Libraries other than ".so" object not needed; eliminated
	by usr:lib and x:lib returning #f.
	* dynl.c (l_dyn_unlink): prints result of dlerror() on errors.
	* eval.c (nconc2last): If CAUTIOUS is defined, checks that
	APPLY's arglist and last element of arglist are LIST?s.
	* sys.c (igc): symhash GC can now be disabled with
	#define NO_SYM_GC.
	* Init.scm (boot-tail): Added FSF --help and --version options.
	Added --no-init-file as a synonym for -no-init-file.
	* scm.texi (File-System Habitat): improved wording and added
	examples.
	* scm.texi (Top): Renamed sections.
	* sys.c (mark_syms mark_sym_values): Split up mark_symhash() to
	immunize against accidental pointers.
	* repl.c (gc_ports_collected): added to instrument symbol GC.
	* scm.texi (Debugging Scheme Code): Added section.
	* eval.c (definedp): Changed from a memoizing macro to a `syntax'.

 From maximum entropy <entropy@zippy.bernstein.com>:

	* ioext.c, scmfig.h: support for SGI (tested with SGI IRIX 5.2/gcc)
	* ioext.c (file_set_position): If a port is bidirectional
	(e.g. a socket) it may be necessary on some systems to perform a
	file positioning operation when switching between reading and
	writing.  This is required by ANSI C (ISO/IEC 9899:1990
	7.9.5.3).  Therefore, a	file-set-position on a bidirectional
	port should not signal an error if fseek generates an
	ESPIPE -- the fseek operation actually "succeeded" in that it
	reset the I/O direction flag for the FILE.
	* repl.c (input_waiting): R4RS requires that "char-ready?"
	return "#t" at end-of-file.  The semantics for "ioctl(...,
	FIONREAD, ...)" are such that it gives 0 on a socket that is
	closed (on the other side of the connection).  If the
	system has select(), use that instead to get the correct
	behavior. 
	* socket.c (l_listen): Treat sockets that have been "listened"
	as input-ports.  This allows polling for new connections
	(e.g. with "char-ready?") instead of blocking in
	"socket:accept". 
	* socket.c (l_accept): Fix type checking to agree with
	previous patch.

 From Radey Shouman  <shouman@zianet.com>

	* eval.c (unmemocar): The code in unmemocar to deal with ILOCs was
        never being executed.
	* sys.c (intern): fixed (new) symhash GC bug.
	* sys.c (igc): Added calls to mark_symhash() and sweep_symhash().
	These GC unused symbols with a top-level value of UNDEFINED.
	(mark_symhash): added.
	(sweep_symhash): added.

 From Eric Hanchrow  <erich@MICROSOFT.com>

	* scm.c (l_sleep): Ported to Windows NT (_WIN32)
	* ioext.c: Ported to Windows NT (_WIN32)
 
				-=-=-

Scm conforms to Revised^4 Report on the Algorithmic Language Scheme
and the IEEE P1178 specification.  Scm is written in C and runs under
Amiga, Atari-ST, MacOS, MS-DOS, OS/2, NOS/VE, Unicos, VMS, Unix and
similar systems.  ASCII and EBCDIC are supported.

Documentation is included explaining the many Scheme Language
extensions in scm, the internal representations, and how to extend or
include SCM in other programs.  Documentation is online at:

	     http://ftp-swiss.ai.mit.edu/~jaffer/SCM.html

SCM can be obtained via FTP (detailed instructions follow) from:
 ftp-swiss.ai.mit.edu:pub/scm/scm4e6.tar.gz
 prep.ai.mit.edu:pub/gnu/jacal/scm4e6.tar.gz
 ftp.maths.tcd.ie:pub/bosullvn/jacal/scm4e6.tar.gz
 ftp.cs.indiana.edu:/pub/scheme-repository/imp/scm4e6.tar.gz

SLIB is a portable Scheme library which SCM uses:
 ftp-swiss.ai.mit.edu:pub/scm/slib2a6.tar.gz
 prep.ai.mit.edu:pub/gnu/jacal/slib2a6.tar.gz
 ftp.maths.tcd.ie:pub/bosullvn/jacal/slib2a6.tar.gz
 ftp.cs.indiana.edu:/pub/scheme-repository/code/lib/slib2a6.tar.gz

JACAL is a symbolic math system written in Scheme:
 ftp-swiss.ai.mit.edu:pub/scm/jacal1a5.tar.gz
 prep.ai.mit.edu:pub/gnu/jacal/jacal1a5.tar.gz
 ftp.maths.tcd.ie:pub/bosullvn/jacal/jacal1a5.tar.gz
 ftp.cs.indiana.edu:/pub/scheme-repository/code/num/jacal1a5.tar.gz

HOBBIT is a compiler for SCM code:
 ftp-swiss.ai.mit.edu:pub/scm/hobbit4d.tar.gz
 ftp.maths.tcd.ie:pub/bosullvn/jacal/hobbit4d.tar.gz
 ftp.cs.indiana.edu:/pub/scheme-repository/imp/hobbit4d.tar.gz

SCMCONFIG contains additional files for the SCM distribution to build
SCM on Unix machines using GNU autoconf.
 ftp-swiss.ai.mit.edu:pub/scm/scmconfig4e3.tar.gz
 prep.ai.mit.edu:pub/gnu/jacal/scmconfig4e3.tar.gz
 ftp.maths.tcd.ie:pub/bosullvn/jacal/scmconfig4e3.tar.gz
 ftp.cs.indiana.edu:/pub/scheme-repository/imp/SCM-support/scmconfig4e3.tar.gz

SLIB-PSD is a portable debugger for Scheme (requires emacs editor):
 ftp-swiss.ai.mit.edu:pub/scm/slib-psd1-3.tar.gz
 prep.ai.mit.edu:pub/gnu/jacal/slib-psd1-3.tar.gz
 ftp.maths.tcd.ie:pub/bosullvn/jacal/slib-psd1-3.tar.gz
 ftp.cs.indiana.edu:/pub/scheme-repository/utl/slib-psd1-3.tar.gz

SLIB-SCHELOG is an embedding of Prolog in Scheme:
 ftp-swiss.ai.mit.edu:pub/scm/slib-schelog.tar.gz
 prep.ai.mit.edu:pub/gnu/jacal/slib-schelog.tar.gz
 ftp.maths.tcd.ie:pub/bosullvn/jacal/slib-schelog.tar.gz
 ftp.cs.indiana.edu:/pub/scheme-repository/utl/slib-schelog.tar.gz

SMG-SCM is an SMG interface package which works with SCM on VMS.
 ftp-swiss.ai.mit.edu:pub/scm/smg-scm2a1.zip
 prep.ai.mit.edu:pub/gnu/jacal/smg-scm2a1.zip
 ftp.cs.indiana.edu:/pub/scheme-repository/imp/SCM-support/smg-scm2a1.zip
 ftp.maths.tcd.ie:pub/bosullvn/jacal/smg-scm2a1.zip
A VMS version of Unzip is available by anonymous FTP from
 ftp.spc.edu:[ANONYMOUS.MACRO32]UNZIP.EXE.

TURTLSCM is a turtle graphics package which works with SCM on MS-DOS
or X11 machines:
 ftp-swiss.ai.mit.edu:pub/scm/turtlegr.tar.gz
 prep.ai.mit.edu:pub/gnu/jacal/turtlegr.tar.gz
 ftp.maths.tcd.ie:pub/bosullvn/jacal/turtlegr.tar.gz
 ftp.cs.indiana.edu:/pub/scheme-repository/imp/SCM-support/turtlegr.tar.gz

XSCM is a X windows interface package which works with SCM:
 ftp-swiss.ai.mit.edu:pub/scm/xscm-2.01.tar.gz
 prep.ai.mit.edu:pub/gnu/jacal/xscm-2.01.tar.gz
 ftp.cs.indiana.edu:/pub/scheme-repository/imp/SCM-support/xscm-2.01.tar.gz

MacSCM is a Macintosh applications building package which works with
SCM (similar to XSCM).
 ftp-swiss.ai.mit.edu:pub/scm/macscm.tar.Z
 ftp.maths.tcd.ie:pub/bosullvn/jacal/macscm.tar.Z
 ftp.cs.indiana.edu:/pub/scheme-repository/imp/SCM-support/macscm.tar.gz

WB is a disk based, sorted associative array (B-tree) library for SCM.
Using WB, large databases can be created and managed from SCM.
 ftp-swiss.ai.mit.edu:pub/scm/wb1a2.tar.gz
 ftp.maths.tcd.ie:pub/bosullvn/jacal/wb1a2.tar.gz
 ftp.cs.indiana.edu:/pub/scheme-repository/imp/SCM-support/wb1a2.tar.gz

DLD is a C library package allowing SCM to dynamically load object
files on Linux, VAX (Ultrix), Sun 3 (SunOS 3.4 and 4.0), SPARCstation
(SunOS 4.0), Sequent Symmetry (Dynix), and Atari ST.

 prep.ai.mit.edu:pub/gnu/dld-3.3.tar.gz
				-=-=-

  ftp ftp-swiss.ai.mit.edu (anonymous)
  bin
  cd pub/scm
  get scm4e6.tar.gz
  get slib2a6.tar.gz
or
  ftp prep.ai.mit.edu (anonymous)
  bin
  cd pub/gnu/jacal
  get scm4e6.tar.gz
  get slib2a6.tar.gz

  `scm4e6.tar.gz' is a gzipped tar file of the C code distribution.
  `slib2a6.tar.gz' is a gzipped tar file of a Scheme Library.

Files in these directories with the ".gz" suffix are compressed with
patent-free gzip (no relation to zip).  The program to uncompress them
is available from
 prep.ai.mit.edu:pub/gnu/gzip-1.2.4.tar
 prep.ai.mit.edu:pub/gnu/gzip-1.2.4.shar
 prep.ai.mit.edu:pub/gnu/gzip-1.2.4.msdos.exe

Remember to use binary mode when transferring the files.
Be sure to get and read the GNU General Public License (COPYING).
It is included in scm4e6.tar.gz.

I sell IBM PC floppy disk sets with the source files, documentation,
and MS-DOS and i386 MS-DOS executables for $99.00.  To order, send
e-mail to jaffer@ai.mit.edu.