1
Wed Apr 5 14:32:51 1995 Gary Houston <ghouston@actrix.gen.nz>
3
* unix.c, ioext.c, posix.c, sys.c: Scheme name changes,
4
semantic cleanups, the port table, missing system calls
5
and coding cleanups from ghouston@actrix.gen.nz
7
Thu Mar 16 14:37:38 1995 Tom Lord <lord@x1.cygnus.com>
9
* guile.c: fixed the gcc-specific definition of the macro "AT(x)".
11
* guile.c (gscm_init_from_fn): Parameterize what init functions
12
get called (see guile_ks, below).
14
* guile-mini.c (guile_mini): a minimalist alternative to guile_ks.
16
* guile-ks.c (guile_ks): factor out the call to optional inits to
17
a separate file so you can link against libguile without getting
20
* Ginit.scm (try-load of "ScmInit.scm"): Be robust in the absense
21
of a binding for the environment varialbe HOME. Try
22
(getpw (geteuid)) or just use "/".
25
Thu Mar 9 15:35:20 1995 Tom Lord <lord@x1.cygnus.com>
27
* gmain.c (main): Print additional error message if init file
30
* guile.c (initialize_gscm): Report an error if the
31
init file can't be opened.
33
Thu Mar 23 23:22:59 1995 Aubrey Jaffer (jaffer@jacal)
35
* scm.texi (I/O-Extensions): Finished.
37
* Init.scm (scm:load): `loading' messages now indented.
39
Sat Mar 4 20:58:51 1995 Aubrey Jaffer (jaffer@jacal)
41
* scm.texi: documentation finished for "posix.c" and "unix.c".
43
* posix.c (scm_getgroups): added.
45
* posix.c (makfrom0str): According to glibc.info, some field in
46
structures like pwent may have NULL pointers. Changed makfrom0str
47
to return BOOL_F in this case.
49
Thu Mar 2 12:52:25 1995 Aubrey Jaffer (jaffer@jacal)
51
* time.c: CLKTCK set from CLOCKS_PER_SEC, if available. Metaware
54
* scm.h: USE_ANSI_PROTOTYPES now controls prototypes (was
55
__STDC__). This allows an overly fussy compiler to still have
58
From: dorai@ses.com (Dorai Sitaram)
59
* ioext.c (l_utime): include files fixed for __EMX__
61
Sun Feb 26 23:46:18 1995 Tom Lord <lord@x1.cygnus.com>
63
* repl.c (scm_app_wdr): Like scm_apply, but takes an error function.
64
The caller's continuation is never captured or escaped.
65
The error function is invoked as with scm_cwdr.
67
Sun Feb 26 21:03:04 1995 Aubrey Jaffer (jaffer@jacal)
69
* sys.c (gc_mark gc_sweep): tc7_ssymbol now gets GCed because it
70
gets used for non-GCed strings in scm_evalstr scm_loadstr.
71
(mkstrport cwos cwis): changed so caller's name is passed into
75
(scm_eval_string scm_evalstr scm_load_string scm_loadstr): added
76
for easier C to scheme callbacks.
77
(loadport): variable added so lreadr() and flush_ws()
78
increment linum only when reading from the correct port.
79
(def_err_response): now handles ARGn for argument numbers > 5 and
80
unknown position arguments.
82
* dynl.c: Dynamic Linking now sets and restores *load-pathname*
83
around the init_ call.
85
Sat Feb 25 11:03:56 1995 Aubrey Jaffer (jaffer@jacal)
87
* scm.c (lsystem getenv softtype ed vms_debug): moved from scl.c.
88
(add_feature): moved from repl.c.
89
(features): init table removed (caused multiple symbols).
91
Fri Feb 24 23:48:03 1995 Aubrey Jaffer (jaffer@jacal)
93
* scm.c (scm_init_extensions COMPILED_INITS): Added so that
94
statically linked, compiled code can be initialized *after* most
95
of Init.scm has loaded.
97
Wed Feb 22 15:54:01 1995 Aubrey Jaffer (jaffer@jacal)
99
* subr.c (append): Added check for bad arguments and fixed errobj.
101
Sun Feb 19 01:31:59 1995 Aubrey Jaffer (jaffer@jacal)
103
* ioext.c (exec execp): changed so that 2nd arguments is argv[0]
104
(like posix) and renamed to execl and execlp.
105
(execv execvp): added.
107
Sat Feb 11 17:30:14 1995 Aubrey Jaffer (jaffer@jacal)
109
* ioext.c (lexec): moved from repl.c and scm.c.
110
(lexecp i_exec l_putenv): added.
112
* posix.c (open_pipe l_open_input_pipe l_open_output_pipe
113
prinpipe): moved from ioext.c.
116
Fri Feb 10 10:50:03 1995 Aubrey Jaffer (jaffer@jacal)
118
* scl.c (num2long long2num): moved here from subr.c.
119
(num2ulong): fixed (< to >=) bug.
121
* unif.c (aset array2list array_ref cvref): uniform integers and
122
unsigned integer arrays now handle full size integers (and
123
inexacts) using num2long, num2ulong, long2num, and ulong2num when
124
INUMS_ONLY is not defined.
126
* scmfig.h (INUMS_ONLY): defined when INUMs are the only numbers.
128
Wed Feb 8 17:57:26 1995 Tom Lord (lord@x1.cygnus.com)
130
* Ginit.scm (stand-alone-repl): Use new function (rooted-repl)
131
(rooted-repl): new function
133
Tue Jan 31 16:46:26 1995 Tom Lord (lord@x1.cygnus.com)
135
* repl.c (lreadr): compare string constant names
136
in a case insensative way.
138
(scm_lread): Take an optional parameter CASEP.
139
If specified and not #f, then symbols are read
140
in a case sensative way.
142
If not specified, the state variable default_case_i is checked
143
(a C int, either 0 or 1). The state variable hasn't been
144
exposed and so is constant and depends on compile-time flags --
145
but in the future it might be made more explicit if there is a
148
Sun Jan 29 23:22:40 1995 Aubrey Jaffer (jaffer@jacal)
150
* scm.texi (Overview): scm.1 converted to texinfo format and
153
Sat Jan 28 23:11:40 1995 Tom Lord (lord@x1.cygnus.com)
155
* repl.c (compiled-library-path): return the value of the
156
compile-time cpp macro "LIBRARY_PATH" or #f.
158
* Ginit.scm: use the above path to find slib on unix.
159
This solution should be generalized.
161
Fri Jan 27 19:58:27 1995 Tom Lord (lord@x1.cygnus.com)
163
* sys.c (gc_sweep): Fixed a gc bug that caused circular free-lists
164
resulting in Cells that thought they were free long after they
165
were allocated for some nefarious purpose or other.
167
* Makefile.in (manifest): ship all pieces of the info manual.
168
Typos fixes from ghouston.
170
Thu Jan 26 01:52:00 1995 Tom Lord <lord@x1.cygnus.com>
172
From: cessu@cs.hut.fi (Kenneth Oksanen)
175
AC_CHECK_LIB(nsl, gethostent)
176
AC_CHECK_LIB(ucb, bzero)
177
AC_CHECK_LIB(socket, socket)
178
AC_CHECK_LIB(bsd, bzero)
181
From: brent@jade.ssd.csd.harris.com (Brent Benson)
183
* gmain.c: line 31: In ANSI C, string literals cannot span multiple
186
* guile.c: line 592: The two cases in the ifdef are reversed, AT(X)
187
should expand to nothing if you are *not* using GNUC.
189
* ioext.c: line 29: On my system it is necessary to
190
include <unistd.h> *before* <sys/stat.h> in order to
191
have the correct types defined.
193
* ioext.c: line 194: Declaration of popen conflicts with my system's
194
popen() defined in <unistd.h>. Let the header file provide the
197
Sun Jan 22 11:13:58 1995 Aubrey Jaffer (jaffer@jacal)
199
* scm.texi (Internals): code.doc converted to texinfo format.
200
Much added and reorganized. code.doc removed.
202
Thu Jan 19 00:40:11 1995 Aubrey Jaffer (jaffer@jacal)
204
* subr.c (logbitp logtest): added.
206
Mon Jan 16 01:42:20 1995 Tom Lord <lord@x1.cygnus.com>
208
* repl.c (scm_repl): takes two arguments now (prompt and top-level).
209
Callable from Scheme.
211
* sys.c (scm_init_storage): only use stdin if scm_take_stdin is true.
212
Otherwise, use an empty string port. If using stdin, make it
215
Sun Jan 15 21:51:37 1995 Tom Lord <lord@x1.cygnus.com>
217
* sys.c (scm_mkarray, scm_free_array, mark_arrays): support for
218
C programs. malloc/free style interface to allcoating
219
protected storage of type SCM*.
221
Sun Jan 15 17:49:43 1995 Tom Lord (lord@x1.cygnus.com)
223
* guile.c: new file. Friendly C interface for Guile.
226
* repl.c (scm_cwdr): added call-with-dynamic-root (see scm.texi).
228
Sat Jan 14 23:35:21 1995 Tom Lord (lord@x1.cygnus.com)
230
* repl.c, subr.c: re-arrangement, commenting
231
of source in preparation for pulling repls apart
234
Wed Jan 11 14:45:17 1995 Aubrey Jaffer (jaffer@jacal)
236
* scl.c (num2ulong): checks for bignum sign and magnitude added.
238
* subr.c (logand logior logxor lognot): lognot restriction to
239
INUMs removed. Logand, logior, and logxor now will work for up to
240
32 bit signed numbers.
242
Tue Jan 10 13:19:52 1995 Aubrey Jaffer (jaffer@jacal)
244
* repl.c (def_err_response): Circuitous call to quit() replaced
245
with exit(EXIT_FAILURE);
246
(everr): Now calls def_err_response() in interrupt frame if
247
errjmp_bad or there are dynwinds to do. This prevents silent
248
failure in batch mode.
251
Mon Jan 9 00:12:14 1995 Aubrey Jaffer (jaffer@jacal)
253
* repl.c (handle_it): Now discards possibly used top freelist cell
254
for GC safety. Also now just punts if errjmp_bad.
256
* scm.texi: converted from MANUAL. GUILE documentation merged in.
258
Sat Jan 7 13:51:04 1995 Miles Bader (miles@eskimo.com)
260
* mrequire.scm: New file: Wrapper for slib require/provide that
261
makes it modular (that is, each slib package is loaded into its
262
own module, and sees only other modules that it requires).
264
* defmod.scm: Allow use-interface in the default module.
266
* libguile.scm: Put symbols common to both guile and scm
267
interfaces into the internal interface `EXTRA' (which is included
268
by both). Other random shuffling, mostly to make slib happy.
270
* modops.scm (extend-interface, export-interface, export): Add
271
another operation type, #f, which turns off automatic exporting of
272
the current source interface when finishing up with it. This is
273
used by export-interface to prevent trying to export all symbols.
275
* modops.scm (import): No longer signal an error when trying to
276
export a whole module, as we want to do this sometimes.
278
* Ginit.scm: No longer try to load require.scm, or depend on it;
279
In the case of getopt, we just load it manually. Also make
280
defmacro module-safe.
282
Sat Jan 7 01:54:11 1995 Tom Lord <lord@x1.cygnus.com>
284
* sys.c (scm_intern_obarray_soft): Reserve room for symbol slots.
286
* sys.c (scm_makstr, scm_makfromstr): added an extra parameter SLOTS.
288
0: same as the old behavior
290
> 1: allocate SLOTS - 1 extra slots in the string storage.
292
The base address of SLOTS, an array of SCM, is at SLOTS(obj).
293
This is for symbol slots, and later for procedure slots.
294
If you use this in the constructor for your new type (usually
295
done by creating a string and then invoking SETLENGTH to change
296
its type), you are responsible for making sure slot contents
299
Callers of these were fixed as well.
301
Tue Jan 3 14:30:34 1995 Miles Bader (miles@eskimo.com)
303
* modops.scm, extlibs.scm, libguile.scm, defmod.scm: New files:
304
These implement the user-level module system.
306
* sys.c (scm_sym2vcell): Add another argument: definedp, which is
307
passed as additional argument to the lookup-thunk (if any).
308
If this argument is BOOL_T, this lookup is for a define (which
309
has somewhat different semantics for modules); otherwise it
310
should be satisfied with an existing variable. If the thunk
311
returns BOOL_F (meaning there was no such variable), sym2vcell
312
returns BOOL_F as well.
313
* eval.c (scm_lookupcar, scm_m_define): Use the new sym2vcell param.
314
* variable.c (scm_builtin_var): Use the new sym2vcell param.
316
* eval.c (scm_top_level_env): New function: return an environment
317
using the given top-level-lookup thunk.
318
* eval.c (scm_eval2): Use scm_top_level_env.
319
* eval.c (scm_eval): Use an env with a top-level lookup thunk from
320
scm_top_level_lookup_thunk_var (aka *top-level-lookup-thunk*).
321
* eval.c (scm_neval): New function: just like scm_eval, but may
322
destroy its argument. Known in scheme as eval!.
324
* repl.c (scm_repl, scm_tryload, lreadr): Use scm_neval, not eval_3.
326
* Ginit.scm (make-module): Use the new definition of top-level thunks.
327
* Ginit.scm (set-current-module): Set *top-level-lookup-thunk* too.
328
* Ginit.scm: Trash all the repl stuff; we just use the C repl now.
329
Load the user module system.
331
* Makefile.in: Install the user-module implementation files.
333
Mon Jan 2 16:27:25 1995 Miles Bader (miles@eskimo.com)
335
* Ginit.scm (repl:repl): Have the guile repl redefine try-load
336
instead of load, as this is the SCM primitive.
337
(module-for-each): Write module-for-each.
338
(module-search): Make this recurse into each module use-list
339
entry, as per the low-level module spec.
340
(define-macro): Make this function usable by modules that don't
341
have access to the internals of the guile module.
343
Sun Jan 1 22:30:25 1995 Tom Lord <lord@x1.cygnus.com>
345
* repl.c (scm_iprin1), subr.c (scm_lock_vector, scm_unlock_vector,
346
scm_lvector_ref, scm_lvector_set):
348
Added locked vectors. See N
350
Sat Dec 31 15:45:22 1994 Miles Bader <miles@eskimo.com>
353
Add define-macro, delq!.
355
Add a module print-function, and some new name fields
356
to the module that the modops code uses to make modules
357
print nicely (e.g., #<interface guile/module 7a89c>)
360
* eval.c(ceval): Here's a patch that makes closures & subrs
364
Wed Dec 28 00:31:22 1994 Tom Lord <lord@cygnus.com>
366
* scm.c (raise): use kill not raise, since it is more portable.
368
Wed Dec 21 05:18:47 1994 Tom Lord <lord@x1.cygnus.com>
370
* eval.c (scm_eval2): Two argument eval. The
371
second argument is #f or a proc returning a variable.
373
Fri Dec 9 00:40:26 1994 Tom Lord <lord@x1.cygnus.com>
375
* eval.c (scm_fasl_eval): eval without copying the source form.
376
This is just a temporary hack.
378
Sun Dec 4 21:50:37 1994 Tom Lord <lord@x1.cygnus.com>
380
* eval.c (scm_ceval): Added special forms LITERAL-VARIABLE-SET!
381
and LITERAL-VARIABLE-REF. The first argument of each is a
382
variable object (see variable.c). The second argument
383
of set! is an expression. They do what you'd expect.
384
-SET! returns UNSPECIFIED.
386
Note that one can not read a form which uses literal-variable*
387
correctly because there is no way to read a variable object.
388
These forms exist for the sake of the module system.
390
Fri Dec 2 19:52:40 1994 Tom Lord (lord@x1.cygnus.com)
392
* subr.c (string->obarray-symbol, intern-symbol, unintern-symbol,
393
symbol-set!, symbol-binding)
396
* variable.c (scm_make_variable, scm_variable_{ref,set}
397
Implemented variables. Variables are anonymous
398
objects holding one settable value.
400
Wed Nov 30 04:31:18 1994 Tom Lord (lord@x1.cygnus.com)
402
* *.[ch]: renamed all global identifiers to have the prefix scm_.
404
* sys.c (gc_sweep, scm_mark_locations, scm_init_heap):
406
Modified gc to allow objects of any multiple of sizeof(CELLPTR).
407
In addition, each heap segment gets to specify a freelist (which
410
new function: scm_alloc_obj
411
new vars: scm_heap_table (replaces hplims)
412
scm_n_heap_segs (replaces (hpims_ind / 2))
414
Thu Oct 27 12:57:02 1994 Aubrey Jaffer (jaffer@jacal)
416
From: Jerry D. Hedden <hedden@esdsdf.dnet.ge.com>
417
* ioext.c: conditional code for vms and version (3.6) of Aztec C.
418
* pi.scm ((e digits)): Modified 'bigpi' for slight speed
419
improvement. Added function to calculate digits of 'e'.
421
Wed Oct 26 11:22:05 1994 Aubrey Jaffer (jaffer@jacal)
423
From: Gary Houston <ghouston@actrix.gen.nz>
424
* scl.c (round): Now rounds as described in R4RS.
426
* test.scm (test-inexact): test cases for round.
428
Tue Oct 25 00:02:27 1994 Aubrey Jaffer (jaffer@jacal)
430
* sys.c (grow_throw lthrow dynthrow): now pass arrays, check
431
for adequate growth, and clear out register windows (on sparc).
433
Mon Oct 24 01:05:34 1994 Aubrey Jaffer (jaffer@jacal)
435
* ioext.c (ttyname fileno): added.
437
Sat Oct 22 12:12:57 1994 Aubrey Jaffer (jaffer@jacal)
439
* unix.c (symlink readlink lstat): added.
441
* scmfig.h repl.c sys.c (IO_EXTENSIONS): flag removed.
443
* ioext.c (read-line read-line! file-position, file-set-position
444
reopen-file open-pipe opendir readdir rewinddir closedir chdir
445
umask rename-file isatty? access chmod mkdir rmdir stat utime
446
raise): moved from "repl.c" and "sys.c".
448
Fri Oct 21 21:19:13 1994 Aubrey Jaffer (jaffer@jacal)
450
From: Radey Shouman <shouman@ccwf.cc.utexas.edu>
451
* unif.c (ra2contig): now has a second parameter to indicate
452
whether copying is necessary or not. Eliminates gratuitous copy
453
by UNIFORM-ARRAY-READ! when called with a noncontiguous array.
455
(array_map): more liberal check on when ARRAY-MAP! can use
458
Thu Oct 20 18:00:35 1994 Aubrey Jaffer (jaffer@jacal)
460
* sys.c (opendir readdir rewinddir closedir reopen-file): added
463
Wed Oct 19 14:18:26 1994 Aubrey Jaffer (jaffer@jacal)
465
* eval.c (badargsp): added under ifndef RECKLESS to check @apply
466
and apply() arg counts.
468
Tue Oct 18 00:02:10 1994 Aubrey Jaffer (jaffer@jacal)
470
* unix.c (mknod acct nice sync): added.
472
* socket.c (socket bind! gethost connect! listen! accept): added.
474
* time.c (utime): added under IO_EXTENSIONS.
476
Mon Oct 17 23:49:06 1994 Aubrey Jaffer (jaffer@jacal)
478
* sys.c (getcwd umask access chmod mkdir rmdir): added
481
* scm.c (l_pause): added if SIGALRM defined.
482
(l_sleep): added if SIGALRM not defined.
484
* scl.c (num2ulong): added. Used in "time.c"
486
Sun Oct 16 22:41:04 1994 Aubrey Jaffer (jaffer@jacal)
488
* sys.c (access chmod): Posix access added under IO_EXTENSIONS.
490
Fri Oct 14 09:45:32 1994 Aubrey Jaffer (jaffer@jacal)
492
* posix.c (chown link pipe waitpid, kill, getpw, getgr, get*id,
495
* time.c (l_raise l_getpid): added
496
* subr.c (ulong2big):
497
* scl.c (ulong2num): useful routines for system call data
498
conversion moved from "time.c".
500
Thu Sep 22 14:48:16 1994 Aubrey Jaffer (jaffer@jacal)
502
* subr.c (big2inum): (more accruately) renamed from big2long.
504
Tue Sep 6 22:22:16 1994 Aubrey Jaffer (jaffer@jacal)
506
From: rshouman@hpcf.cc.utexas.edu (Radey Shouman)
507
Date: Mon, 29 Aug 1994 11:36:46 +0600
508
* unif.c: This is a large patch, but also a bit larger than it
509
appears -- I moved a few function definitions around to eliminate
510
gratuitous forward references.
512
* unif.c repl.c (raprin1): Combined print routine for arrays with
515
* unif.c (UNIFORM-VECTOR-READ! and -WRITE): work with general
516
arrays, by copying when necessary, renamed them to
517
UNIFORM-ARRAY-READ! and -WRITE.
519
* unif.c (ARRAY-CONTENTS): Generalized so that it returns a 1-d
520
array even when the stride in the last dimension is greater than
521
one, gave it an optional second argument STRICT, which makes it
522
behave as it did before, returning an array/vector only if the
523
contents are contiguous in memory.
525
* unif.c (ARRAY-CONTIGUOUS?) Eliminated. Instead, use
526
(lambda (ra) (array? (array-contents ra #t)))
528
* unif.c code.doc (ramapc): unrolls arrays mapping into one loop
529
if possible, to make this quick, changed the format of the array
530
CAR, now uses one bit to indicate that an array is contiguous --
531
this still allows a ridiculous number of dimensions.
533
* scm.h (DSUBRF): dsubrs are mapped directly, to allow this I
534
moved the typedef for dsubr and #define for DSUBRF to scm.h
536
* unif.c (ARRAY-MAP!) taught something about subrs, now most subrs
537
may be mapped without going through apply(), saving time and
538
reducing consing. +, -, *, /, =, <, <=, >, and >= are mapped
539
directly as special cases -- for uniform arrays this is nearly as
540
fast as the equivalent C, and doesnt' cons. I've made sure that
541
+, -, *, and / vectorize on the CRAY, this may be wasted effort
542
but the effort is not great.
544
* unif.c (ARRAY-COPY!) now copies many arrays of differing types
545
to each other without going through the aref/aset, e.g. float ->
546
double, double -> complex, integer -> float ... This should make
547
array type coercions for arithmetic faster.
549
* unif.c (TRANSPOSE-ARRAY) Added, which returns a shared array
550
that is the transpose of its first argument. I think this does
551
what an APL:TRANSPOSE would.
553
* unif.c (ENCLOSE-ARRAY) Added, this returns an array that looks
554
like an array of shared arrays, the difference being that the
555
shared arrays are not actually allocated until referenced.
556
Internally, the contents of an enclosed array is another array.
557
The main reason for this is to allow a reasonably efficient
558
implementation of APL:COMPRESS, EXPAND, and INDEXING. In order to
559
actually make an array of shared arrays, just use ARRAY-COPY!.
561
* unif.c (cvref): Created internal version of aref(), cvref() that
562
doesn't do error checking; Thus speeding things up. Profiling of
563
SCM running array code revealed that aref() was taking a
564
surprising fraction of the CPU time
568
The mechanism for looking up the vectorized functions is a little
569
kludgy, I was tempted to steal some of the CAR of the subr type to
570
encode an offset into a table of vectorized functions, but this
571
would make it more likely that dynamically loaded subrs lose thier
574
It is almost possible to write APL:+ and friends now, it is just
575
necessary to figure out the appropriate type of the returned array
576
and allocate it, and to promote scalar arguments to arrays (with
579
This doesn't include vectorized REAL-PART, IMAG-PART,
582
I think some C support for APL:REDUCE and maybe INNER-PRODUCT will
583
be needed for a reasonably fast APL.scm
585
unif.c is getting quite big, time to split it up?
588
Mon Sep 5 22:44:50 1994 Aubrey Jaffer (jaffer@jacal)
590
* Init.scm repl.c (quit): code was not using return values
593
Sun Aug 21 01:02:48 1994 Aubrey Jaffer (jaffer@jacal)
595
* record.c (init_record): remaining record functions moved into C
597
* eval.c sys.c: compiled closures now conditional under CCLO.
599
Sat Aug 20 23:03:36 1994 Aubrey Jaffer (jaffer@jacal)
601
From: rshouman@chpc.utexas.edu (Radey Shouman)
602
* eval.c (ceval apply):
603
* sys.c (makcclo): tc7_cclo, compiled closures, now supported.
604
* record.c (init_record): C implementation of slib "Record"s using
606
* scm.h subr.c (QUOTIENT MODULO REMAINDER): fixes a bug for
607
bignums with DIGSTOOBIG defined. Also, changed the return type of
608
longdigs() to void, since that value is no longer used anywhere.
610
Mon Aug 1 11:16:56 1994 Aubrey Jaffer (jaffer@jacal)
612
* time.c (curtime): replaces get-universal-time. Other time
613
functions removed (SLIB support more complete).
615
* subr.c (divbigbig): fixed (modulo -2177452800 86400) => 86400
616
bug. Also added to test.scm.
618
Sun Jul 24 16:09:48 1994 Aubrey Jaffer (jaffer@jacal)
620
* dynl.c (init_dynl): *feature* dld:dyncm added for dynamically
621
(ldso) linked libc.sa and libm.sa (under Linux).
623
Fri Jul 15 12:53:48 1994 Aubrey Jaffer (jaffer@jacal)
625
* unif.c (array-fill!): bug with increment in default clause fixed.
626
Fast string support added.
628
From: rshouman@chpc.utexas.edu (Radey Shouman)
629
* unif.c (array-fill! array-for-each): bug fixes.
631
Sun Jul 10 01:51:00 1994 Aubrey Jaffer (jaffer@jacal)
633
* scm.c (run_scm init_scm): "-a" heap allocation argument supported.
635
* Makefile (proto.h): removed.
637
From: Drew Whitehouse, Drew.Whitehouse@anu.edu.au
638
* scm.h (P): Conditionalized ANSI'fied version of the scm.h.
640
Sun Jun 26 12:41:59 1994 Aubrey Jaffer (jaffer@jacal)
642
* Link.scm (usr:lib lib): Now checks for shared libraries
645
Thu Jun 23 19:45:53 1994 Aubrey Jaffer (jaffer@jacal)
647
* scl.c scm.c: Support for compilation under Turbo C++ for Windows
648
(system and exec disabled) added under C flag "_Windows".
650
Sat Jun 18 11:47:17 1994 Aubrey Jaffer (jaffer@jacal)
652
* test.scm ((test-delay)): added.
653
((test-bignum)): added and called automatically if bignums
654
suported. test-inexact called automatically if inexacts
657
Mon Jun 6 09:26:35 1994 Aubrey Jaffer (jaffer@jacal)
659
* Init.scm (trace untrace): moved to SLIB/trace.scm.
661
Thu May 12 00:01:20 1994 Aubrey Jaffer (jaffer@jacal)
663
* Link.scm: Autoload for hobbit now does (provide 'hobbit). This
664
allows hobbit to know if it is self compiling (although reloads of
665
hobbit will not be quite right).
666
((compile file . args)): removed.
668
* makefile.unix (proto.h): removed.
670
* Transcen.scm: compile-allnumbers HOBBIT declaration added.
671
Init.scm will now load compiled Transcen.o.
673
* scm.h: HOBBIT section removed.
675
* README (SLIB): Now strongly recommends getting SLIB and lists
678
* eval.c (m_delay): fixed bug with multiple sets of (delay x).
680
Thu Apr 28 22:41:41 1994 Aubrey Jaffer (jaffer@jacal)
682
* unif.c (makflo): shortcut for single precision float arrays
685
Fri Apr 15 00:54:14 1994 Aubrey Jaffer (jaffer@jacal)
687
From: rshouman@chpc.utexas.edu (Radey Shouman)
688
* unif.c: no longer uses pointer comparisons in loops. Should
689
fix problems on 8086 processors.
690
* unif.c (make_sh_array): Fixes MAKE-SHARED-ARRAY so that shared
691
arrays with only 1 element in some direction may still be
693
(uve_write uve_read): Fixes bug in UNIFORM-ARRAY-WRITE,
694
UNIFORM-ARRAY_READ!. Now they do the right thing for shared
695
bit-arrays not starting at the beginning of their contents vector.
696
(array_contents ARRAY-SIMPLE?): ARRAY-CONTENTS may now return a
697
shared, contiguous, 1-d array, instead of a vector, if the array
698
cannot access all of the contents vector. ARRAY-SIMPLE? removed.
699
(array-fill!): a replacement and generalization of
700
UNIFORM-VECTOR-FILL!.
701
(raequal): Combines with uve_equal(), providing also ARRAY-EQUAL?
702
ARRAY-EQUAL? is equivalent to EQUAL? if all its arguments are
703
uniform vectors or if all are arrays. It differs from EQUAL? in
704
that a shared, 1-d array may be ARRAY-EQUAL? to a uniform vector.
706
(define sh (make-shared-array '#(0 1 2 3) list '(0 1))) ==> #1(0 1)
707
(equal? '#(0 1) sh) ==> #F
708
(array-equal? '#(0 1) sh) ==> #T
709
(list2ura): Combines list2uve() and list2ura().
711
Thu Apr 14 23:26:54 1994 Aubrey Jaffer (jaffer@jacal)
713
* time.c (LACK_FTIME LACK_TIMES): defined for vms.
715
Mon Apr 4 10:39:47 1994 Aubrey Jaffer (jaffer@jacal)
717
* eval.c (copytree): now copies vectors as well.
719
* repl.c (quit): now accepts #t and #f values.
721
Sun Apr 3 23:30:14 1994 Aubrey Jaffer (jaffer@jacal)
723
* repl.c (repl): call to my_time() moved to not include READ time.
725
* time.c (mytime): now prefers to use times() over clock().
726
Compilation constant CLOCKS_PER_SEC doesn't scale when a binary is
727
moved between machines.
729
Thu Mar 31 16:22:53 1994 Aubrey Jaffer (jaffer@jacal)
731
* Init.scm (*SCM-VERSION*): added.
733
* Makefile (intro): Added message for those who just make.
734
Cleaned up and reorganized Makefile.
736
* patchlvl.h (PATCHLEVEL): removed. Whole version now just in
739
Wed Mar 23 00:09:51 1994 Aubrey Jaffer (jaffer@jacal)
741
From: rshouman@chpc.utexas.edu (Radey Shouman)
742
* repl.c (iprin1): Characters higher than 127 print as
745
* Init.scm ((read:array digit port)): added. Most # syntax
746
handled in read:sharp.
748
* unif.c (clist2uve clist2array): removed.
750
Fri Mar 11 15:10:53 1994 Radey Shouman (rshouman@chpc.utexas.edu)
752
* sys.c (sfgetc): can now return EOF.
754
Mon Mar 7 17:07:26 1994 Aubrey Jaffer (jaffer@jacal)
756
* patchlvl.h (SCMVERSION): 4e0
758
* scmfig.h: was config.h (too generic).
760
* scm.c (main run_scm) repl.c (repl_driver init_init): now take
761
initpath argument. IMPLINIT now used in scm.c
763
Sun Feb 27 00:27:45 1994 Aubrey Jaffer (jaffer@jacal)
765
* eval.c (ceval m_cont IM_CONT): @call-with-current-continuation
766
special form for tail recursive call-with-current-continuation
767
added. call_cc() routine removed.
769
Fri Feb 25 01:55:06 1994 Aubrey Jaffer (jaffer@jacal)
771
* eval.c (ceval m_apply IM_APPLY apply:nconc-to-last): @apply
772
special form for tail-recursive apply added. ISYMs reactivated.
774
Mon Feb 21 14:42:12 1994 Aubrey Jaffer (jaffer@jacal)
776
* crs.c (nodelay): added. In NODELAY mode WGETCH returns
777
eof-object when no input is ready.
779
* Init.scm ((read:sharp c port)): defined to handle #', #+, and
782
* repl.c (lreadr): Now calls out to Scheme function read:sharp
783
when encountering unknown #<char>.
785
Tue Feb 15 01:08:10 1994 Aubrey Jaffer (jaffer@jacal)
787
From: Shiro KAWAI <kawai@sail.t.u-tokyo.ac.jp>
788
* eval.c (ceval apply): under flag CAUTIOUS, checks for applying
791
Sat Feb 12 21:23:01 1994 Aubrey Jaffer (jaffer@jacal)
793
* sys.c (sym2vcell intern sysintern): now use internal strhash().
795
* scl.c sys.c (hash hashv hashq strhash()): added.
797
Sat Feb 5 01:24:35 1994 Aubrey Jaffer (jaffer@jacal)
799
* scm.h (ARRAY_NDIM): #define ARRAY_NDIM NUMDIGS changed to
800
#define ARRAY_NDIM(x) NUMDIGS(x) to correct problem on Next.
802
Fri Feb 4 23:15:21 1994 Aubrey Jaffer (jaffer@jacal)
804
From: rshouman@chpc.utexas.edu (Radey Shouman)
805
* unif.c: 0d arrays added. Serial array mapping functions and
808
Thu Feb 3 12:42:18 1994 Aubrey Jaffer (jaffer@jacal)
810
* scm.h (LENGTH): now does unsigned shift.
812
Wed Feb 2 23:40:25 1994 Aubrey Jaffer (jaffer@jacal)
814
* Link.scm (*catalog*): catalog entries for db (wb),
815
turtle-graphics, curses, regex, rev2-procedures, and
816
rev3-procedures added.
818
Sun Jan 30 19:25:24 1994 Aubrey Jaffer (jaffer@jacal)
820
From: rshouman@chpc.utexas.edu (Radey Shouman)
821
* sys.c eval.c setjump.h setjump.s (longjump setjump): full
822
continuations now work on Cray YMP.
824
Thu Jan 27 01:09:13 1994 Aubrey Jaffer (jaffer@jacal)
826
* dynl.c MANUAL Init.scm (init_dynl): dynamic linking modified for
829
Sat Jan 22 17:58:55 1994 Aubrey Jaffer (jaffer@jacal)
831
From: ucs3028@aberdeen.ac.uk (Al Slater)
832
* makefile.acorn repl.c (set_erase): Port to acorn archimedes.
833
This uses Huw Rogers free unix function call library for the
834
archimedes - this is very very widely available and should pose no
835
problem to anyone trying to find it - its on every archimedes ftp
838
From: hugh@cosc.canterbury.ac.nz (Hugh Emberson)
839
* dynl.c Link.scm: Dynamic Linking with SunOS.
841
Thu Jan 6 22:12:51 1994 (jaffer at jacal)
843
* sys.c (gc_mark mark_locations): now externally callable.
845
Sun Jan 2 19:32:59 1994 (jaffer at jacal)
847
From: fred@sce.carleton.ca (Fred J Kaudel)
848
* unif.c (ra_matchp ramapc): patch to unif.c avoids two problems
849
(K&R C does not allow initialization of "automatic" arrays or
850
structures). This was not use in 4d2 or previously, and the
851
following patch ensures that such initialization only occurs for
852
ANSI C compilers (Note that K&R C compilers need to explicitly
855
Sat Dec 18 23:55:30 1993 (jaffer at jacal)
857
* scm.1 scm.doc (FEATURES): improved and updated manual page.
859
* repl.c (BRACKETS_AS_PARENS): controls whether [ and ] are read
862
Wed Dec 8 23:13:09 1993 (jaffer at jacal)
864
From: rshouman@chpc.utexas.edu (Radey Shouman)
865
* unif.c: More array fixes and functions.
867
Tue Dec 7 00:44:23 1993 (jaffer at jacal)
869
* dynl.c (dld_stub): removed since dld is working better on Linux.
871
Wed Dec 1 15:27:44 1993 (jaffer at jacal)
873
* scm.h (SNAME): explicit cast added to get rid of compiler
876
From: bh@anarres.CS.Berkeley.EDU (Brian Harvey)
877
* repl.c (repl) output newlines when more than one form on a line
880
From: rshouman@chpc.utexas.edu (Radey Shouman)
881
* unif.c: More array fixes and documentation.
883
Mon Nov 29 01:06:21 1993 Aubrey Jaffer (jaffer at montreux)
885
From: rshouman@chpc.utexas.edu (Radey Shouman)
886
* unif.c: More array functions (need documentation).
888
Sun Nov 28 01:34:22 1993 (jaffer at jacal)
890
* scm.h (SNAME): returns a pointer to nullstr if offset is 0.
892
* subr.c eval.c (make_synt make_subr): now check that offset from
893
heap_org hack works for each subr. If not, 0 is used.
895
* Link.scm (compile-file): compiles SCM file to object suitable
898
* Link.scm: initialization file created with Scheme code for
899
compilation and linking. LOAD now automatically loads SCM object
902
* dynl.c Init.scm: dynamic linking now works under DLD on Linux.
903
Wb, crs, and sc2 can by dynamically loaded.
905
Thu Nov 25 22:58:36 1993 (jaffer at jacal)
907
* sys.c (ltmpnam): return value of mktemp call tested in accord
908
with HP-UX documentation (returns "" on error).
910
* config.h (SYSCALLDEF): removed. Macro I/O calls (getc, putc)
911
replaced with function versions. Control-C interrupts should work
912
while pending input on all systems again.
914
Tue Nov 23 01:18:35 1993 (jaffer at jacal)
916
From: dorai@cs.rice.edu (Dorai Sitaram)
917
* repl.c sys.c time.c config.h: MWC (Mark Williams C) support.
919
Sun Nov 7 10:58:53 1993 (jaffer at jacal)
921
From: "Greg Wilson" <Greg.Wilson@cs.anu.edu.au>
922
* scm.c config.h (TICKS ticks tick-interrupt): if TICKS is
923
#defined, ticks and tick-interrupt work like alarm and
924
alarm-interrupt, but with units of evaluation rather than units of
927
Mon Nov 1 18:47:04 1993 (jaffer at jacal)
929
* unif.c (uniform-vector-ref => array-ref): integrated arrays
930
with uniform-vectors. Strings, vectors, and uniform-vectors
931
now just special case of arrays (to the user).
933
Fri Oct 29 01:26:53 1993 (jaffer at jacal)
935
* unif.c (rasmob tc16_array): arrays are now a smob.
937
Thu Oct 28 01:21:43 1993 (jaffer at jacal)
939
* sys.c repl.c (igc gc_start): GC message gives reason for GC.
941
Wed Oct 27 10:03:00 1993 (jaffer at jacal)
943
* config.h (SICP): flag makes (eq? '() '#f) and changes other
944
things in order to make SCM more compatible with Abelson and
947
* sys.c (gc_mark gc_sweep mark_locations): GC bug fixed. GC from
948
must_malloc would collect the tc_free_cell already allocated.
950
* sys.c setjump.h (must_malloc must_realloc INIT_MALLOC_LIMIT):
951
modified to call igc when malloc usage exceeds mtrigger (idea from
952
hugh@ear.MIT.EDU, Hugh Secker-Walker).
954
From: Jerry D. Hedden
955
* pi.scm (bigpi): bignum version of pi calculator.
957
Tue Oct 26 18:41:33 1993 (jaffer at jacal)
959
* repl.c (room): added procedure for printing storage statistics.
961
Sun Oct 24 22:40:15 1993 (jaffer at jacal)
963
* config.h eval.c scl.c (STACK_LIMIT CHECK_STACK): added.
964
* sys.c (stack_check): added.
966
Sat Oct 23 00:08:30 1993 (jaffer at jacal)
968
* sys.c (mallocated): added to keep track of non-heap usage.
970
* sys.c (igc): fixed interrupt vulnerabilities around gc.
972
Sun Oct 17 13:06:11 1993 (jaffer at jacal)
974
* repl.c (exit_report): added. Prints cumulative times if
975
(verbose > 2). Called from free_storage().
977
* repl.c (repl): fixed CRDYP(stdin) BUG! Transcripts should work
978
again. Other annoying CR behaviour fixed.
980
* time.c (init_time your_base my_base): now not reset when
981
restarting so timing numbers for restarting are correct.
983
* scm.h (sys_protects): rearranged.
984
* sys.c (tmp_errp): now a statically allocated global variable,
985
used by init_storage and free_storage.
986
* scm.h sys.c (tc16_fport, tc16_pupe, tc16_strport, tc16_sfport):
987
now #defines (which must correspond to order of newptob calls).
989
Sun Oct 3 20:38:09 1993 Bryan O'Sullivan (bos@scrg.cs.tcd.ie)
991
* README.unix configure configure.in scmconfig.h.in
992
mkinstalldirs Makefile.in acconfig-1.5.h: SCM can now be built
993
using GNU autoconf. Put in scmconfig4c5.tar.gz
995
Sun Oct 3 00:33:57 1993 (jaffer at jacal)
997
* MANUAL (bit-count bit-position bit-set*! bit-count*
998
bit-invert!): (from unif.c) are now documented.
1000
* sys.c (fixconfig): added 3rd argument to distinguish between
1001
setjump.h and config.h.
1002
* setjump.h config.h: moved IN_SYS stuff from config.h to
1004
* config.h (HAVE_CONFIG_H): User config preferences now taken
1005
from "scmconfig.h" if HAVE_CONFIG_H is defined.
1006
* config.h (EXIT_SUCCESS EXIT_FAILURE): fixed for VMS.
1008
Sat Oct 2 00:34:38 1993 (jaffer at jacal)
1010
From: rshouman@hermes.chpc.utexas.edu (Radey Shouman)
1011
* unif.c repl.c: added read and write syntax for uniform vectors.
1012
* unif.c (uniform-vector->list list->uniform-vector): created.
1013
* time.c (time_in_msec): conditionalized for wide range of CLKTCK
1015
* config.h (BITSPERDIG POINTERS_MUNGED)
1016
* scm.h (PTR2SCM SCM2PTR)
1017
* scl.c (DIGSTOOBIG)
1018
Ported SCM to Unicos, the Cray operating system.
1020
From: schwab@ls5.informatik.uni-dortmund.de (Andreas Schwab)
1021
* scl.c (dblprec): set from DBL_DIG, if available.
1023
Fri Oct 1 21:43:58 1993 (jaffer at jacal)
1025
* unif.c (bit-position): now returns #f when item is not found.
1026
Now returns #f when 3rd argument is length of 2nd argument
1029
Fri Sep 24 14:30:47 1993 (jaffer at jacal)
1031
* sys.c (free_storage): fixed bug where growth_mon was being
1032
called after the port cell had been freed. gc_end now also
1035
Tue Sep 21 23:46:05 1993 (jaffer at jacal)
1037
* Init.scm scm.c: Restored old command line behaviour (loading all
1038
command line arguments) for case when first command line argument
1039
does not have leading `-'.
1041
* sys.c (mode_bits): abstracted from open_file and mksfpt.
1043
* scm.h (*FPORTP): series of predicates added for operations which
1044
only work on some fports.
1046
* sys.c crs.c: ungetc removed from ptobfuns structure and
1049
Mon Sep 20 23:53:25 1993 (jaffer at jacal)
1051
* sys.c (make-soft-port): Soft-ports added, allowing Scheme
1054
Sun Sep 19 22:55:28 1993 (jaffer at jacal)
1057
* Init.scm scm.c scm.1: command line proccessing totally
1058
rewritten. Thanks to Scott Schwartz
1059
<schwartz@groucho.cs.psu.edu> for help with this.
1061
Mon Sep 13 21:45:52 1993 (jaffer at jacal)
1063
From: pegelow@moorea.uni-muenster.de (Ulrich Pegelow)
1064
* scl.c (add1): finally a way to fool optimizing gcc to not use
1065
extra precision registers.
1067
Sun Sep 12 18:46:02 1993 (jaffer at jacal)
1069
* sys.c (pwrite): added to stubbify fwrite to fix bug on VMS.
1070
* config.h: moved flags to top per suggestions from Bryan
1071
O'Sullivan (bos@scrg.cs.tcd.ie).
1073
Fri Sep 10 11:42:27 1993 (jaffer at jacal)
1075
* repl.c config.h (EXIT_SUCCESS EXIT_ERROR): added. Values
1076
returned by SCM program.
1078
Thu Sep 9 13:09:28 1993 Aubrey Jaffer (jaffer at camelot)
1080
From: Vincent Manis <manis@cs.ubc.ca>
1081
* sys.c (stwrite init_types add_final): fixed declarations.
1083
Mon Sep 6 16:10:50 1993 Bryan O'Sullivan (bos@scrg.cs.tcd.ie)
1085
* README: changed the build and installation instructions to bring
1086
them up to date with reality.
1088
Sun Sep 5 23:08:54 1993 Bryan O'Sullivan (bos@scrg.cs.tcd.ie)
1090
* Wrote autoconf script to support GNU Autoconf configuration
1091
to make scm easier to build.
1093
* Created Makefile.in; a radical overhaul of Makefile to remove
1094
some of the brokenness and allow cross-compilation and use of
1097
Sat Sep 4 23:00:49 1993 (jaffer at jacal)
1100
* sys.c (grow_throw): removed use of memset for SPARC machines.
1102
Sat Sep 4 18:09:59 1993 Bryan O'Sullivan (bos@scrg.cs.tcd.ie)
1104
* time.c: added SVR4 to the list of LACK_FTIME systems, because
1105
most all SVR4 BSD-compatibility stuff is a total mess.
1107
* config.h: changed definition of STDC_HEADERS so it does the
1108
Right Thing on systems which run GCC but don't have header files
1111
* makefile.unix: added a note for SVR4 users.
1113
Tue Aug 31 18:30:53 1993 (jaffer at jacal)
1115
* eval.c (m_define): if verbose >= 5 warnings are issued for all
1116
top-level redefinitions.
1118
Mon Aug 30 16:24:26 1993 (jaffer at jacal)
1120
* scm.c sys.c (finals num_finals add_final): Finalization calls
1121
now dynamically, incrementally, defined.
1123
Thu Aug 26 12:38:27 1993 Aubrey Jaffer (jaffer at camelot)
1125
* 4c2: fixed declaration problems in PTOB with K&R C.
1127
Sun Aug 22 23:02:51 1993 (jaffer at jacal)
1129
* split.scm: code which directs input, output, and diagnostic
1130
output to separate windows (using curses functions defined in
1133
Sat Aug 21 16:46:33 1993 (jaffer at jacal)
1135
* Init.scm (output-port-height): added if not already defined.
1136
output-port-width also made conditional.
1138
* sys.c (tc16_strport): string ports created.
1140
Thu Aug 19 11:37:07 1993 (jaffer at jacal)
1142
* sys.c (init_types): freecell, floats, and bignums now have SMOB
1143
entries. gc_sweep and gc_mark still inline codes for bignums and
1146
* sys.c repl.c code.doc: Ports now an extensible type.
1147
Indirection suggested by Shen <sls@aero.org>.
1149
Mon Aug 16 01:20:26 1993 (jaffer at jacal)
1151
* crs.c: curses support created.
1153
Sun Aug 15 16:56:36 1993 (jaffer at jacal)
1155
* rgx.c sys.c (mark0 equal0): mark0 moved to sys.c. equal0
1158
Fri Jun 25 01:16:31 1993 (jaffer at jacal)
1162
Tue Jun 22 00:40:58 1993 Aubrey Jaffer (jaffer at camelot)
1164
* repl.c (ungetted): replaced with CRDYP(stdin) to fix recently
1165
introduced transcript bug.
1167
Sun Jun 20 22:29:32 1993 Aubrey Jaffer (jaffer at camelot)
1169
* config.h (NOSETBUF): setbuf() now conditionalized on NOSETBUF.
1171
* Init.scm (defmacro): now copies the results of macro expansion
1172
in order to avoid capture of memoized code by macros like:
1173
(defmacro f (x) `(list '= ',x ,x)).
1175
Wed Jun 2 23:32:05 1993 Aubrey Jaffer (jaffer at caddr)
1177
* eval.c (map for-each): now check that arguments are lists.
1179
Mon May 31 23:05:19 1993 Aubrey Jaffer (jaffer at camelot)
1181
* Init.scm (trace untrace): now defmacros which handle (trace) and
1182
(untrace) as in Common Lisp.
1184
Wed May 5 01:17:37 1993 Aubrey Jaffer (jaffer at camelot)
1186
From: Roland Orre <orre@sans.kth.se>
1187
* all: internal output functions now take SCM ports instead of
1188
FILE* in preparation for string-ports.
1190
Tue May 4 17:49:49 1993 Aubrey Jaffer (jaffer at wbtree)
1192
* makefile.unix (escm.a): created scm "ar" file and used for
1195
Sun Apr 25 21:35:46 1993 Aubrey Jaffer (jaffer at camelot)
1197
* sys.c (free_storage): i++ moved out of CELL_* in response to:
1198
From: john kozak <jkozak@cix.compulink.co.uk>
1199
Minor bug report: around line 10 of routine "free_storage" you do calls
1200
to CELL_UP and CELL_DOWN with arguments having side-effects: with the
1201
PROT386switch defined in config.h these args are evaluated twice...
1203
Sun Apr 11 22:56:19 1993 Aubrey Jaffer (jaffer at camelot)
1205
* eval.c (IM_DEFINE): added. Internal defines are no longer
1206
turned into LETRECS.
1208
Wed Apr 7 13:32:53 1993 Aubrey Jaffer (jaffer at camelot)
1210
Jerry D. Hedden <HEDDEN@ESDSDF.dnet.ge.com>
1211
* scl.c (idbl2str): fix for bug introduced by removing +'s.
1213
Tue Mar 23 15:37:12 1993 Aubrey Jaffer (jaffer at camelot)
1215
* scl.c (idbl2str): now prints positivie infinity as +#.# again
1218
Mon Mar 22 01:38:02 1993 Aubrey Jaffer (jaffer at montreux)
1220
* subr.c (quotient): renamed to lquotient to avoid conflict with
1223
Fri Mar 19 01:21:08 1993 Aubrey Jaffer (jaffer at camelot)
1225
* sys.c repl.c: #ifndef THINK_C #include <sys/ioctl.h>
1226
* time.c (lstat): #ifndef THINK_C. ThinkC 5.0.1 lacked.
1228
Mon Mar 15 23:35:32 1993 Aubrey Jaffer (jaffer at camelot)
1230
From: jhowland@ariel.cs.trinity.edu (Dr. John E. Howland)
1231
* scl.c (idbl2str iflo2str big2str): leading + eliminated on
1232
output and number->string.
1234
Wed Mar 10 00:58:32 1993 Aubrey Jaffer (jaffer at camelot)
1236
* repl.c scm.h (CRDYP CLRDY CGETUN CUNGET): cleaned up ungetc hack.
1238
* scm.c repl.c (exec): added.
1240
Sun Mar 7 22:44:23 1993 Aubrey Jaffer (jaffer at camelot)
1242
* repl.c (def_err_response): now will print errobjs if they are
1243
immediates, symbols, ports, procedures, or numbers.
1245
Fri Mar 5 23:15:54 1993 Aubrey Jaffer (jaffer at camelot)
1247
* repl.c (repl): now gives repl_report() for initialization.
1249
* Init.scm (defvar): added.
1251
From: Roland Orre <orre@sans.kth.se>
1252
* repl.c (lungetc): no longer calls ungetc. Fixed problem that
1253
many systems had with ungetc on unbuffered ports (setbuf(0)).
1255
Thu Mar 4 13:51:12 1993 Aubrey Jaffer (jaffer at camelot)
1257
From: Stephen Schissler
1258
* makefile.wcc: Watcom support added.
1260
Wed Mar 3 23:11:08 1993 Aubrey Jaffer (jaffer at montreux)
1262
* sys.c scm.h (dynwinds): made a sys_protect.
1264
Mon Feb 15 11:30:50 1993 Aubrey Jaffer (jaffer at camelot)
1266
* Init.scm (defmacro macroexpand macroexpand1 macro? gensym):
1269
* repl.c (stdin): setbuf not done for __TURBOC__==1.
1271
* makefile.bor: now has method to build turtegr.exe.
1273
* eval.c (ceval): Memoizing macros now can return any legal Scheme
1276
Sat Feb 13 18:01:13 1993 Aubrey Jaffer (jaffer at camelot)
1278
* subr.c (mkbig adjbig): now check for bignum size.
1280
* Init.scm: reorganized so site-specific information is at the
1283
* repl.c (errno): changed from set-errno now returns value.
1285
* subr.c (intexpt): now handles bignum exponents.
1287
From: "David J. Fiander" <davidf@golem.waterloo.on.ca>
1288
* time.c makefile.unix subr.c: SCO Unix and XENIX patches.
1290
Fri Feb 12 22:18:57 1993 Aubrey Jaffer (jaffer at camelot)
1292
* Init.scm (WITH-INPUT-FROM-PORT WITH-OUTPUT-TO-PORT
1293
WITH-ERROR-TO-PORT): added.
1295
* subr.c (ash): fixed for case (ash 2 40) where INUM arguments
1296
make a bignum result.
1298
* repl.c (lreadr): \ followed by a newline in a string is ignored.
1300
From: Scott Schwartz <schwartz@groucho.cs.psu.edu>
1301
* repl.c (lreadr): Can now read \0\f\n\r\t\a\v in strings.
1303
Thu Feb 11 01:25:50 1993 Aubrey Jaffer (jaffer at camelot)
1305
* Init.scm (with-input-from-file with-output-to-file
1306
with-error-to-file): now use dynamic-wind.
1308
Sun Feb 7 22:51:08 1993 Aubrey Jaffer (jaffer at camelot)
1310
* eval.c (ceval): fixed bug with non-memoizing macro returning an
1313
Sat Feb 6 01:22:27 1993 Aubrey Jaffer (jaffer at camelot)
1315
* (current-error-port with-error-to-file): add.
1317
Fri Feb 5 00:51:23 1993 Aubrey Jaffer (jaffer at camelot)
1319
* time.c (stat): added.
1321
From: rnelson@wsuaix.csc.wsu.edu (roger nelson)
1322
* dmakefile: support for DICE C on Amiga.
1324
Thu Feb 4 01:55:30 1993 Aubrey Jaffer (jaffer at camelot)
1326
* sys.c (open-file) makes unbuffered if isatty.
1328
* repl.c (char-ready?) added.
1330
Mon Feb 1 15:24:18 1993 Aubrey Jaffer (jaffer at camelot)
1332
* subr.c (logor): changed to LOGIOR to be compatible with common
1335
* eval.c (bodycheck): now checks for empty bodies.
1337
Sun Jan 31 01:01:11 1993 Aubrey Jaffer (jaffer at camelot)
1339
* time.c (get-universal-time decode-universal-time): now use
1342
Tue Jan 26 00:17:06 1993 Aubrey Jaffer (jaffer at camelot)
1344
* sys.c (mark_locations): now length argument in terms of
1345
STACKITEM. Does both alignments in one pass.
1347
Mon Jan 25 12:13:40 1993 Aubrey Jaffer (jaffer at camelot)
1349
From: soravi@Athena.MIT.EDU
1350
* makefile.emx: for OS/2
1352
Sun Jan 24 18:46:32 1993 Aubrey Jaffer (jaffer at camelot)
1354
From: stevev@miser.uoregon.edu (Steve VanDevender)
1355
* scl.c (big2str): now faster because it divides by as many 10s as
1358
Sat Jan 23 00:23:53 1993 Aubrey Jaffer (jaffer at camelot)
1360
From: stevev@miser.uoregon.edu (Steve VanDevender):
1361
* config.h (INUM MAKINUM): shift optimization for TURBOC.
1363
Fri Jan 22 00:46:58 1993 Aubrey Jaffer (jaffer at montreux)
1365
From: hanche@ams.sunysb.edu (Harald Hanche-Olsen)
1366
* unif.c (uniform-vector?): added.
1368
Tue Jan 19 00:27:04 1993 Aubrey Jaffer (jaffer at camelot)
1370
From: stevev@miser.uoregon.edu (Steve VanDevender)
1371
* subr.c scl.c config.h: bignum bug fixes for MSDOS.
1373
Mon Jan 18 01:15:24 1993 Aubrey Jaffer (jaffer at camelot)
1375
* subr.c (ash lognot intlength logcount bitextract): now handle
1378
Sun Jan 17 10:42:44 1993 Aubrey Jaffer (jaffer at camelot)
1380
* sys.c (close_port): can now close pipes as well.
1382
* subr.c (adjbig normbig divide quotient): fixed more divide bugs.
1384
* subr.c (even? odd?): fixed problem with bignums.
1386
Sat Jan 16 00:02:05 1993 Aubrey Jaffer (jaffer at camelot)
1388
* subr.c (divbigbig): Fixed last divide bug?
1390
Fri Jan 15 00:07:27 1993 Aubrey Jaffer (jaffer at camelot)
1392
* rgx.c (regmatch?): added. Debugged for both HP-UX and GNU
1393
regex-0.11. Documentation added to MANUAL.
1395
Thu Jan 14 11:54:52 1993 Aubrey Jaffer (jaffer at camelot)
1397
* patchlvl.h (SCMVERSION): moved from config.h.
1399
* scl.c (product): fixed missing {} bug.
1401
From: HEDDEN@esdsdf.dnet.ge.com
1402
* scl.c (lmin lmax) bignum versions.
1404
Wed Jan 13 01:40:51 1993 Aubrey Jaffer (jaffer at camelot)
1408
* subr.c: fixed bignum bugs found by jacal.
1412
From: HEDDEN@esdsdf.dnet.ge.com
1413
* subr.c (lgcd quotent modulo lremainder): Bignum versions.
1414
* subr.c (divbigbig): new version.
1416
Sun Jan 3 00:29:35 1993 Aubrey Jaffer (jaffer at camelot)
1418
From: stevev@miser.uoregon.edu (Steve VanDevender)
1419
* Re-port to BorlandC v2.0
1421
* sys.c (must_realloc): added
1423
* config.h subr.c (BIGRAD pseudolong): now insensitive to ratio of
1424
sizeof(long)/sizeof(BIGDIG).
1426
Mon Dec 21 23:20:47 1992 Aubrey Jaffer (jaffer at camelot)
1428
From: Scott Schwartz <schwartz@groucho.cs.psu.edu>
1429
* rgx.c: created SCM interface to regex and regexp routines.
1431
From: HEDDEN@esdsdf.dnet.ge.com
1432
* subr.c scl.c: Now just one mulbigbig and addbigbig routine.
1434
from: soravi@Athena.MIT.EDU
1435
* README: directions for compiling SCM under OS/2 2.0.
1437
Wed Dec 9 15:34:30 1992 Aubrey Jaffer (jaffer at camelot)
1439
* eval.c (tc7_subr_2x): eliminated. All comparison subrs now
1442
* scm.h: Changed SUBR numbers. This improves HP-UX interpretation
1445
* eval.c (PURE_FUNCTIONAL): removed. Can now be done in
1446
initialization code.
1448
* eval.c (tc7_rpsubr): added type for transitive comparison
1449
operators. Suprisingly, this slows down (pi 100 5).
1451
Mon Dec 7 16:15:47 1992 Aubrey Jaffer (jaffer at camelot)
1453
* subr.c (logand logor logxor lognot ash logcount integer-length
1454
bit-extract): added.
1456
From: HEDDEN@esdsdf.dnet.ge.com
1457
* scl.c: lots more numeric improvements and code reductions.
1459
Mon Nov 30 12:25:54 1992 Aubrey Jaffer (jaffer at camelot)
1461
* scm.h (IDINC ICDR IDIST): enlarged depth count in ILOCs.
1463
Sun Nov 29 01:10:18 1992 Aubrey Jaffer (jaffer at camelot)
1465
* subr.c scl.c: most arithmetic operations will now return
1468
* config.h (FIXABLE POSFIXABLE NEGFIXABLE): added.
1470
* sys.c (object-hash object-unhash): now use bignums.
1472
* scl.c (big2str istr2int): bignum i/o implemented.
1474
* unif.c: subr2s were incorrectly initialized as lsubr2s.
1476
Tue Nov 24 14:02:52 1992 Aubrey Jaffer (jaffer at camelot)
1478
* eval.c (ceval): added unmemocar calls to error handling when
1481
* scl.c (idbl2str): added back NAN and infinity support.
1483
* eval.c (syntax_mem): replaced with individual macros.
1484
* eval.c (procedure->syntax procedure->macro
1485
procedure->memoizing-macro): All syntactic keywords are now
1486
tc7_symbol. User definable macros added.
1487
* sys.c: ISYMs no longer in symhash. ISYMs cannot be read.
1488
init_isyms merged into init_eval.
1490
Sat Nov 21 00:39:31 1992 Aubrey Jaffer (jaffer at camelot)
1492
* makefile.unix (check): now exits with error code.
1494
* sys.c (init_isyms): eliminated. ISYMS now inited in init_eval.
1496
Fri Nov 20 16:14:06 1992 Aubrey Jaffer (jaffer at camelot)
1500
* repl.c: longjmps now dowinds() first.
1502
* setjump.h: now has all setjmp related definitions.
1504
* Init.scm (trace untrace): use new macro system.
1506
* eval.c (defined? procedure->macro procedure->memoizing-macro
1507
make_synt): macro system added. defined? uses it.
1509
From: HEDDEN@esdsdf.dnet.ge.com
1510
* scl.c: fixes for several transcendental functions.
1512
Thu Nov 19 01:14:38 1992 Aubrey Jaffer (jaffer at camelot)
1514
* repl.c sys.c: errjmp replaced with JMPBUF(rootcont).
1516
Sun Nov 15 01:49:00 1992 Aubrey Jaffer (jaffer at camelot)
1518
From: HEDDEN@esdsdf.dnet.ge.com
1519
* scl.c (istr2int istr2flo istring2number string2number): new
1522
Thu Nov 12 23:00:04 1992 Aubrey Jaffer (jaffer at Ivan)
1524
* Init.scm (load): now prints out actual filename found in mesasge
1527
Wed Nov 11 01:01:59 1992 Aubrey Jaffer (jaffer at camelot)
1529
* repl.c (def_err_response): ARG1 error with errobj==UNDEFINED
1532
From: HEDDEN@esdsdf.dnet.ge.com (Jerry D. Hedden)
1533
* scl.c (difference divide): Now are asubrs.
1535
* Init.scm (*features*): fixed to correspond to SLIB conventions.
1537
Mon Nov 9 12:03:58 1992 Aubrey Jaffer (jaffer at camelot)
1539
* scl.h test.scm: (string->number "i") and "3I" and "3.3I" fixed
1540
to return #f. Tests added to test.scm.
1542
Fri Nov 6 16:39:38 1992 Aubrey Jaffer (jaffer at camelot)
1544
* scm.h (rootcont): sysprotect added.
1546
From: Vincent Manis <manis@cs.ubc.ca>
1547
* scm.h: __cplusplus prototype support.
1549
Thu Nov 5 00:39:50 1992 Aubrey Jaffer (jaffer at Ivan)
1551
* eval.c (lookupcar): now checks for UNDEFINED in local bindings
1552
becuase LETREC inits to UNDEFINED.
1554
* sys.c (dynamic-wind): added.
1556
* config.h eval.c (ceval): CAUTIOUS mode added.
1558
From: hugh@ear.MIT.EDU (Hugh Secker-Walker)
1559
* eval.c (ceval): internal defines now transformed to letrecs.
1561
Sun Oct 25 12:27:23 1992 Aubrey Jaffer (jaffer at Ivan)
1563
* repl.c (read-line read-line!): created.
1565
Sat Oct 24 18:36:23 1992 Aubrey Jaffer (jaffer at camelot)
1567
* repl.c (lreadparen): now tail-recursive.
1569
* eval.c (copy-tree eval): added. dummy_cell replaced with a
1570
cons(obj,UNDEFINED).
1572
Thu Oct 22 21:26:53 1992 Aubrey Jaffer (jaffer at Ivan)
1574
* repl.c (set-errno!): changed to set-errno.
1576
Thu Oct 15 00:49:20 1992 Aubrey Jaffer (jaffer at camelot)
1578
* sys.c (must_free): must_free created. Pointers are set to 0.
1579
It detects objects being freed twice.
1581
Wed Oct 14 23:57:43 1992 Aubrey Jaffer (jaffer at camelot)
1583
* scm.c (run_scm): Now has INITS and FINALS.
1585
* scm.c (init_signals ignore_signals unignore_signals
1586
restore_signals): siginterrupt() for ultix.
1588
Fri Oct 9 14:25:06 1992 Aubrey Jaffer (jaffer at camelot)
1590
* all: put in explicit casts to (unsigned char *) and (long) to
1593
* sys.c (gc): all to gc_end was during deferred interrupts,
1594
causing problems with verbose=3 and interrupts during GC.
1596
* config.h(SYSCALLDEF): fixed so that test on errno occurs before
1597
ALLOW_INTS (and possible call to user code).
1599
Sun Oct 4 01:45:25 1992 Aubrey Jaffer (jaffer at camelot)
1601
* eval.c (syntax_mem): removed gratuitous cons.
1603
* eval.c repl.c scm.h: Reduced static string use. Added peephole
1604
optimizations for AND and OR.
1606
From: hugh@ear.MIT.EDU (Hugh Secker-Walker)
1607
* eval.c repl.c scm.h (syntax_mem): syntax forms are now memoized
1608
so that syntax checks are done only once. Interpreter is now
1609
smaller and faster and uses less stack space. Modifications to
1610
code are now made under DEFER_INTS as they always should have
1613
Wed Sep 30 22:06:24 1992 Aubrey Jaffer (jaffer at Ivan)
1615
* scl.c subr.c scm.h config.h: Started adding bignum code.
1617
Sun Sep 27 22:59:59 1992 Aubrey Jaffer (jaffer at Ivan)
1619
* repl.c (restart): added.
1621
* sys.c (freeall): finished.
1623
* scm.h (tc7_symbol): split into tc7_ssymbol and tc7_msymbol to
1624
distinguish between non-GCable and GCable symbols.
1626
Wed Sep 23 00:36:23 1992 Aubrey Jaffer (jaffer at Ivan)
1628
* repl.c (peek_char lungetc): added workaround for TURBOC 1.0
1629
problem with ungetc inside SYSCALLDEF macro.
1631
* repl.c (iprin1): uses ttyname for #<stream ..> if available.
1633
* Init.scm: now sets verbose to 0 if stdin or stdout is not a tty.
1635
* repl.c (isatty?): added.
1637
* repl.c (verbose): levels bumped up by 1. verbose == 0 means no
1640
* makefile.djg config.h (GNUDOS -> GO32): flags changed for djgpp108.
1642
Wed Aug 26 21:46:26 1992 Aubrey Jaffer (jaffer at Ivan)
1644
* test.scm: put in (test #f < 1 3 2) and (test #f >= 1 3 2).
1646
* scl.c (leqp greqp): put back in. (not (< 1 3 2)) does not imply
1649
* makefile.unix: tar and shar files now created in subdirectory.
1651
* config.h time.c: Linux support added.
1653
* repl.c: Greatly improved VMS interrupt support.
1655
* eval.c (ceval): I_LET now changes to I_LETSTAR for single clause
1658
* (tc7_lsubr_2n): removed.
1660
Fri Jul 31 00:24:50 1992 Aubrey Jaffer (jaffer at Ivan)
1662
* unif.c (bit-position): fixed; I am sure I had done these
1663
changes before. Also corrected some error messages.
1665
From: campbell@redsox.bsw.com (Larry Campbell)
1666
* scm.h subr.c sys.c (equalp): smobfuns now include equalp.
1668
Mon Jul 20 16:44:30 1992 Aubrey Jaffer (jaffer at Ivan)
1670
From: Stephen Adams <S.R.Adams@ecs.southampton.ac.uk>
1671
* eval.c scm.h subr.c (BOOL_NOT) macro added to fix ^ bug in
1672
BorlandC. This was fixed previously as well.
1674
From: campbell@redsox.bsw.com (Larry Campbell)
1675
* unif.c (vector-set-length!): was always typing to tc7_vector.
1677
Sat Jul 18 01:07:33 1992 Aubrey Jaffer (jaffer at Ivan)
1679
* subr.c sys.c (make_vector init_storage resizuve): mallocs and
1680
reallocs are now always > 0.
1682
* time.c (get_univ_time): bypassed mktime() for (__TURBOC__ == 1).
1684
Mon Jul 13 22:27:04 1992 Aubrey Jaffer (jaffer at Ivan)
1686
* repl.c (lreadr): now ignores first line of port if begins with "#!"
1688
* scl.c (lesseqp greqp): removed; changed to use tc7_lsubr_2n.
1690
* scm.h eval.c (tc7_lsubr_2n): type added. Other subr types
1693
Sat Jul 11 23:47:18 1992 Aubrey Jaffer (jaffer at Ivan)
1695
* scm.h sys.c repl.c eval.c code.doc (newsmob smobs smobfuns): now
1696
support dynamically added smob types. Promises moved to eval.c.
1697
Promises and arbiters are now newsmobs.
1699
* makefile.unix repl.c scl.c (floprint): moved from repl.c to
1700
scl.c. The only files which care about -DFLOATS are now scl.c,
1701
eval.c, scm.c, and unif.c.
1703
* sys.c scm.h (init_storage): now uses variable num_protects
1704
instead of #define NUM_PROTECTS.
1706
Tue Jul 7 00:00:57 1992 Aubrey Jaffer (jaffer at Ivan)
1708
From: Ulf_Moeller@hh2.maus.de (Ulf Moeller)
1709
* Init.scm config.h makefile.prj: support for the ATARI-ST with
1712
Tue Jun 30 23:45:50 1992 Aubrey Jaffer (jaffer at Ivan)
1714
* unif.c (make-uniform-vector uniform-vector-set!
1715
uniform-vector-ref): added.
1717
Tue Jun 23 11:49:13 1992 Aubrey Jaffer (jaffer at Ivan)
1719
* scm.h sys.c code.doc: rearranged tc7 codes and added bvect,
1720
ivect, uvect, fvect, dvect, cvect, and cclo.
1722
* scm.h sys.c eval.c repl.c code.doc: Changed symbols to be
1725
Sat Jun 6 22:27:40 1992 Aubrey Jaffer (jaffer at Ivan)
1727
From: campbell@redsox.bsw.com (Larry Campbell)
1728
* scl.c (divide): divide by 0 and Exact-only divides of non
1729
multiples now cause exception in RECKLESS mode.
1731
Wed May 27 16:02:58 1992 Aubrey Jaffer (jaffer at Ivan)
1733
* config.h scl.c (NUMBUFLEN): split into INTBUFLEN and FLOBUFLEN
1734
and made proportional to size of numeric types.
1736
From: fred@sce.carleton.ca (Fred J Kaudel)
1737
* makefile.ast scm.c Init.scm: minor chages for ATARI ST support.
1739
* test.scm (test-inexact): created.
1741
Thu May 21 11:43:41 1992 Aubrey Jaffer (jaffer at Ivan)
1743
* patchlvl.h (PATCHLEVEL): 5
1745
From: hugh@ear.mit.edu (Hugh Secker-Walker)
1746
* config.h: better wording for heap allocation strategy
1749
Wed May 20 00:31:18 1992 Aubrey Jaffer (jaffer at Ivan)
1751
From S.R.Adams@ecs.southampton.ac.uk
1752
* subr.c (stci_leqp st_leqp): reversed order of ^ clauses to avoid
1755
* sys.c (gc_sweep): missing i-=2; added when splicing out segment.
1757
* MANUAL time.c (get-universal-time decode-universal-time): half
1758
hearted attempt to add these. Needs bignums.
1760
Wed May 13 14:01:07 1992 Aubrey Jaffer (jaffer at Ivan)
1762
* sys.c (gc_mark): improved tail recursivness for CONSes.
1764
* repl.c (growth_mon): now prints out the hplims table if
1767
* sys.c (init_heap_seg): Serious bug in growing hplims fixed.
1768
num_heap_segs eliminated; hplims are realloced whenever grown.
1770
Tue May 12 15:36:17 1992 Aubrey Jaffer (jaffer at train)
1772
* config.h sys.c (alloc_some_heap expmem): expmem captures
1773
whether the INIT_HEAP_SIZE allocation was successful. If so,
1774
alloc_some_heap uses exponential heap allocation instead of
1777
Mon May 11 15:29:04 1992 Aubrey Jaffer (jaffer at Ivan)
1779
* sys.c (gc_sweep init_heap_seg heap_org): Empty heap segments
1782
* sc2.c (STR_EXTENSIONS): renamed REV2_PROCEDURES and R2RS and
1783
R3RS functions put into sc2.c.
1785
Sun May 10 01:34:11 1992 Aubrey Jaffer (jaffer at Ivan)
1787
* scm.c (ignore_interrupts unignore_interrupts): added for
1788
system, edt$edit, and popen to use.
1790
* repl.c (lwrite display newline write_char): Close pipe if EPIPE.
1792
* repl.c (file_set_position): now errs on ESPIPE.
1794
* scm.c (SIGPIPE): now ignored (errs come back as EPIPE).
1796
Sat May 9 17:52:36 1992 Aubrey Jaffer (jaffer at Ivan)
1798
From: Stephen Adams <S.R.Adams@ecs.southampton.ac.uk>
1799
* config.h (PROT386): PROT386 added. PTR_LT and CELL_UP modified.
1801
Fri May 8 17:57:22 1992 Aubrey Jaffer (jaffer at Ivan)
1803
From: hugh@ear.mit.edu (Hugh Secker-Walker)
1804
* Init.scm (last-pair append!): last-pair is faster version.
1805
Append! corrected for null first arg. (getenv "HOME") now gets
1806
a "/" added if not present.
1808
* config.scm (MIN_GC_YIELD): now proportional to HEAP_SEG_SIZE.
1810
* README: setting environment variables corrected.
1812
* subr.c (length): error message now has arg if not a list.
1814
* sys.c (open-pipe): now turns off interrupts before forking.
1816
* scl.c (lsystem): now turns off interrupts before forking.
1818
* scm.c (ignore_signals): created.
1820
Sat May 2 01:02:16 1992 Aubrey Jaffer (jaffer at Ivan)
1822
* Init.c (WITH-INPUT-FROM-FILE WITH-OUTPUT-TO-FILE): defined in
1823
terms of current-input-port and current-output-port. Bug in
1824
open-input-pipe and open-output-pipe fixed.
1826
* sys.c repl.c (current-input-port current-output-port): moved
1827
from sys.c to repl.c. set-current-input-port and
1828
set-current-output-port added to repl.c.
1830
Mon Apr 13 22:51:32 1992 Aubrey Jaffer (jaffer at Ivan)
1832
* patchlvl.h: (PATCHLEVEL): released scm4a1.
1834
* makefile.* VMSBUILD.COM VMSGCC.COM: compile time.h.
1836
* scm.c (alrm_signal int_signal): now save and restore errno so
1837
SYSCALL will work correctly across interrupts.
1839
Sun Apr 12 01:44:10 1992 Aubrey Jaffer (jaffer at Ivan)
1841
* patchlvl.h: (PATCHLEVEL): released scm4a0.
1843
* repl.c (lread): tok_buf now local to each invocation of read.
1844
This makes READ interruptable and reentrant.
1846
* sys.c MANUAL (STRING-SET-LENGTH! STRING-VECTOR-LENGTH!): created.
1848
* sys.c repl.c (grow_tok_buf tok_buf tok_buf_len): moved to repl.c
1850
* repl.c (lfwrite): now emulated for VMS.
1852
* repl.c scl.c (num_buf): now local to all routines that use it.
1854
* time.h: created by moving time functions from repl.c. Read and
1855
write functions were moved from sys.c to repl.c.
1857
* sys.c repl.c (DEFER_INTS ALLOW_INTS CHECK_INTS): totally
1858
rewritten. SIGALRM and SIGINT now execute at interrupt level.
1859
Interrupts deferred only for protected code sections, not for
1862
* sys.c repl.c (SYSCALL): created to reexecute system calls
1863
interrupted (EINTR) by SIGALRM and SIGINT.
1865
* sys.c scl.c (flo0): 0.0 is now always flo0.
1867
* repl.c sys.c (TRANSCRIPT-ON TRANSCRIPT-OFF): added. This
1868
required shadowing putc, fputs, fwrite, and getc with lputc,
1869
lputs, lfwrite, and lgetc.
1871
Sun Apr 5 00:27:33 1992 Aubrey Jaffer (jaffer at Ivan)
1873
From: HEDDEN@esdsdf.dnet.ge.com (Jerry D. Hedden)
1874
* scl.c (eqp lessp greaterp lesseqp greatereqp):
1875
Comparisons with inexact numbers was not being performed
1876
correctly. For example, (< 1.0 2.0 1.5) would yield #t. What was
1877
missing was a line x=y; in the inexact comparison sections of
1878
lessp(), greaterp(), lesseqp() and greatereqp(). In addition, I
1879
modified these routines and eqp() to allow for mixed arithmetic
1882
Sat Apr 4 00:17:29 1992 Aubrey Jaffer (jaffer at Ivan)
1884
* scm.h code.doc: tc7_bignum => tc7_spare. Added tc16_bigpos and
1885
tc16_bigneg. SMOBS reordered. tc16_record added.
1887
* scm.h repl.c sys.c (make-arbiter try-arbiter release-arbiter):
1888
added. tc16_arbiter added.
1890
Fri Apr 3 01:25:35 1992 Aubrey Jaffer (jaffer at Ivan)
1892
* sys.c config.h (TEMPTEMPLATE): created in config.h.
1894
* scm.h: removed long aliases for C versions of Scheme functions.
1896
* sys.c eval.c scm.h: (delay force makprom): added. Also added
1897
tc16_promise data type.
1899
* Init.scm (trace untrace): added autoloads and read macros.
1901
From: T. Kurt Bond, tkb@mtnet2.wvnet.edu
1902
* sys.c (template): correct template for VMS.
1904
Tue Mar 31 01:50:12 1992 Aubrey Jaffer (jaffer at Ivan)
1906
* sys.c config.h Init.scm (open-file open-pipe): created and
1907
expressed other open functions in terms of. Bracketed all i/o
1908
system calls with DEFER and ALLOW _SIGINTS.
1910
Sat Mar 28 00:24:01 1992 Aubrey Jaffer (jaffer at Ivan)
1912
* sys.c MANUAL (#.): read macro syntax added. Balanced comments
1915
Fri Mar 27 22:53:26 1992 Aubrey Jaffer (jaffer at Ivan)
1917
* sys.c (iprin1): changed printed representation for unreadable
1918
objects from #[...] to #<...>.
1920
From: brh@aquila.ahse.cdc.com (brian r hanson x6009):
1921
* scm.h config.h (NCELLP PTR_LT): fixes for 64 bit pointers on
1924
Fri Mar 20 01:36:08 1992 Aubrey Jaffer (jaffer at Ivan)
1928
* code.doc: corrected some minor inconsistencies and added a
1929
section "To add a package of new procedures to scm".
1931
Sun Mar 15 19:44:45 1992 Aubrey Jaffer (jaffer at Ivan)
1933
* Init.scm: now loads <program-name>_INIT_PATH when <program-name>
1936
* config.h (PTR_LT): (x < y) => ((x) < (y))
1938
Wed Mar 4 01:53:15 1992 Aubrey Jaffer (jaffer at Ivan)
1942
* scm.h code.doc eval.c sys.c (IXSYM): Eliminated Immediate IXSYM
1945
Tue Mar 3 00:58:18 1992 Aubrey Jaffer (jaffer at Ivan)
1947
* eval.c config.c (ceval DEFINED? SYNTAX_EXTENSIONS): added
1948
DEFINED? to ceval conditional on SYNTAX_EXTENSIONS.
1950
From: Andrew Wilcox <andrew@astro.psu.edu>
1951
* makefile.unix scm.c (main init_scm display_banner init_signals
1952
restore_signals run_scm): RTL support.
1954
Mon Mar 2 19:05:29 1992 Aubrey Jaffer (jaffer at Ivan)
1956
* subr.c (make-string): now checks for ARG1 >= 0.
1958
Fri Feb 28 00:13:00 1992 Aubrey Jaffer (jaffer at Ivan)
1960
* patchlvl.h (PATCHLEVEL): 12
1962
* Init.scm: loads JCAL if scm is invoked with name JCAL, JACAL,
1965
* Init.scm (ABS): set to MAGNITUDE if FLOATS are supported.
1967
* gc_mark gc: no longer assume sizeof(short) == 2.
1969
* config.h (CELL_UP CELL_DN): no longer assume sizeof(CELL) == 8.
1971
From: Brian Hanson, Control Data Corporation. brh@ahse.cdc.com
1972
* scl.c config.h repl.c: partial port to Control Data NOS/VE.
1974
From: fred@sce.carleton.ca (Fred J Kaudel)
1975
* repl.c Init.scm makefile.ast: Port to Atari-ST
1977
* sys.c scm.h eval.c (throw): renamed to lthrow to avoid conflict
1980
Mon Feb 10 14:31:24 1992 Aubrey Jaffer (jaffer at Ivan)
1982
* sys.c (delete-file rename-file): added.
1984
* sys.c (chdir): now returns #f instead of error.
1986
* Init.scm: Calls to PROVIDED? inlined so no longer dependent on
1987
SLIB being loaded. (set! ABS MAGNITUDE) if inexacts supported.
1988
Support for slib1b3 added.
1990
* sys.c (alloc_some_heap): fixed bugs. One fix from
1991
bowles@is.s.u-tokyo.ac.jp.
1993
* eval.c (ceval): fixed bug with internal (define foo bar) where
1994
bar is a global. Put badfun2: back in for better error reporting.
1996
* patchlvl.h (PATCHLEVEL): 11
1998
Mon Jan 20 16:19:04 1992 Aubrey Jaffer (jaffer at Ivan)
2000
* config.c (INITS): comments added.
2002
From: T. Kurt Bond, tkb@mtnet2.wvnet.edu
2003
* VMSGCC.COM VMSMAKE.COM: now take arguments.
2005
From: "Fred Bayer" <bayerf@lan.informatik.tu-muenchen.de>
2006
* makefile.aztec repl.c: Aztec C (makefile) port.
2008
Fri Jan 17 16:36:07 1992 Aubrey Jaffer (jaffer at Ivan)
2010
* sys.c (gc init_storage stack_size): stack_size now of type
2011
sizet. init_storage no longer uses it. gc() now uses it instead
2012
of pointer to local. This fixes bug with gcc -O.
2014
* sys.c (cons cons2 cons2r): &w;&x;&y; removed because of above
2017
Thu Jan 16 22:33:00 1992 Aubrey Jaffer (jaffer at Ivan)
2019
* scl.c (real-part): added.
2021
Wed Jan 15 13:06:39 1992 Aubrey Jaffer (jaffer at Ivan)
2023
From: "Fred Bayer" <bayerf@lan.informatik.tu-muenchen.de>
2024
* scl.c repl.c scm.c config.c: Port for AMIGA
2026
* scm.h (REALP): fixed for SINGLES not defined.
2028
Sat Jan 11 20:20:40 1992 Aubrey Jaffer (jaffer at Ivan)
2030
* patchlvl.h (PATCHLEVEL): 8 released.
2032
* README: added hints for EDITING SCHEME CODE.
2034
* repl.c (SIGRETTYPE): now int for __TURBOC__.
2036
* makefile.tur makefile.djg: created.
2038
* config.h: DJGPP (__GO32__) support added.
2040
* scm.h (memv): definition added.
2042
Sun Jan 5 00:33:44 1992 Aubrey Jaffer (jaffer at Ivan)
2044
* repl.c makefile.* (main): INITS added.
2046
* scl.c: fixed ASSERT statements with mismatched ARGn and
2049
Thu Dec 19 19:16:50 1991 Aubrey Jaffer (jaffer at train)
2051
* sys.c (cons cons2 cons2r): added fix for gcc -O bug.
2053
* repl.c (LACK_FTIME LACK_TIMES): more messing with these.
2055
* sys.c config.o (HAVE_PIPE): created.
2057
* config.h (FLT_RADIX): now #ifdef FLT_RADIX rather than __STDC__.
2060
* sys.c (DBLMANT_DIG DBL_FLOAT_DIG): now tested for directly
2061
rather than STDC_INCLUDES.
2063
* makefile.unix (subr.o): explicit compilation line added.
2065
* scl.c (truncate -> ltrunc): Name conflict with DJGCC libraries.
2067
Sun Dec 8 23:31:04 1991 Aubrey Jaffer (jaffer at Ivan)
2069
* eval.c (apply): added check for number of args to closures.
2071
Sat Dec 7 01:30:46 1991 Aubrey Jaffer (jaffer at Ivan)
2073
* patchlvl.h (PATCHLEVEL): 7
2075
* sys.c (chdir): THINK_C doesn't support;
2077
* repl.c: SVR2 needs <time.h> instead of <sys/time.h>
2079
* repl.c: SVR2 needs LACK_FTIME
2081
* repl.c: #include <sys/timeb.h> now automatic ifndef LACK_FTIME.
2083
Mon Dec 2 15:42:11 1991 Aubrey Jaffer (jaffer at Ivan)
2085
* patchlvl.h (PATCHLEVEL): 5
2087
* sys.c (intern sysintern): made strings and hash unsigned. Fixed
2088
bug with characters > 128 in symbols.
2090
* scl.c (eqv? memv assv): created if FLOATS is #defined. From
2091
boopsy!mike@maccs.dcss.mcmaster.ca (Michael A. Borza).
2093
Mon Dec 2 11:37:11 1991 Aubrey Jaffer (jaffer at Ivan)
2095
* patchlvl.h (PATCHLEVEL): 4
2097
* sys.c (gc_sweep): usaage of pclose() now conditional on unix.
2099
* MANUAL (chdir): documented.
2101
from T. Kurt Bond, Adminisoft, Inc. <tkb@MTNET2.WVNET.EDU>:
2103
* repl.c sys.c (errno): VMS GNU C uses a special hack in <errno.h>
2104
to get the link-time attributes for the errno variable to match
2105
those the VMS C run-time library expects (it makes errno a
2106
preprocessor define so that the variable that the compiler sees
2107
has a special form that the assember then interprets), so if it is
2108
VMS and __GNUC__ is defined <errno.h> needs included.
2110
* setjump.h (SETJUMP LONGJUMP): SETJUMP and LONGJUMP changed to
2111
setjump and longjump. The VMS linker is case-indifferent. VMS GNU
2112
C mangles variable names that have upper case letters in them to
2113
preserve their uniqueness.
2115
* sys.c (iprint iprin1): Now inline putc loops instead of calls to
2116
fwrite for VMS. The VMS `fwrite' has been enhanced to work with
2117
VMS's Record Management Sevice, RMS. Part of this enhancement is
2118
to treat each call to `fwrite' as producing a separate record.
2119
This works fine if you are writing to a stream_LF file or an
2120
actual terminal screen, but if you are writing to a file that has
2121
implied carriage control (such as a batch log file, or a mailbox
2122
used for subprocess communication), which is a more common file
2123
organization for RMS, each call to `fwrite' has a newline appended
2124
to it. This causes much of the output to be incorrectly split
2127
* vmsgcc.com: created.
2129
Sun Dec 1 00:33:42 1991 Aubrey Jaffer (jaffer at Ivan)
2131
* patchlvl.h (PATCHLEVEL): 3 released.
2133
* Init.scm (rev2-procedures): all now supported.
2135
* Init.scm sys.c MANUAL (flush): flush changed to force-output to
2136
be compatible with Common Lisp.
2138
* sys.c (chdir): added.
2140
Wed Nov 27 09:37:20 1991 Aubrey Jaffer (jaffer at Ivan)
2142
* patchlvl.h (PATCHLEVEL): 2
2144
* repl.c (set-errno! perror): added.
2146
* sys.c (gc): FLUSH_REGISTER_WINDOWS call added.
2148
* sys.c (open-input-pipe open-output-pipe close-pipe): added.
2150
Mon Nov 25 13:02:13 1991 Aubrey Jaffer (jaffer at Ivan)
2152
* patchlvl.h (PATCHLEVEL): 1
2154
* sys.c (flush): added.
2156
* repl.c (mytime): macro was missing (). CLKTCK now defaults to 60.
2158
* README Init.scm subr.c scm.c repl.c scl.c: From Yasuaki Honda,
2159
honda@csl.SONY.co.jp, support for Macintosh running Think C.
2161
Sun Nov 24 15:30:51 1991 Aubrey Jaffer (jaffer at Ivan)
2163
* scl.c (str2flo): fixed parsing of -1-i.
2165
* repl.c (repl_driver): from jjc@jclark.com, now checks that
2166
s_response is non-NULL before INTERNing.
2168
* subr.c (equal): Now correct for inexacts. Need to do eqv.
2170
* scm.h (REALPART): fixed pixel C compiler bug with doubles inside
2173
* scl.c (zerop): now checks imaginary half of complex number.
2175
Tue Nov 19 00:10:59 1991 Aubrey Jaffer (jaffer at Ivan)
2179
* documentation: changed revised^3.99 to revised^4.
2181
* example.scm: created from Scheme^4 spec.
2183
* makefile.msc: -Ox changed to -Oxp to fix over-enthusiastic float
2186
* Init.scm (ed): defined.
2188
* repl.c (def_err_response): UNDEFINED objects don't print out.
2190
Sun Nov 17 23:11:03 1991 Aubrey Jaffer (jaffer at Ivan)
2192
* scl.c (vms-debug): now returns UNSPECIFIED.
2194
* repl.c MANUAL (restart_repl): RESTART-REPL changed to ABORT.
2196
* repl.c (err_ctrl_c):now clears sig_pending.
2198
Wed Nov 13 23:51:36 1991 Aubrey Jaffer (jaffer at Ivan)
2200
* config.h: removed #ifdef sparc #define STDC_HEADERS
2202
* makefile.bor: added extra '\' to filepath.
2204
* repl.c (everr): fixed bug with ARGx.
2206
* repl.c (errmsgs def_err_response): cleaned up error messages.
2208
Sun Nov 10 23:10:24 1991 Aubrey Jaffer (jaffer at Ivan)
2212
Mon Nov 4 18:36:49 1991 Aubrey Jaffer (jaffer at Ivan)
2214
* patchlvl.h (PATCHLEVEL): 6
2216
* sys.c (idbl2str): tests for Not-a-Number and Infinity added.
2218
* repl.c scm.h: response system rewritten and integrated with
2221
* scl.c (/): now returns inexacts if integer arguments do not
2224
Mon Oct 28 23:44:16 1991 Aubrey Jaffer (jaffer at Ivan)
2226
* makefile.unix: can now make float (scm) and integer-only (escm)
2227
versions in same directory.
2229
* repl.c (*sigint-response* *arithmetic-response* restart-repl):
2230
responses for signals added.
2232
* scl.c (lmin lmax sum difference product divide expt exp log):
2233
now take mixed types. expt available in non-FLOATS compilation.
2235
* repl.c (get-decoded-time): added. Includes and time functions
2238
* sys.c (object-hash object-unhash): added.
2240
Tue Oct 15 00:45:35 1991 Aubrey Jaffer (jaffer at Ivan)
2242
* repl.c Init.scm (*features*): moved constant features into
2243
Init.scm. Moved tests for numeric features to slib/require.scm.
2247
* config.h (ANSI_INCLUDES): redid include files.
2249
* subr.c scl.c: moved all FLOAT conditionals from subr.c to scl.c.
2251
Wed Oct 9 00:28:54 1991 Aubrey Jaffer (jaffer at Ivan)
2255
* patchlvl.h (PATCHLEVEL): 13
2257
* Init.scm: "vicinity.scm" changed to "require.scm"
2259
Mon Oct 7 00:34:07 1991 Aubrey Jaffer (jaffer at Ivan)
2261
* test.scm: test of redefining built-in symbol and extra ')'
2264
* scm.doc makefile.unix: scm.doc created from scm.1 in
2267
* VMSBUILD.COM setjump.asm setjump.h (setjmp longjmp jmp_buf): put
2268
in from comp.sources.reviewed in order to let VMS have full
2269
continuations. VMSBUILD.COM is a compile script.
2271
Fri Oct 4 00:05:54 1991 Aubrey Jaffer (jaffer at Ivan)
2273
* scl.c(sleep): removed; not supported by MSC (although could be
2276
* scm.h config.h (size_t): moved to config.h.
2278
* sys.c (f_getc): -> lgetc for vax, getc otherwise.
2280
* patchlvl.h (PATCHLEVEL): 12
2282
Mon Sep 30 01:14:48 1991 Aubrey Jaffer (jaffer at Ivan)
2284
* scl.c(sleep): created.
2286
* repl.c(internal-time-units-per-second get=internal-run-time):
2289
* repl.c: created from scm.c (shuffled around lots of functions).
2291
Sat Sep 28 00:22:30 1991 Aubrey Jaffer (jaffer at Ivan)
2293
* scm.c config.h (char-code-limit most-positive-fixnum
2294
most-negative-fixnum): created.
2296
Tue Sep 24 01:21:43 1991 Aubrey Jaffer (jaffer at Ivan)
2298
* scm.c (software-type); created.
2300
* scm.c config.h (terms, list-file, library-vicinity,
2301
program-vicinity, user-vicinity, make-vicinity, sub-vicinity):
2302
moved to Init.scm and library.
2304
* scm.c config.h Makefile (PROGPATH): changed to IMPLPATH.
2308
Fri Sep 20 13:22:08 1991 Aubrey Jaffer (jaffer at Ivan)
2310
* patchlvl.h (PATCHLEVEL): 5
2312
* all: changed declarations to size_t where appropriate. scm.h
2313
test preprocessor flag _SIZE_T to determine if already declared.
2314
size_t should greatly enhance portability to Macintosh and other
2317
Tue Sep 17 01:15:31 1991 Aubrey Jaffer (jaffer at Ivan)
2319
* scm.c (tmpnam): support for mktemp added.
2321
Mon Sep 16 14:06:26 1991 Aubrey Jaffer (jaffer at train)
2323
* scm.c (implementation-vicinity): added. (program-vicinity) now
2324
returns undefined if called not within a load.
2326
* sys.c (call-with-io-file): removed.
2328
* scm.c (tmpnam): added.
2330
* scm.c config.h (tmporary-vicinity): removed.
2332
Sun Sep 15 22:21:30 1991 Aubrey Jaffer (jaffer at Ivan)
2334
* subr.c scm.h (remainder): renamed to lremainder to avoid
2335
conflict with math.h on SunOS4.1 (from bevan@cs.man.ac.uk).
2337
Sat Sep 7 22:27:49 1991 Aubrey Jaffer (jaffer at Ivan)
2339
* scm.c (program-arguments load): program-arguments created.
2341
* scm.c (getenv): added getenv and used for program-vicinity and
2344
* scm.c (program-vicinity): fixed if load_name is NULL.
2346
* scl.c config.h (substring-move-left! substring-move-right!):
2347
added under STR_EXTENSIONS flag.
2349
Wed Aug 28 22:59:20 1991 Aubrey Jaffer (jaffer at Ivan)
2351
* Sending scm3a to comp.sources.reviewed
2353
* scm.c (main): prints out feature list at startup.
2355
* subr.c (eqp lessp greaterp lesseqp greatereqp): now work for
2358
* scl.c (sum difference divide product): moved to scl.c and
2359
now work for floats.
2361
* all: all masks with low bits explicity cast to (int).
2363
Sat Aug 17 00:39:06 1991 Aubrey Jaffer (jaffer at Ivan)
2365
* sys.c subr.c scl.c (iint2str istr2int istring2number istr2flo
2366
iflo2str idbl2str): number I/O and conversion to strings rewritten.
2368
* sys.c (gc_mark): continuations now marked SHORT_ALIGNed. (from
2371
* added QuickC support from Craig Lawson.
2373
Tue Jul 30 01:08:52 1991 Aubrey Jaffer (jaffer at Ivan)
2375
* config.h: #ifdef pyr added.
2377
* scm.c MANUAL: vicinity functions added.
2379
Tue Jul 16 00:51:23 1991 Aubrey Jaffer (jaffer at Ivan)
2381
* scl.c sys.c: float functions added.
2383
* Documentation reorganized according to comp.sources.reviewed
2386
* sys.c config.h (open_input_file open_output_file open_rw_file):
2387
file mode string moved to defines in config.h
2389
Thu Jul 11 23:30:03 1991 Aubrey Jaffer (jaffer at Ivan)
2391
* sys.c config.h (EBCDIC ASCII) moved to config.h
2393
* subr.c config.h (BADIVSGNS) moved to config.h
2395
* scm.h config.h (SRS) moved to config.h
2397
Sun Jul 7 23:49:26 1991 Aubrey Jaffer (jaffer at Ivan)
2399
* all: started adding comp.sources.reviewed corrections and
2402
* scm.c patchlvl.h (main): PATCHLEVEL now printed in banner.
2404
* subr.c sys.c: read_integer removed. istring2number created.
2405
lread and string2number now both use istring2number.
2407
Fri Jun 7 13:43:40 1991 Aubrey Jaffer (jaffer at Ivan)
2409
* VERSION scm2e sent to comp.sources.reviewed
2411
* public.lic: renamed COPYING.
2413
* scm.c (gc_status): gc_status renamed prolixity. Now returns old
2414
value of verbose. Can take 0 arguments.
2416
* sys.c (lreadr): added #| common lisp style |# balanced comments.
2418
* scm.h scm.c sys.c (I/O functions): combined **PORTP and OPENP to
2421
* scm.h sys.c (gc_sweep): moved OPENP to bit in upper half word of
2424
Sat May 25 00:04:45 1991 Aubrey Jaffer (jaffer at Ivan)
2426
* scm.c (stack_start_ptr, repl_driver, main, err functions):
2427
exits removed from all err functions. all escapes through
2430
* scm.c README (verbose): Now has graded verbosity.
2432
* scm.c README (quit): Now takes optional argument which is return
2435
Wed May 22 01:40:17 1991 Aubrey Jaffer (jaffer at Ivan)
2437
* code.doc scm.h eval.c (ceval): Rearanged immediate type codes to
2438
create IXSYMs (immediate extension syms) to allow more than 15
2439
special forms. ILOCs now work with up to 32767 in one environment
2440
frame. Dispatch is slightly faster for ILOCs in function position.
2441
ICHRs can be up to 24 bits.
2443
Fri May 10 00:16:32 1991 Aubrey Jaffer (jaffer at Ivan)
2445
* scm.h sys.c (gc_mark, gc_sweep): GCMARK moved to bit 8 of CAR
2448
Wed May 1 14:11:05 1991 Aubrey Jaffer (jaffer at Ivan)
2450
* patch1 MESSAGE SENT.
2452
* sys.c (lreadr) from jclark@bugs.specialix.co.uk.jjc: removed
2453
order evaluation bug when growing tok_buf.
2455
Fri Apr 26 10:39:41 1991 Aubrey Jaffer (jaffer at Ivan)
2459
* sys.c (closure) no longer calls ilength (ECONS problem). Added
2460
ASSERT before call to closure in eval.
2462
Thu Apr 25 09:53:40 1991 Aubrey Jaffer (jaffer at Ivan)
2464
* scm.c (error): created.
2466
Wed Apr 24 16:58:06 1991 Aubrey Jaffer (jaffer at Ivan)
2468
* utils.scm: created.
2470
* makefile (name8s): code from dmason works in makefile.
2472
* eval.c (evalcar): fixed errobj on (else 3 4) error.
2473
Inlined function application in (cond ((foo => fun))).
2475
* sys.c (lprin1): change looped putcs to fwrite.
2477
Wed Apr 24 01:54:09 1991 Aubrey Jaffer (jaffer at Ivan)
2479
* sys.c (lreadr): fixed assert for "eof in string".
2481
* subr.c (lgcd): changed to work with borland C.
2483
* eval.c (eval): added checks to LAMBDA and LET.
2485
* eval.c (apply): now checks for null arg1 in lsubr.
2487
Fri Apr 12 00:09:03 1991 Aubrey Jaffer (jaffer at kleph)
2489
* config.h scm.h (SCMPTR): created to correct address arithmetic
2490
on stack bounds under Borland C++. Borland C++ now runs scm2c.
2492
Wed Apr 10 21:38:09 1991 Aubrey Jaffer (jaffer at Ivan)
2494
* sys.c (open_io_file, cw_io_file, file_position, file_set_pos,
2495
read_to_str) created (IO_EXTENSIONS)
2497
* config.h (IO_EXTENSIONS): defined
2499
* sys.c scm.c: lprin1f changed to iprin1
2501
Wed Apr 10 12:58:59 1991 Aubrey Jaffer (jaffer at Ivan)
2503
* sys.c (intern): line 850: for(i = alen;0 <= --i;)changed to
2504
for(i = alen;0 < --i;).
2505
This fixed b_pos and v_pos mapping to the same symbol.
2507
Wed Apr 4 00:00:00 1991 Aubrey Jaffer (jaffer at kleph.ai.mit.edu)
2511
Wed Apr 3 22:51:39 1991 Aubrey Jaffer (jaffer at Ivan)
2513
* all files: eliminated types tc7_subr_2n and tc7_subr_2xn.
2514
Replaced with tc7_subr_2o and tc7_subr_1o so that all subr calls
2515
can be checked for number of arguments.
2517
Tue Apr 2 23:11:15 1991 Aubrey Jaffer (jaffer at Ivan)
2519
* code.doc: cleaned up.
2521
Mon Apr 1 14:27:22 1991 Aubrey Jaffer (jaffer at Ivan)
2523
* eval.c (ceval): fixed nasty tail recursion bug at carloop:.
2525
* scm.c (everr): still fixing error reporting.
2527
* eval.c subr.c: added flag PURE_FUNCTIONAL which removes side
2528
effect special forms and functions.
2530
* subr.c (substring): now allows first index to be equal to length
2533
* sys.c (lprin1f): dispatches on TYP16 of smobs.
2535
* scm.h: fixed typo in unused function defs.
2537
Mon Mar 28 00:00:00 1991 Aubrey Jaffer (jaffer at zohar.ai.mit.edu)
2539
* scm2a released: too many changes to record. See code.doc.
2541
Mon Feb 18 21:48:24 1991 Aubrey Jaffer (jaffer at foxkid)
2543
* scm.h: types reformatted (TYP6 -> TYP7).
2545
* eval.c (ceval): Now dispatch directly on ISYMs in ceval.
2547
Fri Feb 15 23:39:48 1991 Aubrey Jaffer (jaffer at foxkid)
2549
* sys.c: #include <malloc.h> not done for VMS
2551
Wed Feb 13 17:49:33 1991 Aubrey Jaffer (jaffer at foxkid)
2553
* scm.c scl.c: added unsigned declarations to some char *
2554
definitions in order to fix characters having negative codes.
2556
* scm.h (MAKISYM, MAKFLAG, ICHR, MAKICHR, MAKINUM): Now cast to
2557
long so that their calls don't have to. Changing MAKICHR fixed
2558
problem in scl.c (string2list) on IBMPC.
2560
* subr.c (quotient): support for `/' reintroduced; required by
2561
r3.99rs but not IEEE.
2563
* subr.c (char functions): added isascii tests for
2564
char-alphabetic, char-numeric?, char-whitespace?,
2565
char-upper-case?, and char-lower-case?. Added test against
2566
char_code_limit to int2char.
2568
* subr.c (s_char_alphap): is subr_1 not lsubr.
2570
* test.scm: added tests for char-alphabetic, char-numeric?,
2571
char-whitespace?, char-upper-case?, and char-lower-case?.
2573
* sys.c: most `return;'s eliminated to reduce warning messages.
2574
Substituted breaks and reordered switch and if clauses.
2576
Sun Feb 3 23:12:34 1991 Aubrey Jaffer (jaffer at foxkid)
2580
* sys.c (read-char peek-char) added code for EOF.
2582
* test.scm (leaf-eq?) added and file "cont.scm" removed. I/O
2585
* sys.c (I/O functions) now check for input and output ports
2586
rather than just ports.
2588
* sys.c (lprin1f): occurences of stdout changed to f. Newlines
2589
after printing port removed.
2591
Thu Jan 31 22:52:39 1991 Aubrey Jaffer (jaffer at foxkid)
2593
* subr.c (quotient): support for `/' removed; not required.
2595
* scm.c (wta): message for OUTOFRANGE fixed.
2597
Mon Jan 28 12:45:55 1991 Aubrey Jaffer (jaffer at foxkid)
2599
* eval.c (apply): added checks for number of arguments.
2601
* scm.h (CHECK_SIGINT): checks for blocked SIGINT.
2603
* sys.c (lprin1): added blocking and testing for SIGINT so that
2604
output won't hang on VMS.
2606
* scm.c (repl): added fflush call.
2608
* scm.c (err_head, wta): added fflush calls to error routines so
2609
that error message come out in proper order.