1Wed Apr 5 14:32:51 1995 Gary Houston <ghouston@actrix.gen.nz> 2 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 6 7Thu Mar 16 14:37:38 1995 Tom Lord <lord@x1.cygnus.com> 8 9 * guile.c: fixed the gcc-specific definition of the macro "AT(x)". 10 11 * guile.c (gscm_init_from_fn): Parameterize what init functions 12 get called (see guile_ks, below). 13 14 * guile-mini.c (guile_mini): a minimalist alternative to guile_ks. 15 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 18 the kitchen sink. 19 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 "/". 23 24 25Thu Mar 9 15:35:20 1995 Tom Lord <lord@x1.cygnus.com> 26 27 * gmain.c (main): Print additional error message if init file 28 can't be opened. 29 30 * guile.c (initialize_gscm): Report an error if the 31 init file can't be opened. 32 33Thu Mar 23 23:22:59 1995 Aubrey Jaffer (jaffer@jacal) 34 35 * scm.texi (I/O-Extensions): Finished. 36 37 * Init.scm (scm:load): `loading' messages now indented. 38 39Sat Mar 4 20:58:51 1995 Aubrey Jaffer (jaffer@jacal) 40 41 * scm.texi: documentation finished for "posix.c" and "unix.c". 42 43 * posix.c (scm_getgroups): added. 44 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. 48 49Thu Mar 2 12:52:25 1995 Aubrey Jaffer (jaffer@jacal) 50 51 * time.c: CLKTCK set from CLOCKS_PER_SEC, if available. Metaware 52 HighC ported. 53 54 * scm.h: USE_ANSI_PROTOTYPES now controls prototypes (was 55 __STDC__). This allows an overly fussy compiler to still have 56 __STDC__. 57 58 From: dorai@ses.com (Dorai Sitaram) 59 * ioext.c (l_utime): include files fixed for __EMX__ 60 61Sun Feb 26 23:46:18 1995 Tom Lord <lord@x1.cygnus.com> 62 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. 66 67Sun Feb 26 21:03:04 1995 Aubrey Jaffer (jaffer@jacal) 68 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 72 mkstrport(). 73 74 * repl.c 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. 81 82 * dynl.c: Dynamic Linking now sets and restores *load-pathname* 83 around the init_ call. 84 85Sat Feb 25 11:03:56 1995 Aubrey Jaffer (jaffer@jacal) 86 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). 90 91Fri Feb 24 23:48:03 1995 Aubrey Jaffer (jaffer@jacal) 92 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. 96 97Wed Feb 22 15:54:01 1995 Aubrey Jaffer (jaffer@jacal) 98 99 * subr.c (append): Added check for bad arguments and fixed errobj. 100 101Sun Feb 19 01:31:59 1995 Aubrey Jaffer (jaffer@jacal) 102 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. 106 107Sat Feb 11 17:30:14 1995 Aubrey Jaffer (jaffer@jacal) 108 109 * ioext.c (lexec): moved from repl.c and scm.c. 110 (lexecp i_exec l_putenv): added. 111 112 * posix.c (open_pipe l_open_input_pipe l_open_output_pipe 113 prinpipe): moved from ioext.c. 114 (l_fork): added. 115 116Fri Feb 10 10:50:03 1995 Aubrey Jaffer (jaffer@jacal) 117 118 * scl.c (num2long long2num): moved here from subr.c. 119 (num2ulong): fixed (< to >=) bug. 120 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. 125 126 * scmfig.h (INUMS_ONLY): defined when INUMs are the only numbers. 127 128Wed Feb 8 17:57:26 1995 Tom Lord (lord@x1.cygnus.com) 129 130 * Ginit.scm (stand-alone-repl): Use new function (rooted-repl) 131 (rooted-repl): new function 132 133Tue Jan 31 16:46:26 1995 Tom Lord (lord@x1.cygnus.com) 134 135 * repl.c (lreadr): compare string constant names 136 in a case insensative way. 137 138 (scm_lread): Take an optional parameter CASEP. 139 If specified and not #f, then symbols are read 140 in a case sensative way. 141 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 146 need. 147 148Sun Jan 29 23:22:40 1995 Aubrey Jaffer (jaffer@jacal) 149 150 * scm.texi (Overview): scm.1 converted to texinfo format and 151 incorporated. 152 153Sat Jan 28 23:11:40 1995 Tom Lord (lord@x1.cygnus.com) 154 155 * repl.c (compiled-library-path): return the value of the 156 compile-time cpp macro "LIBRARY_PATH" or #f. 157 158 * Ginit.scm: use the above path to find slib on unix. 159 This solution should be generalized. 160 161Fri Jan 27 19:58:27 1995 Tom Lord (lord@x1.cygnus.com) 162 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. 166 167 * Makefile.in (manifest): ship all pieces of the info manual. 168 Typos fixes from ghouston. 169 170Thu Jan 26 01:52:00 1995 Tom Lord <lord@x1.cygnus.com> 171 172 From: cessu@cs.hut.fi (Kenneth Oksanen) 173 174 * configure.in: 175 AC_CHECK_LIB(nsl, gethostent) 176 AC_CHECK_LIB(ucb, bzero) 177 AC_CHECK_LIB(socket, socket) 178 AC_CHECK_LIB(bsd, bzero) 179 180 181 From: brent@jade.ssd.csd.harris.com (Brent Benson) 182 183 * gmain.c: line 31: In ANSI C, string literals cannot span multiple 184 source lines. 185 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. 188 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. 192 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 195 prototype!! 196 197Sun Jan 22 11:13:58 1995 Aubrey Jaffer (jaffer@jacal) 198 199 * scm.texi (Internals): code.doc converted to texinfo format. 200 Much added and reorganized. code.doc removed. 201 202Thu Jan 19 00:40:11 1995 Aubrey Jaffer (jaffer@jacal) 203 204 * subr.c (logbitp logtest): added. 205 206Mon Jan 16 01:42:20 1995 Tom Lord <lord@x1.cygnus.com> 207 208 * repl.c (scm_repl): takes two arguments now (prompt and top-level). 209 Callable from Scheme. 210 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 213 unbuffered. 214 215Sun Jan 15 21:51:37 1995 Tom Lord <lord@x1.cygnus.com> 216 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*. 220 221Sun Jan 15 17:49:43 1995 Tom Lord (lord@x1.cygnus.com) 222 223 * guile.c: new file. Friendly C interface for Guile. 224 (see file GUILE) 225 226 * repl.c (scm_cwdr): added call-with-dynamic-root (see scm.texi). 227 228Sat Jan 14 23:35:21 1995 Tom Lord (lord@x1.cygnus.com) 229 230 * repl.c, subr.c: re-arrangement, commenting 231 of source in preparation for pulling repls apart 232 for libguile. 233 234Wed Jan 11 14:45:17 1995 Aubrey Jaffer (jaffer@jacal) 235 236 * scl.c (num2ulong): checks for bignum sign and magnitude added. 237 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. 241 242Tue Jan 10 13:19:52 1995 Aubrey Jaffer (jaffer@jacal) 243 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. 249 250 251Mon Jan 9 00:12:14 1995 Aubrey Jaffer (jaffer@jacal) 252 253 * repl.c (handle_it): Now discards possibly used top freelist cell 254 for GC safety. Also now just punts if errjmp_bad. 255 256 * scm.texi: converted from MANUAL. GUILE documentation merged in. 257 258Sat Jan 7 13:51:04 1995 Miles Bader (miles@eskimo.com) 259 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). 263 264 * defmod.scm: Allow use-interface in the default module. 265 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. 269 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. 274 275 * modops.scm (import): No longer signal an error when trying to 276 export a whole module, as we want to do this sometimes. 277 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. 281 282Sat Jan 7 01:54:11 1995 Tom Lord <lord@x1.cygnus.com> 283 284 * sys.c (scm_intern_obarray_soft): Reserve room for symbol slots. 285 286 * sys.c (scm_makstr, scm_makfromstr): added an extra parameter SLOTS. 287 The parameter means: 288 0: same as the old behavior 289 1: not useful 290 > 1: allocate SLOTS - 1 extra slots in the string storage. 291 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 297 are properly gc'ed. 298 299 Callers of these were fixed as well. 300 301Tue Jan 3 14:30:34 1995 Miles Bader (miles@eskimo.com) 302 303 * modops.scm, extlibs.scm, libguile.scm, defmod.scm: New files: 304 These implement the user-level module system. 305 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. 315 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!. 323 324 * repl.c (scm_repl, scm_tryload, lreadr): Use scm_neval, not eval_3. 325 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. 330 331 * Makefile.in: Install the user-module implementation files. 332 333Mon Jan 2 16:27:25 1995 Miles Bader (miles@eskimo.com) 334 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. 342 343Sun Jan 1 22:30:25 1995 Tom Lord <lord@x1.cygnus.com> 344 345 * repl.c (scm_iprin1), subr.c (scm_lock_vector, scm_unlock_vector, 346 scm_lvector_ref, scm_lvector_set): 347 348 Added locked vectors. See N 349 350Sat Dec 31 15:45:22 1994 Miles Bader <miles@eskimo.com> 351 352 * Ginit.scm: 353 Add define-macro, delq!. 354 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>) 358 359 360 * eval.c(ceval): Here's a patch that makes closures & subrs 361 self-evaluating. 362 363 364Wed Dec 28 00:31:22 1994 Tom Lord <lord@cygnus.com> 365 366 * scm.c (raise): use kill not raise, since it is more portable. 367 368Wed Dec 21 05:18:47 1994 Tom Lord <lord@x1.cygnus.com> 369 370 * eval.c (scm_eval2): Two argument eval. The 371 second argument is #f or a proc returning a variable. 372 373Fri Dec 9 00:40:26 1994 Tom Lord <lord@x1.cygnus.com> 374 375 * eval.c (scm_fasl_eval): eval without copying the source form. 376 This is just a temporary hack. 377 378Sun Dec 4 21:50:37 1994 Tom Lord <lord@x1.cygnus.com> 379 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. 385 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. 389 390Fri Dec 2 19:52:40 1994 Tom Lord (lord@x1.cygnus.com) 391 392 * subr.c (string->obarray-symbol, intern-symbol, unintern-symbol, 393 symbol-set!, symbol-binding) 394 Multiple obarrays. 395 396 * variable.c (scm_make_variable, scm_variable_{ref,set} 397 Implemented variables. Variables are anonymous 398 objects holding one settable value. 399 400Wed Nov 30 04:31:18 1994 Tom Lord (lord@x1.cygnus.com) 401 402 * *.[ch]: renamed all global identifiers to have the prefix scm_. 403 404 * sys.c (gc_sweep, scm_mark_locations, scm_init_heap): 405 406 Modified gc to allow objects of any multiple of sizeof(CELLPTR). 407 In addition, each heap segment gets to specify a freelist (which 408 may be shared). 409 410 new function: scm_alloc_obj 411 new vars: scm_heap_table (replaces hplims) 412 scm_n_heap_segs (replaces (hpims_ind / 2)) 413 414Thu Oct 27 12:57:02 1994 Aubrey Jaffer (jaffer@jacal) 415 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'. 420 421Wed Oct 26 11:22:05 1994 Aubrey Jaffer (jaffer@jacal) 422 423 From: Gary Houston <ghouston@actrix.gen.nz> 424 * scl.c (round): Now rounds as described in R4RS. 425 426 * test.scm (test-inexact): test cases for round. 427 428Tue Oct 25 00:02:27 1994 Aubrey Jaffer (jaffer@jacal) 429 430 * sys.c (grow_throw lthrow dynthrow): now pass arrays, check 431 for adequate growth, and clear out register windows (on sparc). 432 433Mon Oct 24 01:05:34 1994 Aubrey Jaffer (jaffer@jacal) 434 435 * ioext.c (ttyname fileno): added. 436 437Sat Oct 22 12:12:57 1994 Aubrey Jaffer (jaffer@jacal) 438 439 * unix.c (symlink readlink lstat): added. 440 441 * scmfig.h repl.c sys.c (IO_EXTENSIONS): flag removed. 442 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". 447 448Fri Oct 21 21:19:13 1994 Aubrey Jaffer (jaffer@jacal) 449 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. 454 455 (array_map): more liberal check on when ARRAY-MAP! can use 456 array-ified asubrs. 457 458Thu Oct 20 18:00:35 1994 Aubrey Jaffer (jaffer@jacal) 459 460 * sys.c (opendir readdir rewinddir closedir reopen-file): added 461 under IO_EXTENSIONS. 462 463Wed Oct 19 14:18:26 1994 Aubrey Jaffer (jaffer@jacal) 464 465 * eval.c (badargsp): added under ifndef RECKLESS to check @apply 466 and apply() arg counts. 467 468Tue Oct 18 00:02:10 1994 Aubrey Jaffer (jaffer@jacal) 469 470 * unix.c (mknod acct nice sync): added. 471 472 * socket.c (socket bind! gethost connect! listen! accept): added. 473 474 * time.c (utime): added under IO_EXTENSIONS. 475 476Mon Oct 17 23:49:06 1994 Aubrey Jaffer (jaffer@jacal) 477 478 * sys.c (getcwd umask access chmod mkdir rmdir): added 479 under IO_EXTENSIONS. 480 481 * scm.c (l_pause): added if SIGALRM defined. 482 (l_sleep): added if SIGALRM not defined. 483 484 * scl.c (num2ulong): added. Used in "time.c" 485 486Sun Oct 16 22:41:04 1994 Aubrey Jaffer (jaffer@jacal) 487 488 * sys.c (access chmod): Posix access added under IO_EXTENSIONS. 489 490Fri Oct 14 09:45:32 1994 Aubrey Jaffer (jaffer@jacal) 491 492 * posix.c (chown link pipe waitpid, kill, getpw, getgr, get*id, 493 set*id): added. 494 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". 499 500Thu Sep 22 14:48:16 1994 Aubrey Jaffer (jaffer@jacal) 501 502 * subr.c (big2inum): (more accruately) renamed from big2long. 503 504Tue Sep 6 22:22:16 1994 Aubrey Jaffer (jaffer@jacal) 505 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. 511 512 * unif.c repl.c (raprin1): Combined print routine for arrays with 513 that for uves. 514 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. 518 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. 524 525 * unif.c (ARRAY-CONTIGUOUS?) Eliminated. Instead, use 526 (lambda (ra) (array? (array-contents ra #t))) 527 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. 532 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 535 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. 543 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. 548 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. 552 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!. 560 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 565 566 TO DO: 567 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 572 names. 573 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 577 increments 0). 578 579 This doesn't include vectorized REAL-PART, IMAG-PART, 580 MAKE-RECTANGULAR ... 581 582 I think some C support for APL:REDUCE and maybe INNER-PRODUCT will 583 be needed for a reasonably fast APL.scm 584 585 unif.c is getting quite big, time to split it up? 586 587 588Mon Sep 5 22:44:50 1994 Aubrey Jaffer (jaffer@jacal) 589 590 * Init.scm repl.c (quit): code was not using return values 591 correctly. 592 593Sun Aug 21 01:02:48 1994 Aubrey Jaffer (jaffer@jacal) 594 595 * record.c (init_record): remaining record functions moved into C 596 code. 597 * eval.c sys.c: compiled closures now conditional under CCLO. 598 599Sat Aug 20 23:03:36 1994 Aubrey Jaffer (jaffer@jacal) 600 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 605 CCLO. 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. 609 610Mon Aug 1 11:16:56 1994 Aubrey Jaffer (jaffer@jacal) 611 612 * time.c (curtime): replaces get-universal-time. Other time 613 functions removed (SLIB support more complete). 614 615 * subr.c (divbigbig): fixed (modulo -2177452800 86400) => 86400 616 bug. Also added to test.scm. 617 618Sun Jul 24 16:09:48 1994 Aubrey Jaffer (jaffer@jacal) 619 620 * dynl.c (init_dynl): *feature* dld:dyncm added for dynamically 621 (ldso) linked libc.sa and libm.sa (under Linux). 622 623Fri Jul 15 12:53:48 1994 Aubrey Jaffer (jaffer@jacal) 624 625 * unif.c (array-fill!): bug with increment in default clause fixed. 626 Fast string support added. 627 628 From: rshouman@chpc.utexas.edu (Radey Shouman) 629 * unif.c (array-fill! array-for-each): bug fixes. 630 631Sun Jul 10 01:51:00 1994 Aubrey Jaffer (jaffer@jacal) 632 633 * scm.c (run_scm init_scm): "-a" heap allocation argument supported. 634 635 * Makefile (proto.h): removed. 636 637 From: Drew Whitehouse, Drew.Whitehouse@anu.edu.au 638 * scm.h (P): Conditionalized ANSI'fied version of the scm.h. 639 640Sun Jun 26 12:41:59 1994 Aubrey Jaffer (jaffer@jacal) 641 642 * Link.scm (usr:lib lib): Now checks for shared libraries 643 (lib*.sa) first. 644 645Thu Jun 23 19:45:53 1994 Aubrey Jaffer (jaffer@jacal) 646 647 * scl.c scm.c: Support for compilation under Turbo C++ for Windows 648 (system and exec disabled) added under C flag "_Windows". 649 650Sat Jun 18 11:47:17 1994 Aubrey Jaffer (jaffer@jacal) 651 652 * test.scm ((test-delay)): added. 653 ((test-bignum)): added and called automatically if bignums 654 suported. test-inexact called automatically if inexacts 655 supported. 656 657Mon Jun 6 09:26:35 1994 Aubrey Jaffer (jaffer@jacal) 658 659 * Init.scm (trace untrace): moved to SLIB/trace.scm. 660 661Thu May 12 00:01:20 1994 Aubrey Jaffer (jaffer@jacal) 662 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. 667 668 * makefile.unix (proto.h): removed. 669 670 * Transcen.scm: compile-allnumbers HOBBIT declaration added. 671 Init.scm will now load compiled Transcen.o. 672 673 * scm.h: HOBBIT section removed. 674 675 * README (SLIB): Now strongly recommends getting SLIB and lists 676 ftp sites. 677 678 * eval.c (m_delay): fixed bug with multiple sets of (delay x). 679 680Thu Apr 28 22:41:41 1994 Aubrey Jaffer (jaffer@jacal) 681 682 * unif.c (makflo): shortcut for single precision float arrays 683 added. 684 685Fri Apr 15 00:54:14 1994 Aubrey Jaffer (jaffer@jacal) 686 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 692 ARRAY-CONTIGUOUS? 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. 705 for example 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(). 710 711Thu Apr 14 23:26:54 1994 Aubrey Jaffer (jaffer@jacal) 712 713 * time.c (LACK_FTIME LACK_TIMES): defined for vms. 714 715Mon Apr 4 10:39:47 1994 Aubrey Jaffer (jaffer@jacal) 716 717 * eval.c (copytree): now copies vectors as well. 718 719 * repl.c (quit): now accepts #t and #f values. 720 721Sun Apr 3 23:30:14 1994 Aubrey Jaffer (jaffer@jacal) 722 723 * repl.c (repl): call to my_time() moved to not include READ time. 724 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. 728 729Thu Mar 31 16:22:53 1994 Aubrey Jaffer (jaffer@jacal) 730 731 * Init.scm (*SCM-VERSION*): added. 732 733 * Makefile (intro): Added message for those who just make. 734 Cleaned up and reorganized Makefile. 735 736 * patchlvl.h (PATCHLEVEL): removed. Whole version now just in 737 SCMVERSION. 738 739Wed Mar 23 00:09:51 1994 Aubrey Jaffer (jaffer@jacal) 740 741 From: rshouman@chpc.utexas.edu (Radey Shouman) 742 * repl.c (iprin1): Characters higher than 127 print as 743 #\<octal-number>. 744 745 * Init.scm ((read:array digit port)): added. Most # syntax 746 handled in read:sharp. 747 748 * unif.c (clist2uve clist2array): removed. 749 750Fri Mar 11 15:10:53 1994 Radey Shouman (rshouman@chpc.utexas.edu) 751 752 * sys.c (sfgetc): can now return EOF. 753 754Mon Mar 7 17:07:26 1994 Aubrey Jaffer (jaffer@jacal) 755 756 * patchlvl.h (SCMVERSION): 4e0 757 758 * scmfig.h: was config.h (too generic). 759 760 * scm.c (main run_scm) repl.c (repl_driver init_init): now take 761 initpath argument. IMPLINIT now used in scm.c 762 763Sun Feb 27 00:27:45 1994 Aubrey Jaffer (jaffer@jacal) 764 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. 768 769Fri Feb 25 01:55:06 1994 Aubrey Jaffer (jaffer@jacal) 770 771 * eval.c (ceval m_apply IM_APPLY apply:nconc-to-last): @apply 772 special form for tail-recursive apply added. ISYMs reactivated. 773 774Mon Feb 21 14:42:12 1994 Aubrey Jaffer (jaffer@jacal) 775 776 * crs.c (nodelay): added. In NODELAY mode WGETCH returns 777 eof-object when no input is ready. 778 779 * Init.scm ((read:sharp c port)): defined to handle #', #+, and 780 #-. 781 782 * repl.c (lreadr): Now calls out to Scheme function read:sharp 783 when encountering unknown #<char>. 784 785Tue Feb 15 01:08:10 1994 Aubrey Jaffer (jaffer@jacal) 786 787 From: Shiro KAWAI <kawai@sail.t.u-tokyo.ac.jp> 788 * eval.c (ceval apply): under flag CAUTIOUS, checks for applying 789 to non-lists added. 790 791Sat Feb 12 21:23:01 1994 Aubrey Jaffer (jaffer@jacal) 792 793 * sys.c (sym2vcell intern sysintern): now use internal strhash(). 794 795 * scl.c sys.c (hash hashv hashq strhash()): added. 796 797Sat Feb 5 01:24:35 1994 Aubrey Jaffer (jaffer@jacal) 798 799 * scm.h (ARRAY_NDIM): #define ARRAY_NDIM NUMDIGS changed to 800 #define ARRAY_NDIM(x) NUMDIGS(x) to correct problem on Next. 801 802Fri Feb 4 23:15:21 1994 Aubrey Jaffer (jaffer@jacal) 803 804 From: rshouman@chpc.utexas.edu (Radey Shouman) 805 * unif.c: 0d arrays added. Serial array mapping functions and 806 ARRAY-SIMPLE? added. 807 808Thu Feb 3 12:42:18 1994 Aubrey Jaffer (jaffer@jacal) 809 810 * scm.h (LENGTH): now does unsigned shift. 811 812Wed Feb 2 23:40:25 1994 Aubrey Jaffer (jaffer@jacal) 813 814 * Link.scm (*catalog*): catalog entries for db (wb), 815 turtle-graphics, curses, regex, rev2-procedures, and 816 rev3-procedures added. 817 818Sun Jan 30 19:25:24 1994 Aubrey Jaffer (jaffer@jacal) 819 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. 823 824Thu Jan 27 01:09:13 1994 Aubrey Jaffer (jaffer@jacal) 825 826 * dynl.c MANUAL Init.scm (init_dynl): dynamic linking modified for 827 modern linux. 828 829Sat Jan 22 17:58:55 1994 Aubrey Jaffer (jaffer@jacal) 830 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 836 site. 837 838 From: hugh@cosc.canterbury.ac.nz (Hugh Emberson) 839 * dynl.c Link.scm: Dynamic Linking with SunOS. 840 841Thu Jan 6 22:12:51 1994 (jaffer at jacal) 842 843 * sys.c (gc_mark mark_locations): now externally callable. 844 845Sun Jan 2 19:32:59 1994 (jaffer at jacal) 846 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 853 assign the values). 854 855Sat Dec 18 23:55:30 1993 (jaffer at jacal) 856 857 * scm.1 scm.doc (FEATURES): improved and updated manual page. 858 859 * repl.c (BRACKETS_AS_PARENS): controls whether [ and ] are read 860 as ( and ) in forms. 861 862Wed Dec 8 23:13:09 1993 (jaffer at jacal) 863 864 From: rshouman@chpc.utexas.edu (Radey Shouman) 865 * unif.c: More array fixes and functions. 866 867Tue Dec 7 00:44:23 1993 (jaffer at jacal) 868 869 * dynl.c (dld_stub): removed since dld is working better on Linux. 870 871Wed Dec 1 15:27:44 1993 (jaffer at jacal) 872 873 * scm.h (SNAME): explicit cast added to get rid of compiler 874 warnings. 875 876 From: bh@anarres.CS.Berkeley.EDU (Brian Harvey) 877 * repl.c (repl) output newlines when more than one form on a line 878 for Borland C. 879 880 From: rshouman@chpc.utexas.edu (Radey Shouman) 881 * unif.c: More array fixes and documentation. 882 883Mon Nov 29 01:06:21 1993 Aubrey Jaffer (jaffer at montreux) 884 885 From: rshouman@chpc.utexas.edu (Radey Shouman) 886 * unif.c: More array functions (need documentation). 887 888Sun Nov 28 01:34:22 1993 (jaffer at jacal) 889 890 * scm.h (SNAME): returns a pointer to nullstr if offset is 0. 891 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. 894 895 * Link.scm (compile-file): compiles SCM file to object suitable 896 for LOAD. 897 898 * Link.scm: initialization file created with Scheme code for 899 compilation and linking. LOAD now automatically loads SCM object 900 files. 901 902 * dynl.c Init.scm: dynamic linking now works under DLD on Linux. 903 Wb, crs, and sc2 can by dynamically loaded. 904 905Thu Nov 25 22:58:36 1993 (jaffer at jacal) 906 907 * sys.c (ltmpnam): return value of mktemp call tested in accord 908 with HP-UX documentation (returns "" on error). 909 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. 913 914Tue Nov 23 01:18:35 1993 (jaffer at jacal) 915 916 From: dorai@cs.rice.edu (Dorai Sitaram) 917 * repl.c sys.c time.c config.h: MWC (Mark Williams C) support. 918 919Sun Nov 7 10:58:53 1993 (jaffer at jacal) 920 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 925 time. 926 927Mon Nov 1 18:47:04 1993 (jaffer at jacal) 928 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). 932 933Fri Oct 29 01:26:53 1993 (jaffer at jacal) 934 935 * unif.c (rasmob tc16_array): arrays are now a smob. 936 937Thu Oct 28 01:21:43 1993 (jaffer at jacal) 938 939 * sys.c repl.c (igc gc_start): GC message gives reason for GC. 940 941Wed Oct 27 10:03:00 1993 (jaffer at jacal) 942 943 * config.h (SICP): flag makes (eq? '() '#f) and changes other 944 things in order to make SCM more compatible with Abelson and 945 Sussman's book. 946 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. 949 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). 953 954 From: Jerry D. Hedden 955 * pi.scm (bigpi): bignum version of pi calculator. 956 957Tue Oct 26 18:41:33 1993 (jaffer at jacal) 958 959 * repl.c (room): added procedure for printing storage statistics. 960 961Sun Oct 24 22:40:15 1993 (jaffer at jacal) 962 963 * config.h eval.c scl.c (STACK_LIMIT CHECK_STACK): added. 964 * sys.c (stack_check): added. 965 966Sat Oct 23 00:08:30 1993 (jaffer at jacal) 967 968 * sys.c (mallocated): added to keep track of non-heap usage. 969 970 * sys.c (igc): fixed interrupt vulnerabilities around gc. 971 972Sun Oct 17 13:06:11 1993 (jaffer at jacal) 973 974 * repl.c (exit_report): added. Prints cumulative times if 975 (verbose > 2). Called from free_storage(). 976 977 * repl.c (repl): fixed CRDYP(stdin) BUG! Transcripts should work 978 again. Other annoying CR behaviour fixed. 979 980 * time.c (init_time your_base my_base): now not reset when 981 restarting so timing numbers for restarting are correct. 982 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). 988 989Sun Oct 3 20:38:09 1993 Bryan O'Sullivan (bos@scrg.cs.tcd.ie) 990 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 994 995Sun Oct 3 00:33:57 1993 (jaffer at jacal) 996 997 * MANUAL (bit-count bit-position bit-set*! bit-count* 998 bit-invert!): (from unif.c) are now documented. 999 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 1003 setjump.h. 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. 1007 1008Sat Oct 2 00:34:38 1993 (jaffer at jacal) 1009 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 1014 values. 1015 * config.h (BITSPERDIG POINTERS_MUNGED) 1016 * scm.h (PTR2SCM SCM2PTR) 1017 * scl.c (DIGSTOOBIG) 1018 Ported SCM to Unicos, the Cray operating system. 1019 1020 From: schwab@ls5.informatik.uni-dortmund.de (Andreas Schwab) 1021 * scl.c (dblprec): set from DBL_DIG, if available. 1022 1023Fri Oct 1 21:43:58 1993 (jaffer at jacal) 1024 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 1027 (instead of error). 1028 1029Fri Sep 24 14:30:47 1993 (jaffer at jacal) 1030 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 1033 called at end. 1034 1035Tue Sep 21 23:46:05 1993 (jaffer at jacal) 1036 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 `-'. 1040 1041 * sys.c (mode_bits): abstracted from open_file and mksfpt. 1042 1043 * scm.h (*FPORTP): series of predicates added for operations which 1044 only work on some fports. 1045 1046 * sys.c crs.c: ungetc removed from ptobfuns structure and 1047 soft-ports. 1048 1049Mon Sep 20 23:53:25 1993 (jaffer at jacal) 1050 1051 * sys.c (make-soft-port): Soft-ports added, allowing Scheme 1052 i/o extensions. 1053 1054Sun Sep 19 22:55:28 1993 (jaffer at jacal) 1055 1056 * 4c4: released. 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. 1060 1061Mon Sep 13 21:45:52 1993 (jaffer at jacal) 1062 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. 1066 1067Sun Sep 12 18:46:02 1993 (jaffer at jacal) 1068 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). 1072 1073Fri Sep 10 11:42:27 1993 (jaffer at jacal) 1074 1075 * repl.c config.h (EXIT_SUCCESS EXIT_ERROR): added. Values 1076 returned by SCM program. 1077 1078Thu Sep 9 13:09:28 1993 Aubrey Jaffer (jaffer at camelot) 1079 1080 From: Vincent Manis <manis@cs.ubc.ca> 1081 * sys.c (stwrite init_types add_final): fixed declarations. 1082 1083Mon Sep 6 16:10:50 1993 Bryan O'Sullivan (bos@scrg.cs.tcd.ie) 1084 1085 * README: changed the build and installation instructions to bring 1086 them up to date with reality. 1087 1088Sun Sep 5 23:08:54 1993 Bryan O'Sullivan (bos@scrg.cs.tcd.ie) 1089 1090 * Wrote autoconf script to support GNU Autoconf configuration 1091 to make scm easier to build. 1092 1093 * Created Makefile.in; a radical overhaul of Makefile to remove 1094 some of the brokenness and allow cross-compilation and use of 1095 autoconf. 1096 1097Sat Sep 4 23:00:49 1993 (jaffer at jacal) 1098 1099 * 4c3: released. 1100 * sys.c (grow_throw): removed use of memset for SPARC machines. 1101 1102Sat Sep 4 18:09:59 1993 Bryan O'Sullivan (bos@scrg.cs.tcd.ie) 1103 1104 * time.c: added SVR4 to the list of LACK_FTIME systems, because 1105 most all SVR4 BSD-compatibility stuff is a total mess. 1106 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 1109 with prototypes. 1110 1111 * makefile.unix: added a note for SVR4 users. 1112 1113Tue Aug 31 18:30:53 1993 (jaffer at jacal) 1114 1115 * eval.c (m_define): if verbose >= 5 warnings are issued for all 1116 top-level redefinitions. 1117 1118Mon Aug 30 16:24:26 1993 (jaffer at jacal) 1119 1120 * scm.c sys.c (finals num_finals add_final): Finalization calls 1121 now dynamically, incrementally, defined. 1122 1123Thu Aug 26 12:38:27 1993 Aubrey Jaffer (jaffer at camelot) 1124 1125 * 4c2: fixed declaration problems in PTOB with K&R C. 1126 1127Sun Aug 22 23:02:51 1993 (jaffer at jacal) 1128 1129 * split.scm: code which directs input, output, and diagnostic 1130 output to separate windows (using curses functions defined in 1131 crs.c). 1132 1133Sat Aug 21 16:46:33 1993 (jaffer at jacal) 1134 1135 * Init.scm (output-port-height): added if not already defined. 1136 output-port-width also made conditional. 1137 1138 * sys.c (tc16_strport): string ports created. 1139 1140Thu Aug 19 11:37:07 1993 (jaffer at jacal) 1141 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 1144 floats. 1145 1146 * sys.c repl.c code.doc: Ports now an extensible type. 1147 Indirection suggested by Shen <sls@aero.org>. 1148 1149Mon Aug 16 01:20:26 1993 (jaffer at jacal) 1150 1151 * crs.c: curses support created. 1152 1153Sun Aug 15 16:56:36 1993 (jaffer at jacal) 1154 1155 * rgx.c sys.c (mark0 equal0): mark0 moved to sys.c. equal0 1156 created. 1157 1158Fri Jun 25 01:16:31 1993 (jaffer at jacal) 1159 1160 * QUICKREF: added. 1161 1162Tue Jun 22 00:40:58 1993 Aubrey Jaffer (jaffer at camelot) 1163 1164 * repl.c (ungetted): replaced with CRDYP(stdin) to fix recently 1165 introduced transcript bug. 1166 1167Sun Jun 20 22:29:32 1993 Aubrey Jaffer (jaffer at camelot) 1168 1169 * config.h (NOSETBUF): setbuf() now conditionalized on NOSETBUF. 1170 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)). 1174 1175Wed Jun 2 23:32:05 1993 Aubrey Jaffer (jaffer at caddr) 1176 1177 * eval.c (map for-each): now check that arguments are lists. 1178 1179Mon May 31 23:05:19 1993 Aubrey Jaffer (jaffer at camelot) 1180 1181 * Init.scm (trace untrace): now defmacros which handle (trace) and 1182 (untrace) as in Common Lisp. 1183 1184Wed May 5 01:17:37 1993 Aubrey Jaffer (jaffer at camelot) 1185 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. 1189 1190Tue May 4 17:49:49 1993 Aubrey Jaffer (jaffer at wbtree) 1191 1192 * makefile.unix (escm.a): created scm "ar" file and used for 1193 dbscm. 1194 1195Sun Apr 25 21:35:46 1993 Aubrey Jaffer (jaffer at camelot) 1196 1197 * sys.c (free_storage): i++ moved out of CELL_* in response to: 1198From: john kozak <jkozak@cix.compulink.co.uk> 1199Minor bug report: around line 10 of routine "free_storage" you do calls 1200to CELL_UP and CELL_DOWN with arguments having side-effects: with the 1201PROT386switch defined in config.h these args are evaluated twice... 1202 1203Sun Apr 11 22:56:19 1993 Aubrey Jaffer (jaffer at camelot) 1204 1205 * eval.c (IM_DEFINE): added. Internal defines are no longer 1206 turned into LETRECS. 1207 1208Wed Apr 7 13:32:53 1993 Aubrey Jaffer (jaffer at camelot) 1209 1210 Jerry D. Hedden <HEDDEN@ESDSDF.dnet.ge.com> 1211 * scl.c (idbl2str): fix for bug introduced by removing +'s. 1212 1213Tue Mar 23 15:37:12 1993 Aubrey Jaffer (jaffer at camelot) 1214 1215 * scl.c (idbl2str): now prints positivie infinity as +#.# again 1216 (instead of #.#). 1217 1218Mon Mar 22 01:38:02 1993 Aubrey Jaffer (jaffer at montreux) 1219 1220 * subr.c (quotient): renamed to lquotient to avoid conflict with 1221 HP-UX 9.01. 1222 1223Fri Mar 19 01:21:08 1993 Aubrey Jaffer (jaffer at camelot) 1224 1225 * sys.c repl.c: #ifndef THINK_C #include <sys/ioctl.h> 1226 * time.c (lstat): #ifndef THINK_C. ThinkC 5.0.1 lacked. 1227 1228Mon Mar 15 23:35:32 1993 Aubrey Jaffer (jaffer at camelot) 1229 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. 1233 1234Wed Mar 10 00:58:32 1993 Aubrey Jaffer (jaffer at camelot) 1235 1236 * repl.c scm.h (CRDYP CLRDY CGETUN CUNGET): cleaned up ungetc hack. 1237 1238 * scm.c repl.c (exec): added. 1239 1240Sun Mar 7 22:44:23 1993 Aubrey Jaffer (jaffer at camelot) 1241 1242 * repl.c (def_err_response): now will print errobjs if they are 1243 immediates, symbols, ports, procedures, or numbers. 1244 1245Fri Mar 5 23:15:54 1993 Aubrey Jaffer (jaffer at camelot) 1246 1247 * repl.c (repl): now gives repl_report() for initialization. 1248 1249 * Init.scm (defvar): added. 1250 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)). 1254 1255Thu Mar 4 13:51:12 1993 Aubrey Jaffer (jaffer at camelot) 1256 1257 From: Stephen Schissler 1258 * makefile.wcc: Watcom support added. 1259 1260Wed Mar 3 23:11:08 1993 Aubrey Jaffer (jaffer at montreux) 1261 1262 * sys.c scm.h (dynwinds): made a sys_protect. 1263 1264Mon Feb 15 11:30:50 1993 Aubrey Jaffer (jaffer at camelot) 1265 1266 * Init.scm (defmacro macroexpand macroexpand1 macro? gensym): 1267 added. 1268 1269 * repl.c (stdin): setbuf not done for __TURBOC__==1. 1270 1271 * makefile.bor: now has method to build turtegr.exe. 1272 1273 * eval.c (ceval): Memoizing macros now can return any legal Scheme 1274 expression. 1275 1276Sat Feb 13 18:01:13 1993 Aubrey Jaffer (jaffer at camelot) 1277 1278 * subr.c (mkbig adjbig): now check for bignum size. 1279 1280 * Init.scm: reorganized so site-specific information is at the 1281 head. 1282 1283 * repl.c (errno): changed from set-errno now returns value. 1284 1285 * subr.c (intexpt): now handles bignum exponents. 1286 1287 From: "David J. Fiander" <davidf@golem.waterloo.on.ca> 1288 * time.c makefile.unix subr.c: SCO Unix and XENIX patches. 1289 1290Fri Feb 12 22:18:57 1993 Aubrey Jaffer (jaffer at camelot) 1291 1292 * Init.scm (WITH-INPUT-FROM-PORT WITH-OUTPUT-TO-PORT 1293 WITH-ERROR-TO-PORT): added. 1294 1295 * subr.c (ash): fixed for case (ash 2 40) where INUM arguments 1296 make a bignum result. 1297 1298 * repl.c (lreadr): \ followed by a newline in a string is ignored. 1299 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. 1302 1303Thu Feb 11 01:25:50 1993 Aubrey Jaffer (jaffer at camelot) 1304 1305 * Init.scm (with-input-from-file with-output-to-file 1306 with-error-to-file): now use dynamic-wind. 1307 1308Sun Feb 7 22:51:08 1993 Aubrey Jaffer (jaffer at camelot) 1309 1310 * eval.c (ceval): fixed bug with non-memoizing macro returning an 1311 IMP. 1312 1313Sat Feb 6 01:22:27 1993 Aubrey Jaffer (jaffer at camelot) 1314 1315 * (current-error-port with-error-to-file): add. 1316 1317Fri Feb 5 00:51:23 1993 Aubrey Jaffer (jaffer at camelot) 1318 1319 * time.c (stat): added. 1320 1321 From: rnelson@wsuaix.csc.wsu.edu (roger nelson) 1322 * dmakefile: support for DICE C on Amiga. 1323 1324Thu Feb 4 01:55:30 1993 Aubrey Jaffer (jaffer at camelot) 1325 1326 * sys.c (open-file) makes unbuffered if isatty. 1327 1328 * repl.c (char-ready?) added. 1329 1330Mon Feb 1 15:24:18 1993 Aubrey Jaffer (jaffer at camelot) 1331 1332 * subr.c (logor): changed to LOGIOR to be compatible with common 1333 Lisp. 1334 1335 * eval.c (bodycheck): now checks for empty bodies. 1336 1337Sun Jan 31 01:01:11 1993 Aubrey Jaffer (jaffer at camelot) 1338 1339 * time.c (get-universal-time decode-universal-time): now use 1340 bignums. 1341 1342Tue Jan 26 00:17:06 1993 Aubrey Jaffer (jaffer at camelot) 1343 1344 * sys.c (mark_locations): now length argument in terms of 1345 STACKITEM. Does both alignments in one pass. 1346 1347Mon Jan 25 12:13:40 1993 Aubrey Jaffer (jaffer at camelot) 1348 1349 From: soravi@Athena.MIT.EDU 1350 * makefile.emx: for OS/2 1351 1352Sun Jan 24 18:46:32 1993 Aubrey Jaffer (jaffer at camelot) 1353 1354 From: stevev@miser.uoregon.edu (Steve VanDevender) 1355 * scl.c (big2str): now faster because it divides by as many 10s as 1356 fit in a BIGDIG. 1357 1358Sat Jan 23 00:23:53 1993 Aubrey Jaffer (jaffer at camelot) 1359 1360 From: stevev@miser.uoregon.edu (Steve VanDevender): 1361 * config.h (INUM MAKINUM): shift optimization for TURBOC. 1362 1363Fri Jan 22 00:46:58 1993 Aubrey Jaffer (jaffer at montreux) 1364 1365 From: hanche@ams.sunysb.edu (Harald Hanche-Olsen) 1366 * unif.c (uniform-vector?): added. 1367 1368Tue Jan 19 00:27:04 1993 Aubrey Jaffer (jaffer at camelot) 1369 1370 From: stevev@miser.uoregon.edu (Steve VanDevender) 1371 * subr.c scl.c config.h: bignum bug fixes for MSDOS. 1372 1373Mon Jan 18 01:15:24 1993 Aubrey Jaffer (jaffer at camelot) 1374 1375 * subr.c (ash lognot intlength logcount bitextract): now handle 1376 bignums. 1377 1378Sun Jan 17 10:42:44 1993 Aubrey Jaffer (jaffer at camelot) 1379 1380 * sys.c (close_port): can now close pipes as well. 1381 1382 * subr.c (adjbig normbig divide quotient): fixed more divide bugs. 1383 1384 * subr.c (even? odd?): fixed problem with bignums. 1385 1386Sat Jan 16 00:02:05 1993 Aubrey Jaffer (jaffer at camelot) 1387 1388 * subr.c (divbigbig): Fixed last divide bug? 1389 1390Fri Jan 15 00:07:27 1993 Aubrey Jaffer (jaffer at camelot) 1391 1392 * rgx.c (regmatch?): added. Debugged for both HP-UX and GNU 1393 regex-0.11. Documentation added to MANUAL. 1394 1395Thu Jan 14 11:54:52 1993 Aubrey Jaffer (jaffer at camelot) 1396 1397 * patchlvl.h (SCMVERSION): moved from config.h. 1398 1399 * scl.c (product): fixed missing {} bug. 1400 1401 From: HEDDEN@esdsdf.dnet.ge.com 1402 * scl.c (lmin lmax) bignum versions. 1403 1404Wed Jan 13 01:40:51 1993 Aubrey Jaffer (jaffer at camelot) 1405 1406 * released scm4b0. 1407 1408 * subr.c: fixed bignum bugs found by jacal. 1409 1410 * code cleanup. 1411 1412 From: HEDDEN@esdsdf.dnet.ge.com 1413 * subr.c (lgcd quotent modulo lremainder): Bignum versions. 1414 * subr.c (divbigbig): new version. 1415 1416Sun Jan 3 00:29:35 1993 Aubrey Jaffer (jaffer at camelot) 1417 1418 From: stevev@miser.uoregon.edu (Steve VanDevender) 1419 * Re-port to BorlandC v2.0 1420 1421 * sys.c (must_realloc): added 1422 1423 * config.h subr.c (BIGRAD pseudolong): now insensitive to ratio of 1424 sizeof(long)/sizeof(BIGDIG). 1425 1426Mon Dec 21 23:20:47 1992 Aubrey Jaffer (jaffer at camelot) 1427 1428 From: Scott Schwartz <schwartz@groucho.cs.psu.edu> 1429 * rgx.c: created SCM interface to regex and regexp routines. 1430 1431 From: HEDDEN@esdsdf.dnet.ge.com 1432 * subr.c scl.c: Now just one mulbigbig and addbigbig routine. 1433 1434 from: soravi@Athena.MIT.EDU 1435 * README: directions for compiling SCM under OS/2 2.0. 1436 1437Wed Dec 9 15:34:30 1992 Aubrey Jaffer (jaffer at camelot) 1438 1439 * eval.c (tc7_subr_2x): eliminated. All comparison subrs now 1440 rpsubrs. 1441 1442 * scm.h: Changed SUBR numbers. This improves HP-UX interpretation 1443 speed (why?). 1444 1445 * eval.c (PURE_FUNCTIONAL): removed. Can now be done in 1446 initialization code. 1447 1448 * eval.c (tc7_rpsubr): added type for transitive comparison 1449 operators. Suprisingly, this slows down (pi 100 5). 1450 1451Mon Dec 7 16:15:47 1992 Aubrey Jaffer (jaffer at camelot) 1452 1453 * subr.c (logand logor logxor lognot ash logcount integer-length 1454 bit-extract): added. 1455 1456 From: HEDDEN@esdsdf.dnet.ge.com 1457 * scl.c: lots more numeric improvements and code reductions. 1458 1459Mon Nov 30 12:25:54 1992 Aubrey Jaffer (jaffer at camelot) 1460 1461 * scm.h (IDINC ICDR IDIST): enlarged depth count in ILOCs. 1462 1463Sun Nov 29 01:10:18 1992 Aubrey Jaffer (jaffer at camelot) 1464 1465 * subr.c scl.c: most arithmetic operations will now return 1466 bignums. 1467 1468 * config.h (FIXABLE POSFIXABLE NEGFIXABLE): added. 1469 1470 * sys.c (object-hash object-unhash): now use bignums. 1471 1472 * scl.c (big2str istr2int): bignum i/o implemented. 1473 1474 * unif.c: subr2s were incorrectly initialized as lsubr2s. 1475 1476Tue Nov 24 14:02:52 1992 Aubrey Jaffer (jaffer at camelot) 1477 1478 * eval.c (ceval): added unmemocar calls to error handling when 1479 possible. 1480 1481 * scl.c (idbl2str): added back NAN and infinity support. 1482 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. 1489 1490Sat Nov 21 00:39:31 1992 Aubrey Jaffer (jaffer at camelot) 1491 1492 * makefile.unix (check): now exits with error code. 1493 1494 * sys.c (init_isyms): eliminated. ISYMS now inited in init_eval. 1495 1496Fri Nov 20 16:14:06 1992 Aubrey Jaffer (jaffer at camelot) 1497 1498 * released scm4a13 1499 1500 * repl.c: longjmps now dowinds() first. 1501 1502 * setjump.h: now has all setjmp related definitions. 1503 1504 * Init.scm (trace untrace): use new macro system. 1505 1506 * eval.c (defined? procedure->macro procedure->memoizing-macro 1507 make_synt): macro system added. defined? uses it. 1508 1509 From: HEDDEN@esdsdf.dnet.ge.com 1510 * scl.c: fixes for several transcendental functions. 1511 1512Thu Nov 19 01:14:38 1992 Aubrey Jaffer (jaffer at camelot) 1513 1514 * repl.c sys.c: errjmp replaced with JMPBUF(rootcont). 1515 1516Sun Nov 15 01:49:00 1992 Aubrey Jaffer (jaffer at camelot) 1517 1518 From: HEDDEN@esdsdf.dnet.ge.com 1519 * scl.c (istr2int istr2flo istring2number string2number): new 1520 versions. 1521 1522Thu Nov 12 23:00:04 1992 Aubrey Jaffer (jaffer at Ivan) 1523 1524 * Init.scm (load): now prints out actual filename found in mesasge 1525 ;done loading ... 1526 1527Wed Nov 11 01:01:59 1992 Aubrey Jaffer (jaffer at camelot) 1528 1529 * repl.c (def_err_response): ARG1 error with errobj==UNDEFINED 1530 becomes WNA error. 1531 1532 From: HEDDEN@esdsdf.dnet.ge.com (Jerry D. Hedden) 1533 * scl.c (difference divide): Now are asubrs. 1534 1535 * Init.scm (*features*): fixed to correspond to SLIB conventions. 1536 1537Mon Nov 9 12:03:58 1992 Aubrey Jaffer (jaffer at camelot) 1538 1539 * scl.h test.scm: (string->number "i") and "3I" and "3.3I" fixed 1540 to return #f. Tests added to test.scm. 1541 1542Fri Nov 6 16:39:38 1992 Aubrey Jaffer (jaffer at camelot) 1543 1544 * scm.h (rootcont): sysprotect added. 1545 1546 From: Vincent Manis <manis@cs.ubc.ca> 1547 * scm.h: __cplusplus prototype support. 1548 1549Thu Nov 5 00:39:50 1992 Aubrey Jaffer (jaffer at Ivan) 1550 1551 * eval.c (lookupcar): now checks for UNDEFINED in local bindings 1552 becuase LETREC inits to UNDEFINED. 1553 1554 * sys.c (dynamic-wind): added. 1555 1556 * config.h eval.c (ceval): CAUTIOUS mode added. 1557 1558 From: hugh@ear.MIT.EDU (Hugh Secker-Walker) 1559 * eval.c (ceval): internal defines now transformed to letrecs. 1560 1561Sun Oct 25 12:27:23 1992 Aubrey Jaffer (jaffer at Ivan) 1562 1563 * repl.c (read-line read-line!): created. 1564 1565Sat Oct 24 18:36:23 1992 Aubrey Jaffer (jaffer at camelot) 1566 1567 * repl.c (lreadparen): now tail-recursive. 1568 1569 * eval.c (copy-tree eval): added. dummy_cell replaced with a 1570 cons(obj,UNDEFINED). 1571 1572Thu Oct 22 21:26:53 1992 Aubrey Jaffer (jaffer at Ivan) 1573 1574 * repl.c (set-errno!): changed to set-errno. 1575 1576Thu Oct 15 00:49:20 1992 Aubrey Jaffer (jaffer at camelot) 1577 1578 * sys.c (must_free): must_free created. Pointers are set to 0. 1579 It detects objects being freed twice. 1580 1581Wed Oct 14 23:57:43 1992 Aubrey Jaffer (jaffer at camelot) 1582 1583 * scm.c (run_scm): Now has INITS and FINALS. 1584 1585 * scm.c (init_signals ignore_signals unignore_signals 1586 restore_signals): siginterrupt() for ultix. 1587 1588Fri Oct 9 14:25:06 1992 Aubrey Jaffer (jaffer at camelot) 1589 1590 * all: put in explicit casts to (unsigned char *) and (long) to 1591 satisfy lint. 1592 1593 * sys.c (gc): all to gc_end was during deferred interrupts, 1594 causing problems with verbose=3 and interrupts during GC. 1595 1596 * config.h(SYSCALLDEF): fixed so that test on errno occurs before 1597 ALLOW_INTS (and possible call to user code). 1598 1599Sun Oct 4 01:45:25 1992 Aubrey Jaffer (jaffer at camelot) 1600 1601 * eval.c (syntax_mem): removed gratuitous cons. 1602 1603 * eval.c repl.c scm.h: Reduced static string use. Added peephole 1604 optimizations for AND and OR. 1605 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 1611 been. 1612 1613Wed Sep 30 22:06:24 1992 Aubrey Jaffer (jaffer at Ivan) 1614 1615 * scl.c subr.c scm.h config.h: Started adding bignum code. 1616 1617Sun Sep 27 22:59:59 1992 Aubrey Jaffer (jaffer at Ivan) 1618 1619 * repl.c (restart): added. 1620 1621 * sys.c (freeall): finished. 1622 1623 * scm.h (tc7_symbol): split into tc7_ssymbol and tc7_msymbol to 1624 distinguish between non-GCable and GCable symbols. 1625 1626Wed Sep 23 00:36:23 1992 Aubrey Jaffer (jaffer at Ivan) 1627 1628 * repl.c (peek_char lungetc): added workaround for TURBOC 1.0 1629 problem with ungetc inside SYSCALLDEF macro. 1630 1631 * repl.c (iprin1): uses ttyname for #<stream ..> if available. 1632 1633 * Init.scm: now sets verbose to 0 if stdin or stdout is not a tty. 1634 1635 * repl.c (isatty?): added. 1636 1637 * repl.c (verbose): levels bumped up by 1. verbose == 0 means no 1638 prompt. 1639 1640 * makefile.djg config.h (GNUDOS -> GO32): flags changed for djgpp108. 1641 1642Wed Aug 26 21:46:26 1992 Aubrey Jaffer (jaffer at Ivan) 1643 1644 * test.scm: put in (test #f < 1 3 2) and (test #f >= 1 3 2). 1645 1646 * scl.c (leqp greqp): put back in. (not (< 1 3 2)) does not imply 1647 (>= 1 3 2). 1648 1649 * makefile.unix: tar and shar files now created in subdirectory. 1650 1651 * config.h time.c: Linux support added. 1652 1653 * repl.c: Greatly improved VMS interrupt support. 1654 1655 * eval.c (ceval): I_LET now changes to I_LETSTAR for single clause 1656 unnamed lets.y 1657 1658 * (tc7_lsubr_2n): removed. 1659 1660Fri Jul 31 00:24:50 1992 Aubrey Jaffer (jaffer at Ivan) 1661 1662 * unif.c (bit-position): fixed; I am sure I had done these 1663 changes before. Also corrected some error messages. 1664 1665 From: campbell@redsox.bsw.com (Larry Campbell) 1666 * scm.h subr.c sys.c (equalp): smobfuns now include equalp. 1667 1668Mon Jul 20 16:44:30 1992 Aubrey Jaffer (jaffer at Ivan) 1669 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. 1673 1674 From: campbell@redsox.bsw.com (Larry Campbell) 1675 * unif.c (vector-set-length!): was always typing to tc7_vector. 1676 1677Sat Jul 18 01:07:33 1992 Aubrey Jaffer (jaffer at Ivan) 1678 1679 * subr.c sys.c (make_vector init_storage resizuve): mallocs and 1680 reallocs are now always > 0. 1681 1682 * time.c (get_univ_time): bypassed mktime() for (__TURBOC__ == 1). 1683 1684Mon Jul 13 22:27:04 1992 Aubrey Jaffer (jaffer at Ivan) 1685 1686 * repl.c (lreadr): now ignores first line of port if begins with "#!" 1687 1688 * scl.c (lesseqp greqp): removed; changed to use tc7_lsubr_2n. 1689 1690 * scm.h eval.c (tc7_lsubr_2n): type added. Other subr types 1691 rearranged. 1692 1693Sat Jul 11 23:47:18 1992 Aubrey Jaffer (jaffer at Ivan) 1694 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. 1698 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. 1702 1703 * sys.c scm.h (init_storage): now uses variable num_protects 1704 instead of #define NUM_PROTECTS. 1705 1706Tue Jul 7 00:00:57 1992 Aubrey Jaffer (jaffer at Ivan) 1707 1708 From: Ulf_Moeller@hh2.maus.de (Ulf Moeller) 1709 * Init.scm config.h makefile.prj: support for the ATARI-ST with 1710 Turbo C added. 1711 1712Tue Jun 30 23:45:50 1992 Aubrey Jaffer (jaffer at Ivan) 1713 1714 * unif.c (make-uniform-vector uniform-vector-set! 1715 uniform-vector-ref): added. 1716 1717Tue Jun 23 11:49:13 1992 Aubrey Jaffer (jaffer at Ivan) 1718 1719 * scm.h sys.c code.doc: rearranged tc7 codes and added bvect, 1720 ivect, uvect, fvect, dvect, cvect, and cclo. 1721 1722 * scm.h sys.c eval.c repl.c code.doc: Changed symbols to be 1723 tc7_symbol. 1724 1725Sat Jun 6 22:27:40 1992 Aubrey Jaffer (jaffer at Ivan) 1726 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. 1730 1731Wed May 27 16:02:58 1992 Aubrey Jaffer (jaffer at Ivan) 1732 1733 * config.h scl.c (NUMBUFLEN): split into INTBUFLEN and FLOBUFLEN 1734 and made proportional to size of numeric types. 1735 1736 From: fred@sce.carleton.ca (Fred J Kaudel) 1737 * makefile.ast scm.c Init.scm: minor chages for ATARI ST support. 1738 1739 * test.scm (test-inexact): created. 1740 1741Thu May 21 11:43:41 1992 Aubrey Jaffer (jaffer at Ivan) 1742 1743 * patchlvl.h (PATCHLEVEL): 5 1744 1745 From: hugh@ear.mit.edu (Hugh Secker-Walker) 1746 * config.h: better wording for heap allocation strategy 1747 explanation. 1748 1749Wed May 20 00:31:18 1992 Aubrey Jaffer (jaffer at Ivan) 1750 1751 From S.R.Adams@ecs.southampton.ac.uk 1752 * subr.c (stci_leqp st_leqp): reversed order of ^ clauses to avoid 1753 Borland 3.0 bug. 1754 1755 * sys.c (gc_sweep): missing i-=2; added when splicing out segment. 1756 1757 * MANUAL time.c (get-universal-time decode-universal-time): half 1758 hearted attempt to add these. Needs bignums. 1759 1760Wed May 13 14:01:07 1992 Aubrey Jaffer (jaffer at Ivan) 1761 1762 * sys.c (gc_mark): improved tail recursivness for CONSes. 1763 1764 * repl.c (growth_mon): now prints out the hplims table if 1765 verbose>3. 1766 1767 * sys.c (init_heap_seg): Serious bug in growing hplims fixed. 1768 num_heap_segs eliminated; hplims are realloced whenever grown. 1769 1770Tue May 12 15:36:17 1992 Aubrey Jaffer (jaffer at train) 1771 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 1775 HEAP_SEG_SIZE. 1776 1777Mon May 11 15:29:04 1992 Aubrey Jaffer (jaffer at Ivan) 1778 1779 * sys.c (gc_sweep init_heap_seg heap_org): Empty heap segments 1780 are now freed. 1781 1782 * sc2.c (STR_EXTENSIONS): renamed REV2_PROCEDURES and R2RS and 1783 R3RS functions put into sc2.c. 1784 1785Sun May 10 01:34:11 1992 Aubrey Jaffer (jaffer at Ivan) 1786 1787 * scm.c (ignore_interrupts unignore_interrupts): added for 1788 system, edt$edit, and popen to use. 1789 1790 * repl.c (lwrite display newline write_char): Close pipe if EPIPE. 1791 1792 * repl.c (file_set_position): now errs on ESPIPE. 1793 1794 * scm.c (SIGPIPE): now ignored (errs come back as EPIPE). 1795 1796Sat May 9 17:52:36 1992 Aubrey Jaffer (jaffer at Ivan) 1797 1798 From: Stephen Adams <S.R.Adams@ecs.southampton.ac.uk> 1799 * config.h (PROT386): PROT386 added. PTR_LT and CELL_UP modified. 1800 1801Fri May 8 17:57:22 1992 Aubrey Jaffer (jaffer at Ivan) 1802 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. 1807 1808 * config.scm (MIN_GC_YIELD): now proportional to HEAP_SEG_SIZE. 1809 1810 * README: setting environment variables corrected. 1811 1812 * subr.c (length): error message now has arg if not a list. 1813 1814 * sys.c (open-pipe): now turns off interrupts before forking. 1815 1816 * scl.c (lsystem): now turns off interrupts before forking. 1817 1818 * scm.c (ignore_signals): created. 1819 1820Sat May 2 01:02:16 1992 Aubrey Jaffer (jaffer at Ivan) 1821 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. 1825 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. 1829 1830Mon Apr 13 22:51:32 1992 Aubrey Jaffer (jaffer at Ivan) 1831 1832 * patchlvl.h: (PATCHLEVEL): released scm4a1. 1833 1834 * makefile.* VMSBUILD.COM VMSGCC.COM: compile time.h. 1835 1836 * scm.c (alrm_signal int_signal): now save and restore errno so 1837 SYSCALL will work correctly across interrupts. 1838 1839Sun Apr 12 01:44:10 1992 Aubrey Jaffer (jaffer at Ivan) 1840 1841 * patchlvl.h: (PATCHLEVEL): released scm4a0. 1842 1843 * repl.c (lread): tok_buf now local to each invocation of read. 1844 This makes READ interruptable and reentrant. 1845 1846 * sys.c MANUAL (STRING-SET-LENGTH! STRING-VECTOR-LENGTH!): created. 1847 1848 * sys.c repl.c (grow_tok_buf tok_buf tok_buf_len): moved to repl.c 1849 1850 * repl.c (lfwrite): now emulated for VMS. 1851 1852 * repl.c scl.c (num_buf): now local to all routines that use it. 1853 1854 * time.h: created by moving time functions from repl.c. Read and 1855 write functions were moved from sys.c to repl.c. 1856 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 1860 reads and writes. 1861 1862 * sys.c repl.c (SYSCALL): created to reexecute system calls 1863 interrupted (EINTR) by SIGALRM and SIGINT. 1864 1865 * sys.c scl.c (flo0): 0.0 is now always flo0. 1866 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. 1870 1871Sun Apr 5 00:27:33 1992 Aubrey Jaffer (jaffer at Ivan) 1872 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 1880 types. 1881 1882Sat Apr 4 00:17:29 1992 Aubrey Jaffer (jaffer at Ivan) 1883 1884 * scm.h code.doc: tc7_bignum => tc7_spare. Added tc16_bigpos and 1885 tc16_bigneg. SMOBS reordered. tc16_record added. 1886 1887 * scm.h repl.c sys.c (make-arbiter try-arbiter release-arbiter): 1888 added. tc16_arbiter added. 1889 1890Fri Apr 3 01:25:35 1992 Aubrey Jaffer (jaffer at Ivan) 1891 1892 * sys.c config.h (TEMPTEMPLATE): created in config.h. 1893 1894 * scm.h: removed long aliases for C versions of Scheme functions. 1895 1896 * sys.c eval.c scm.h: (delay force makprom): added. Also added 1897 tc16_promise data type. 1898 1899 * Init.scm (trace untrace): added autoloads and read macros. 1900 1901 From: T. Kurt Bond, tkb@mtnet2.wvnet.edu 1902 * sys.c (template): correct template for VMS. 1903 1904Tue Mar 31 01:50:12 1992 Aubrey Jaffer (jaffer at Ivan) 1905 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. 1909 1910Sat Mar 28 00:24:01 1992 Aubrey Jaffer (jaffer at Ivan) 1911 1912 * sys.c MANUAL (#.): read macro syntax added. Balanced comments 1913 also documented. 1914 1915Fri Mar 27 22:53:26 1992 Aubrey Jaffer (jaffer at Ivan) 1916 1917 * sys.c (iprin1): changed printed representation for unreadable 1918 objects from #[...] to #<...>. 1919 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 1922 nosve. 1923 1924Fri Mar 20 01:36:08 1992 Aubrey Jaffer (jaffer at Ivan) 1925 1926 * Released scm3c13 1927 1928 * code.doc: corrected some minor inconsistencies and added a 1929 section "To add a package of new procedures to scm". 1930 1931Sun Mar 15 19:44:45 1992 Aubrey Jaffer (jaffer at Ivan) 1932 1933 * Init.scm: now loads <program-name>_INIT_PATH when <program-name> 1934 is not "SCM". 1935 1936 * config.h (PTR_LT): (x < y) => ((x) < (y)) 1937 1938Wed Mar 4 01:53:15 1992 Aubrey Jaffer (jaffer at Ivan) 1939 1940 * Released scm3c12. 1941 1942 * scm.h code.doc eval.c sys.c (IXSYM): Eliminated Immediate IXSYM 1943 type. 1944 1945Tue Mar 3 00:58:18 1992 Aubrey Jaffer (jaffer at Ivan) 1946 1947 * eval.c config.c (ceval DEFINED? SYNTAX_EXTENSIONS): added 1948 DEFINED? to ceval conditional on SYNTAX_EXTENSIONS. 1949 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. 1953 1954Mon Mar 2 19:05:29 1992 Aubrey Jaffer (jaffer at Ivan) 1955 1956 * subr.c (make-string): now checks for ARG1 >= 0. 1957 1958Fri Feb 28 00:13:00 1992 Aubrey Jaffer (jaffer at Ivan) 1959 1960 * patchlvl.h (PATCHLEVEL): 12 1961 1962 * Init.scm: loads JCAL if scm is invoked with name JCAL, JACAL, 1963 jcal or jacal. 1964 1965 * Init.scm (ABS): set to MAGNITUDE if FLOATS are supported. 1966 1967 * gc_mark gc: no longer assume sizeof(short) == 2. 1968 1969 * config.h (CELL_UP CELL_DN): no longer assume sizeof(CELL) == 8. 1970 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. 1973 1974 From: fred@sce.carleton.ca (Fred J Kaudel) 1975 * repl.c Init.scm makefile.ast: Port to Atari-ST 1976 1977 * sys.c scm.h eval.c (throw): renamed to lthrow to avoid conflict 1978 with Gnu CC. 1979 1980Mon Feb 10 14:31:24 1992 Aubrey Jaffer (jaffer at Ivan) 1981 1982 * sys.c (delete-file rename-file): added. 1983 1984 * sys.c (chdir): now returns #f instead of error. 1985 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. 1989 1990 * sys.c (alloc_some_heap): fixed bugs. One fix from 1991 bowles@is.s.u-tokyo.ac.jp. 1992 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. 1995 1996 * patchlvl.h (PATCHLEVEL): 11 1997 1998Mon Jan 20 16:19:04 1992 Aubrey Jaffer (jaffer at Ivan) 1999 2000 * config.c (INITS): comments added. 2001 2002 From: T. Kurt Bond, tkb@mtnet2.wvnet.edu 2003 * VMSGCC.COM VMSMAKE.COM: now take arguments. 2004 2005 From: "Fred Bayer" <bayerf@lan.informatik.tu-muenchen.de> 2006 * makefile.aztec repl.c: Aztec C (makefile) port. 2007 2008Fri Jan 17 16:36:07 1992 Aubrey Jaffer (jaffer at Ivan) 2009 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. 2013 2014 * sys.c (cons cons2 cons2r): &w;&x;&y; removed because of above 2015 fix. 2016 2017Thu Jan 16 22:33:00 1992 Aubrey Jaffer (jaffer at Ivan) 2018 2019 * scl.c (real-part): added. 2020 2021Wed Jan 15 13:06:39 1992 Aubrey Jaffer (jaffer at Ivan) 2022 2023 From: "Fred Bayer" <bayerf@lan.informatik.tu-muenchen.de> 2024 * scl.c repl.c scm.c config.c: Port for AMIGA 2025 2026 * scm.h (REALP): fixed for SINGLES not defined. 2027 2028Sat Jan 11 20:20:40 1992 Aubrey Jaffer (jaffer at Ivan) 2029 2030 * patchlvl.h (PATCHLEVEL): 8 released. 2031 2032 * README: added hints for EDITING SCHEME CODE. 2033 2034 * repl.c (SIGRETTYPE): now int for __TURBOC__. 2035 2036 * makefile.tur makefile.djg: created. 2037 2038 * config.h: DJGPP (__GO32__) support added. 2039 2040 * scm.h (memv): definition added. 2041 2042Sun Jan 5 00:33:44 1992 Aubrey Jaffer (jaffer at Ivan) 2043 2044 * repl.c makefile.* (main): INITS added. 2045 2046 * scl.c: fixed ASSERT statements with mismatched ARGn and 2047 arguments. 2048 2049Thu Dec 19 19:16:50 1991 Aubrey Jaffer (jaffer at train) 2050 2051 * sys.c (cons cons2 cons2r): added fix for gcc -O bug. 2052 2053 * repl.c (LACK_FTIME LACK_TIMES): more messing with these. 2054 2055 * sys.c config.o (HAVE_PIPE): created. 2056 2057 * config.h (FLT_RADIX): now #ifdef FLT_RADIX rather than __STDC__. 2058 Needed for DJGCC. 2059 2060 * sys.c (DBLMANT_DIG DBL_FLOAT_DIG): now tested for directly 2061 rather than STDC_INCLUDES. 2062 2063 * makefile.unix (subr.o): explicit compilation line added. 2064 2065 * scl.c (truncate -> ltrunc): Name conflict with DJGCC libraries. 2066 2067Sun Dec 8 23:31:04 1991 Aubrey Jaffer (jaffer at Ivan) 2068 2069 * eval.c (apply): added check for number of args to closures. 2070 2071Sat Dec 7 01:30:46 1991 Aubrey Jaffer (jaffer at Ivan) 2072 2073 * patchlvl.h (PATCHLEVEL): 7 2074 2075 * sys.c (chdir): THINK_C doesn't support; 2076 2077 * repl.c: SVR2 needs <time.h> instead of <sys/time.h> 2078 2079 * repl.c: SVR2 needs LACK_FTIME 2080 2081 * repl.c: #include <sys/timeb.h> now automatic ifndef LACK_FTIME. 2082 2083Mon Dec 2 15:42:11 1991 Aubrey Jaffer (jaffer at Ivan) 2084 2085 * patchlvl.h (PATCHLEVEL): 5 2086 2087 * sys.c (intern sysintern): made strings and hash unsigned. Fixed 2088 bug with characters > 128 in symbols. 2089 2090 * scl.c (eqv? memv assv): created if FLOATS is #defined. From 2091 boopsy!mike@maccs.dcss.mcmaster.ca (Michael A. Borza). 2092 2093Mon Dec 2 11:37:11 1991 Aubrey Jaffer (jaffer at Ivan) 2094 2095 * patchlvl.h (PATCHLEVEL): 4 2096 2097 * sys.c (gc_sweep): usaage of pclose() now conditional on unix. 2098 2099 * MANUAL (chdir): documented. 2100 2101 from T. Kurt Bond, Adminisoft, Inc. <tkb@MTNET2.WVNET.EDU>: 2102 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. 2109 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. 2114 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 2125 across lines. 2126 2127 * vmsgcc.com: created. 2128 2129Sun Dec 1 00:33:42 1991 Aubrey Jaffer (jaffer at Ivan) 2130 2131 * patchlvl.h (PATCHLEVEL): 3 released. 2132 2133 * Init.scm (rev2-procedures): all now supported. 2134 2135 * Init.scm sys.c MANUAL (flush): flush changed to force-output to 2136 be compatible with Common Lisp. 2137 2138 * sys.c (chdir): added. 2139 2140Wed Nov 27 09:37:20 1991 Aubrey Jaffer (jaffer at Ivan) 2141 2142 * patchlvl.h (PATCHLEVEL): 2 2143 2144 * repl.c (set-errno! perror): added. 2145 2146 * sys.c (gc): FLUSH_REGISTER_WINDOWS call added. 2147 2148 * sys.c (open-input-pipe open-output-pipe close-pipe): added. 2149 2150Mon Nov 25 13:02:13 1991 Aubrey Jaffer (jaffer at Ivan) 2151 2152 * patchlvl.h (PATCHLEVEL): 1 2153 2154 * sys.c (flush): added. 2155 2156 * repl.c (mytime): macro was missing (). CLKTCK now defaults to 60. 2157 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. 2160 2161Sun Nov 24 15:30:51 1991 Aubrey Jaffer (jaffer at Ivan) 2162 2163 * scl.c (str2flo): fixed parsing of -1-i. 2164 2165 * repl.c (repl_driver): from jjc@jclark.com, now checks that 2166 s_response is non-NULL before INTERNing. 2167 2168 * subr.c (equal): Now correct for inexacts. Need to do eqv. 2169 2170 * scm.h (REALPART): fixed pixel C compiler bug with doubles inside 2171 `?' conditionals. 2172 2173 * scl.c (zerop): now checks imaginary half of complex number. 2174 2175Tue Nov 19 00:10:59 1991 Aubrey Jaffer (jaffer at Ivan) 2176 2177 * version scm3c0 2178 2179 * documentation: changed revised^3.99 to revised^4. 2180 2181 * example.scm: created from Scheme^4 spec. 2182 2183 * makefile.msc: -Ox changed to -Oxp to fix over-enthusiastic float 2184 optimizations. 2185 2186 * Init.scm (ed): defined. 2187 2188 * repl.c (def_err_response): UNDEFINED objects don't print out. 2189 2190Sun Nov 17 23:11:03 1991 Aubrey Jaffer (jaffer at Ivan) 2191 2192 * scl.c (vms-debug): now returns UNSPECIFIED. 2193 2194 * repl.c MANUAL (restart_repl): RESTART-REPL changed to ABORT. 2195 2196 * repl.c (err_ctrl_c):now clears sig_pending. 2197 2198Wed Nov 13 23:51:36 1991 Aubrey Jaffer (jaffer at Ivan) 2199 2200 * config.h: removed #ifdef sparc #define STDC_HEADERS 2201 2202 * makefile.bor: added extra '\' to filepath. 2203 2204 * repl.c (everr): fixed bug with ARGx. 2205 2206 * repl.c (errmsgs def_err_response): cleaned up error messages. 2207 2208Sun Nov 10 23:10:24 1991 Aubrey Jaffer (jaffer at Ivan) 2209 2210 * released scm3b7 2211 2212Mon Nov 4 18:36:49 1991 Aubrey Jaffer (jaffer at Ivan) 2213 2214 * patchlvl.h (PATCHLEVEL): 6 2215 2216 * sys.c (idbl2str): tests for Not-a-Number and Infinity added. 2217 2218 * repl.c scm.h: response system rewritten and integrated with 2219 error system. 2220 2221 * scl.c (/): now returns inexacts if integer arguments do not 2222 divide evenly. 2223 2224Mon Oct 28 23:44:16 1991 Aubrey Jaffer (jaffer at Ivan) 2225 2226 * makefile.unix: can now make float (scm) and integer-only (escm) 2227 versions in same directory. 2228 2229 * repl.c (*sigint-response* *arithmetic-response* restart-repl): 2230 responses for signals added. 2231 2232 * scl.c (lmin lmax sum difference product divide expt exp log): 2233 now take mixed types. expt available in non-FLOATS compilation. 2234 2235 * repl.c (get-decoded-time): added. Includes and time functions 2236 reorganized. 2237 2238 * sys.c (object-hash object-unhash): added. 2239 2240Tue Oct 15 00:45:35 1991 Aubrey Jaffer (jaffer at Ivan) 2241 2242 * repl.c Init.scm (*features*): moved constant features into 2243 Init.scm. Moved tests for numeric features to slib/require.scm. 2244 2245 * release scm3b1. 2246 2247 * config.h (ANSI_INCLUDES): redid include files. 2248 2249 * subr.c scl.c: moved all FLOAT conditionals from subr.c to scl.c. 2250 2251Wed Oct 9 00:28:54 1991 Aubrey Jaffer (jaffer at Ivan) 2252 2253 * release scm3a13. 2254 2255 * patchlvl.h (PATCHLEVEL): 13 2256 2257 * Init.scm: "vicinity.scm" changed to "require.scm" 2258 2259Mon Oct 7 00:34:07 1991 Aubrey Jaffer (jaffer at Ivan) 2260 2261 * test.scm: test of redefining built-in symbol and extra ')' 2262 removed. 2263 2264 * scm.doc makefile.unix: scm.doc created from scm.1 in 2265 makefile.unix. 2266 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. 2270 2271Fri Oct 4 00:05:54 1991 Aubrey Jaffer (jaffer at Ivan) 2272 2273 * scl.c(sleep): removed; not supported by MSC (although could be 2274 written). 2275 2276 * scm.h config.h (size_t): moved to config.h. 2277 2278 * sys.c (f_getc): -> lgetc for vax, getc otherwise. 2279 2280 * patchlvl.h (PATCHLEVEL): 12 2281 2282Mon Sep 30 01:14:48 1991 Aubrey Jaffer (jaffer at Ivan) 2283 2284 * scl.c(sleep): created. 2285 2286 * repl.c(internal-time-units-per-second get=internal-run-time): 2287 created 2288 2289 * repl.c: created from scm.c (shuffled around lots of functions). 2290 2291Sat Sep 28 00:22:30 1991 Aubrey Jaffer (jaffer at Ivan) 2292 2293 * scm.c config.h (char-code-limit most-positive-fixnum 2294 most-negative-fixnum): created. 2295 2296Tue Sep 24 01:21:43 1991 Aubrey Jaffer (jaffer at Ivan) 2297 2298 * scm.c (software-type); created. 2299 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. 2303 2304 * scm.c config.h Makefile (PROGPATH): changed to IMPLPATH. 2305 2306 * Init.scm: created 2307 2308Fri Sep 20 13:22:08 1991 Aubrey Jaffer (jaffer at Ivan) 2309 2310 * patchlvl.h (PATCHLEVEL): 5 2311 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 2315 machines. 2316 2317Tue Sep 17 01:15:31 1991 Aubrey Jaffer (jaffer at Ivan) 2318 2319 * scm.c (tmpnam): support for mktemp added. 2320 2321Mon Sep 16 14:06:26 1991 Aubrey Jaffer (jaffer at train) 2322 2323 * scm.c (implementation-vicinity): added. (program-vicinity) now 2324 returns undefined if called not within a load. 2325 2326 * sys.c (call-with-io-file): removed. 2327 2328 * scm.c (tmpnam): added. 2329 2330 * scm.c config.h (tmporary-vicinity): removed. 2331 2332Sun Sep 15 22:21:30 1991 Aubrey Jaffer (jaffer at Ivan) 2333 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). 2336 2337Sat Sep 7 22:27:49 1991 Aubrey Jaffer (jaffer at Ivan) 2338 2339 * scm.c (program-arguments load): program-arguments created. 2340 2341 * scm.c (getenv): added getenv and used for program-vicinity and 2342 library-vicinity. 2343 2344 * scm.c (program-vicinity): fixed if load_name is NULL. 2345 2346 * scl.c config.h (substring-move-left! substring-move-right!): 2347 added under STR_EXTENSIONS flag. 2348 2349Wed Aug 28 22:59:20 1991 Aubrey Jaffer (jaffer at Ivan) 2350 2351 * Sending scm3a to comp.sources.reviewed 2352 2353 * scm.c (main): prints out feature list at startup. 2354 2355 * subr.c (eqp lessp greaterp lesseqp greatereqp): now work for 2356 floats. 2357 2358 * scl.c (sum difference divide product): moved to scl.c and 2359 now work for floats. 2360 2361 * all: all masks with low bits explicity cast to (int). 2362 2363Sat Aug 17 00:39:06 1991 Aubrey Jaffer (jaffer at Ivan) 2364 2365 * sys.c subr.c scl.c (iint2str istr2int istring2number istr2flo 2366 iflo2str idbl2str): number I/O and conversion to strings rewritten. 2367 2368 * sys.c (gc_mark): continuations now marked SHORT_ALIGNed. (from 2369 Craig Lawson). 2370 2371 * added QuickC support from Craig Lawson. 2372 2373Tue Jul 30 01:08:52 1991 Aubrey Jaffer (jaffer at Ivan) 2374 2375 * config.h: #ifdef pyr added. 2376 2377 * scm.c MANUAL: vicinity functions added. 2378 2379Tue Jul 16 00:51:23 1991 Aubrey Jaffer (jaffer at Ivan) 2380 2381 * scl.c sys.c: float functions added. 2382 2383 * Documentation reorganized according to comp.sources.reviewed 2384 guidelines. 2385 2386 * sys.c config.h (open_input_file open_output_file open_rw_file): 2387 file mode string moved to defines in config.h 2388 2389Thu Jul 11 23:30:03 1991 Aubrey Jaffer (jaffer at Ivan) 2390 2391 * sys.c config.h (EBCDIC ASCII) moved to config.h 2392 2393 * subr.c config.h (BADIVSGNS) moved to config.h 2394 2395 * scm.h config.h (SRS) moved to config.h 2396 2397Sun Jul 7 23:49:26 1991 Aubrey Jaffer (jaffer at Ivan) 2398 2399 * all: started adding comp.sources.reviewed corrections and 2400 suggestions. 2401 2402 * scm.c patchlvl.h (main): PATCHLEVEL now printed in banner. 2403 2404 * subr.c sys.c: read_integer removed. istring2number created. 2405 lread and string2number now both use istring2number. 2406 2407Fri Jun 7 13:43:40 1991 Aubrey Jaffer (jaffer at Ivan) 2408 2409 * VERSION scm2e sent to comp.sources.reviewed 2410 2411 * public.lic: renamed COPYING. 2412 2413 * scm.c (gc_status): gc_status renamed prolixity. Now returns old 2414 value of verbose. Can take 0 arguments. 2415 2416 * sys.c (lreadr): added #| common lisp style |# balanced comments. 2417 2418 * scm.h scm.c sys.c (I/O functions): combined **PORTP and OPENP to 2419 become OP**PORTP. 2420 2421 * scm.h sys.c (gc_sweep): moved OPENP to bit in upper half word of 2422 port cells. 2423 2424Sat May 25 00:04:45 1991 Aubrey Jaffer (jaffer at Ivan) 2425 2426 * scm.c (stack_start_ptr, repl_driver, main, err functions): 2427 exits removed from all err functions. all escapes through 2428 repl_driver. 2429 2430 * scm.c README (verbose): Now has graded verbosity. 2431 2432 * scm.c README (quit): Now takes optional argument which is return 2433 value. 2434 2435Wed May 22 01:40:17 1991 Aubrey Jaffer (jaffer at Ivan) 2436 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. 2442 2443Fri May 10 00:16:32 1991 Aubrey Jaffer (jaffer at Ivan) 2444 2445 * scm.h sys.c (gc_mark, gc_sweep): GCMARK moved to bit 8 of CAR 2446 for some datatypes. 2447 2448Wed May 1 14:11:05 1991 Aubrey Jaffer (jaffer at Ivan) 2449 2450 * patch1 MESSAGE SENT. 2451 2452 * sys.c (lreadr) from jclark@bugs.specialix.co.uk.jjc: removed 2453 order evaluation bug when growing tok_buf. 2454 2455Fri Apr 26 10:39:41 1991 Aubrey Jaffer (jaffer at Ivan) 2456 2457 * scm2d RELEASED 2458 2459 * sys.c (closure) no longer calls ilength (ECONS problem). Added 2460 ASSERT before call to closure in eval. 2461 2462Thu Apr 25 09:53:40 1991 Aubrey Jaffer (jaffer at Ivan) 2463 2464 * scm.c (error): created. 2465 2466Wed Apr 24 16:58:06 1991 Aubrey Jaffer (jaffer at Ivan) 2467 2468 * utils.scm: created. 2469 2470 * makefile (name8s): code from dmason works in makefile. 2471 2472 * eval.c (evalcar): fixed errobj on (else 3 4) error. 2473 Inlined function application in (cond ((foo => fun))). 2474 2475 * sys.c (lprin1): change looped putcs to fwrite. 2476 2477Wed Apr 24 01:54:09 1991 Aubrey Jaffer (jaffer at Ivan) 2478 2479 * sys.c (lreadr): fixed assert for "eof in string". 2480 2481 * subr.c (lgcd): changed to work with borland C. 2482 2483 * eval.c (eval): added checks to LAMBDA and LET. 2484 2485 * eval.c (apply): now checks for null arg1 in lsubr. 2486 2487Fri Apr 12 00:09:03 1991 Aubrey Jaffer (jaffer at kleph) 2488 2489 * config.h scm.h (SCMPTR): created to correct address arithmetic 2490 on stack bounds under Borland C++. Borland C++ now runs scm2c. 2491 2492Wed Apr 10 21:38:09 1991 Aubrey Jaffer (jaffer at Ivan) 2493 2494 * sys.c (open_io_file, cw_io_file, file_position, file_set_pos, 2495 read_to_str) created (IO_EXTENSIONS) 2496 2497 * config.h (IO_EXTENSIONS): defined 2498 2499 * sys.c scm.c: lprin1f changed to iprin1 2500 2501Wed Apr 10 12:58:59 1991 Aubrey Jaffer (jaffer at Ivan) 2502 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. 2506 2507Wed Apr 4 00:00:00 1991 Aubrey Jaffer (jaffer at kleph.ai.mit.edu) 2508 2509 * released scm2b 2510 2511Wed Apr 3 22:51:39 1991 Aubrey Jaffer (jaffer at Ivan) 2512 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. 2516 2517Tue Apr 2 23:11:15 1991 Aubrey Jaffer (jaffer at Ivan) 2518 2519 * code.doc: cleaned up. 2520 2521Mon Apr 1 14:27:22 1991 Aubrey Jaffer (jaffer at Ivan) 2522 2523 * eval.c (ceval): fixed nasty tail recursion bug at carloop:. 2524 2525 * scm.c (everr): still fixing error reporting. 2526 2527 * eval.c subr.c: added flag PURE_FUNCTIONAL which removes side 2528 effect special forms and functions. 2529 2530 * subr.c (substring): now allows first index to be equal to length 2531 of string 2532 2533 * sys.c (lprin1f): dispatches on TYP16 of smobs. 2534 2535 * scm.h: fixed typo in unused function defs. 2536 2537Mon Mar 28 00:00:00 1991 Aubrey Jaffer (jaffer at zohar.ai.mit.edu) 2538 2539 * scm2a released: too many changes to record. See code.doc. 2540 2541Mon Feb 18 21:48:24 1991 Aubrey Jaffer (jaffer at foxkid) 2542 2543 * scm.h: types reformatted (TYP6 -> TYP7). 2544 2545 * eval.c (ceval): Now dispatch directly on ISYMs in ceval. 2546 2547Fri Feb 15 23:39:48 1991 Aubrey Jaffer (jaffer at foxkid) 2548 2549 * sys.c: #include <malloc.h> not done for VMS 2550 2551Wed Feb 13 17:49:33 1991 Aubrey Jaffer (jaffer at foxkid) 2552 2553 * scm.c scl.c: added unsigned declarations to some char * 2554 definitions in order to fix characters having negative codes. 2555 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. 2559 2560 * subr.c (quotient): support for `/' reintroduced; required by 2561 r3.99rs but not IEEE. 2562 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. 2567 2568 * subr.c (s_char_alphap): is subr_1 not lsubr. 2569 2570 * test.scm: added tests for char-alphabetic, char-numeric?, 2571 char-whitespace?, char-upper-case?, and char-lower-case?. 2572 2573 * sys.c: most `return;'s eliminated to reduce warning messages. 2574 Substituted breaks and reordered switch and if clauses. 2575 2576Sun Feb 3 23:12:34 1991 Aubrey Jaffer (jaffer at foxkid) 2577 2578 * scm1-2: released. 2579 2580 * sys.c (read-char peek-char) added code for EOF. 2581 2582 * test.scm (leaf-eq?) added and file "cont.scm" removed. I/O 2583 tests added. 2584 2585 * sys.c (I/O functions) now check for input and output ports 2586 rather than just ports. 2587 2588 * sys.c (lprin1f): occurences of stdout changed to f. Newlines 2589 after printing port removed. 2590 2591Thu Jan 31 22:52:39 1991 Aubrey Jaffer (jaffer at foxkid) 2592 2593 * subr.c (quotient): support for `/' removed; not required. 2594 2595 * scm.c (wta): message for OUTOFRANGE fixed. 2596 2597Mon Jan 28 12:45:55 1991 Aubrey Jaffer (jaffer at foxkid) 2598 2599 * eval.c (apply): added checks for number of arguments. 2600 2601 * scm.h (CHECK_SIGINT): checks for blocked SIGINT. 2602 2603 * sys.c (lprin1): added blocking and testing for SIGINT so that 2604 output won't hang on VMS. 2605 2606 * scm.c (repl): added fflush call. 2607 2608 * scm.c (err_head, wta): added fflush calls to error routines so 2609 that error message come out in proper order. 2610 2611