aboutsummaryrefslogtreecommitdiffstats
path: root/ChangeLog
diff options
context:
space:
mode:
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog1360
1 files changed, 1353 insertions, 7 deletions
diff --git a/ChangeLog b/ChangeLog
index e9e3e19..56ca861 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,1349 @@
+Sun Dec 5 22:04:18 EST 1999 Aubrey Jaffer <jaffer@aubrey.jaffer>
+
+ * patchlvl.h (SCMVERSION): Bumped from 5d1 to 5d2.
+
+1999-12-02 Aubrey Jaffer <aubrey_jaffer@splashtech.com>
+
+ * Makefile (install): Make sure $(libscmdir)require.scm exists.
+ (libscmdir): Use instead of IMPLPATH.
+
+1999-12-02 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * scmfig.h: Don't #define SINGLES for MSC, per suggestion of David
+ Yeh <theyeh@uclink.berkeley.edu>
+
+1999-12-01 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * repl.c (scm_top_level): Corrected error test on exit in case 0
+ is not success.
+
+ (repl): Return MAKINUM(EXIT_SUCCESS) when exiting an interactive
+ session on EOF, this should not be an error.
+
+1999-11-14 Aubrey Jaffer <aubrey_jaffer@splashtech.com>
+
+ * build.scm (define-compile-commands): Added.
+ (defcommand): Added.
+ (platform): formatted; simplified names.
+
+ * Makefile (features.txi): Added.
+
+ * scm.texi (Build Options): take feature documentation from
+ "features.txi".
+
+ * build (make-features-txi): Creates documentation of build
+ features from 'features table.
+
+ * build.scm (build:define-feature): Added. Feature definitions
+ moved to top level.
+
+ * Init5d1.scm (comment): Added.
+ (read:sharp): Added `#;' comment syntax, *feature* SHARP:SEMI.
+
+1999-11-09 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * sys.c (scm_env_v2lst): Made tolerant to argc of zero,
+ since ecache_evalx may call it thus for DO loops binding
+ no values.
+
+ * eval.c (debug_env_save): Function for use in ENV_SAVE when the
+ CAREFUL_INTS paranoid debugging flag is #defined.
+
+ (ecache_eval_args): Now calls ecache_evalx(), which
+ evaluates a list of expressions and returns a list allocated on
+ the ecache in scm_env_tmp.
+
+ (m_do): (m_letrec1): (ceval_1): LET, LETREC, and DO now call
+ ecache_evalx instead of using inline loops, this seems to improve
+ speed by 5% - 10% for jacal and for simsynch simulation. C stack
+ usage will increase somewhat for large env frames.
+
+ (lookupcar): Added support for constant bindings, to be created by
+ LET, LETREC, LET*.
+
+1999-11-04 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * scl.c (dbl_prec): Use dbl_mant_dig in preference of potentially
+ undefined DBL_MANT_DIG.
+
+1999-11-04 David Yeh <theyeh@uclink.berkeley.edu>
+ * scl.c (makdbl): Mods to compile using MSVC
+
+1999-11-01 Aubrey Jaffer <aubrey_jaffer@splashtech.com>
+
+ * gmalloc.c: include "getpagesize.h" conditionalized on __svr4__.
+
+1999-10-31 Aubrey Jaffer <aubrey_jaffer@splashtech.com>
+
+ * build.scm (batch:chop-to-fit-system): Removed. Use new
+ batch:try-chopped-command instead.
+ (mysql): Added to features.
+ (build:build): Added comments describing stages and errors.
+
+1999-10-17 Aubrey Jaffer <aubrey_jaffer@splashtech.com>
+
+ * Makefile: Added platform.txi dependency where dependent on
+ scm.texi.
+
+1999-10-16 Aubrey Jaffer <aubrey_jaffer@splashtech.com>
+
+ * Makefile (scm.info require.scm): "cp -p" more portable than "cp -a"?
+
+1999-10-15 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * sys.c (mode_bits): Fix for null output string case.
+
+1999-10-14 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * unif.c (make_sh_array): Reduced consing by using scm_cvapply
+ instead of apply.
+
+1999-10-13 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ *sys.c (mode_bits): Now takes an optional buffer which, on exit,
+ will hold a mode string suitable to pass to fopen(), without any
+ SCM extension characters.
+
+1999-10-13 Aubrey Jaffer <aubrey_jaffer@splashtech.com>
+
+ * r4rstest.scm (float-print-test): stop after first error.
+
+1999-10-13 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * sys.c (try_open_file): Insure that only 'r', 'w', 'b', or '+'
+ may be included in mode strings passed to fopen.
+
+1999-10-11 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * repl.c (scm_freshline): Added FRESHLINE.
+ * sys.c (init_storage): Make def_outp tracked, so freshline will
+ work with it.
+
+1999-10-10 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * ramap.c (cind): Now takes C vector of indices, which may be
+ allocated on the C stack, rather than a uve.
+
+ (ramapc): (ramap): (ramap_cxr): (array_imap): (array_for_each): (rafe):
+ Use scm_cvapply instead of apply, allocate index and argument vectors
+ on the C stack for array ranks < 5.
+
+ * record.c (makrectyp): (recprin1): Use scm_cvapply instead of
+ apply.
+ (rec_prinset): Checks arity of argument procedure.
+
+ * sys.c (sfputc): (sfwrite): (sfgetc): Use scm_cvapply instead of
+ apply.
+ (mksfpt): Checks arities of soft port procedures when the port is made.
+
+ * eval.c (scm_cvapply): (scm_arity_check): Exported.
+ (makacro): (makmacro): (makmmacro): Call scm_cvapply rather than
+ consing up argument lists. Check arity of macro transformers
+ once, when syntax is defined.
+
+1999-10-09 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * subr.c (make_vector): Fixed broken length argument test.
+
+1999-10-08 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * sys.c (scm_env_v2lst): Now takes list tail in scm_env_tmp, so
+ tail can be allocated on ecache.
+
+1999-10-06 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * repl.c (scm_top_level): Print out supplied program arguments for
+ failure exits to simplify debugging scripts.
+
+ * eval.c (varcheck): Fixed for RECKLESS case.
+
+1999-10-04 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * eval.c (scm_arity_check): (macroexp1): Argument number checking
+ in macroexp1 abstracted as scm_arity_check, for use in map,
+ for-each ...
+ (scm_cvapply): Apply a function to a C vector of arguments, used by
+ map and for-each.
+ (scm_v2lst): Added for use in scm_cvapply.
+ (map): (for_each): Speed considerably improved: No longer allocate
+ Scheme vector temporaries for up to 5 list arguments. No longer
+ allocate unnecessary argument lists, allocate on ecache if
+ possible.
+
+ * repl.c (iprin1): Print out first elt of cclo environment --
+ makes record procedures more identifiable.
+
+ * sys.c (scm_env_v2lst): Now takes last cdr of list as argument.
+
+1999-09-21 Aubrey Jaffer <aubrey_jaffer@splashtech.com>
+
+ * sys.c (scm_port_entry): Make 16-bit safe.
+
+1999-09-19 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * Tscript.scm: File added to implement transcript-on,
+ transcript-off without burdening normal i/o.
+
+ * Init5d1.scm (transcript-on): (transcript-off): Now autoloads
+ from SCM/Tscript.scm
+
+ (_TRACKED): Added.
+
+ * socket.c (l_socket): (l_connect): (l_listen): Modified to use
+ port table.
+
+ (l_shutdown): (l_getpeername): (l_getsockname): Test for OPFPORTP, not
+ just OPPORTP.
+
+ * posix.c (l_pipe): Modified to use port table.
+ (prinpipe): Removed.
+
+ * ioext.c (reopen_file): (l_dup): (l_dup2): Modified to use port
+ table.
+
+ * crs.c (prinwindow): Removed.
+
+ (mkwindow): Uses scm_port_entry.
+
+ * repl.c (iprin1): Uses "name" field for printing ports.
+
+ (input_waiting): (wait_for_input):
+
+ (trans_on): (trans_off): Removed in favor of soft-port implementation.
+
+ (lputc): (lgetc): (lputs): (lfwrite): (lungetc): Removed check for
+ transcript, added line and column number support. Unread char now
+ kept in port table rather than CAR.
+
+ (lreadpr): (line_num): Removed line counting for load port, now done
+ using general line and column counting.
+
+ (scm_port_line): (scm_port_column): (scm_port_filename): Added.
+
+ (err_head): Now prints out multiple filenames for nested loads.
+ Tries to recover from recursive errors if current-error-port is a
+ soft-port.
+
+ * unif.c (uve_read): Removed ungetc call, if there is an unread
+ character, just call lgetc repeatedly for the first elt.
+
+ * sys.c (must_malloc): (must_realloc): Now check whether the heap
+ is initialized or not, so may be called earlier.
+
+ (scm_init_gra): (scm_grow_gra): Use above feature.
+
+ (scm_port_entry): Added, allocates entry in a port table used to store
+ unread characters, file names, line & column numbers, &c.
+
+ (mark_port_table): (sweep_port_table): Gc support for port table.
+
+ ptobfuns now has a "name" element, used for printing.
+ (prinfport): (prinstpt): (prinsfpt): Removed.
+
+Sun Sep 12 22:54:58 EDT 1999 Aubrey Jaffer <jaffer@aubrey.jaffer>
+
+ * patchlvl.h (SCMVERSION): Bumped from 5d0 to 5d1.
+
+1999-09-12 Aubrey Jaffer <aubrey_jaffer@splashtech.com>
+
+ * x.c (init_x): Load "xevent.scm".
+
+ * xtest.scm: Test key-press event.
+
+ * xevent.h: Generated by "xgen.scm"
+
+ * xevent.scm: Generated by "xgen.scm"
+
+ * requires.scm: Sample "require.scm".
+
+1999-09-11 Aubrey Jaffer <aubrey_jaffer@splashtech.com>
+
+ * Xlibscm.texi (Event): Documented x:event-ref.
+
+1999-08-26 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * sys.c (scm_egc): More robust test for sufficient cells in
+ freelist.
+
+1999-08-24 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * eval.c (wrapenv): Will no longer wrap an already wrapped
+ environment.
+
+ * repl.c (def_err_response): Now prints "expand-time environment"
+ message only when relevant.
+
+1999-08-21 Aubrey Jaffer <aubrey_jaffer@splashtech.com>
+
+ * xgen.scm (event-map): Added.
+
+ * x.c: Absorbed event_names into "xevent.h".
+
+1999-08-20 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * repl.c (def_err_response): Error message for expand-time only
+ environment.
+
+ * eval.c (lookupcar): (id_denote): Now handle environment objects
+ in scm_env, lookupcar will complain if this happens in a run-time
+ (rather than expand-time) context.
+
+ (eval_syntax): Added, to be used in Macroexpand.scm for LET-SYNTAX,
+ LETREC-SYNTAX.
+
+ (ceval_1): Fixed bug in eval.
+
+ * scm.h (ENVP): exported macro from eval.c.
+
+1999-08-18 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * eval.c (apply): Removed some unreached statements, merged
+ duplicate code in tc7_specfun case.
+
+1999-08-17 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * eval.c: (ceval_1): Made EVAL tail recursive.
+ Cleaned up some stack tracing cases, renamed POP_TRACE
+ to TOP_TRACE, since POP_TRACE sounds as though it should be the
+ inverse of PUSH_TRACE.
+
+ (ceval_1): Now modifies stack trace only after an estk
+ frame may be pushed, that is, when some invocation of eval may
+ modify the environment. The bottom of the stack trace (the form
+ being evaluated during a call to a subr) is kept in a global
+ `scm_trace'. Nested expressions involving primitives now give
+ more accurate stack traces, without a speed penalty.
+
+ (map): (for_each): Always push an estk frame for the sake of stack
+ tracing.
+
+ * repl.c (scm_stack_trace): Now may print out the value of the
+ global `scm_trace' as the top of the stack trace.
+
+1999-08-13 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * repl.c: Include <sys/types.h> for Cygwin, needed for select
+ support macros.
+ * scmfig.h: Define HAVE_SELECT for the Cygwin environment.
+
+1999-07-23 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * repl.c (scm_stack_trace): Put semi colons after frame numbers in
+ stack trace, rather than colons so emacs will not try to balance
+ parens.
+
+1999-07-20 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * build: Require build.scm in program-vicinity, since build.scm
+ may not be installed in implementation-vicinity.
+
+1999-07-19 <radey@cartman.colorage.net>
+
+ * repl.c (def_err_response): Changed setjump to setjmp when
+ setting up safeport.
+
+1999-07-11 Aubrey Jaffer <aubrey_jaffer@splashtech.com>
+
+ * Makefile (incdir): Added to abstract include directory location.
+
+ * xgen.scm: Rewritten. generates xevent.h and xevent.scm from
+ <Xlib.h>.
+
+ * inc2scm (scm<-usr/includes): System include path can be passed
+ as argument.
+
+1999-07-07 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * unif.c (arrayp): Fixed problem with immediate arguments.
+
+ (scm_prot2type): Added, abstracts prototype ->
+ internal-array-type mapping. Accepts positive bignums as uvect
+ prototypes if they are small enough to be elements of a uvect,
+ similarly for negative bignums and ivects.
+
+ (make_uve): (arrayp): Now use scm_prot2type.
+
+ SINGLES no longer need to be #DEFINEd in order to allow fvects.
+
+ * ramap.c: Modifications for fvects if SINGLES not #DEFINEd.
+
+1999-07-06 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * r4rstest.scm: Added named LET test for scope of init forms.
+ * eval.c (m_let): Changed scope of init forms in named LET, to
+ conform to R5RS, in response to posting of Allegro Petrofsky
+ <Allegro@Petrofsky.Berkeley.CA.US> to comp.lang.scheme
+
+1999-07-04 Aubrey Jaffer <aubrey_jaffer@splashtech.com>
+
+ * crs.c (lwinsch): Renamed from lwinsert. Why were idlok and
+ nodelay commented out?
+
+1999-07-02 "Dai INUKAI(GAF05" <GAF05426@nifty.ne.jp>
+
+ * rgx.c: __FreeBSD__ include should be "gnuregex.h".
+
+1999-05-31 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * Xlibscm.texi: Pulled out of "scm.texi".
+
+1999-05-29 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * scl.c (llog2 lpow10): renamed from log2 and lpow10, which
+ conflicted with djgpp include file /d/djgpp/include/math.h.
+
+1999-05-15 Dai INUKAI <GAF05426@nifty.ne.jp>
+
+ * Transcen.scm (expt): R5RS: 0^z is 1 if z = 0 and 0 otherwise.
+ * r4rstest.scm (test-inexact): Added tests for EXPT of zero.
+
+1999-05-12 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * eval.c (lookupcar): Combined some error checking cases.
+
+ (scm_macroexpand1):
+ (scm_extended_env):
+ (scm_env_ref): Low level support for hygienic macro expansion.
+
+ * Macroexpand.scm (macro:expand): Added for hygienic macro expansion.
+
+ * Macro.scm (renaming-transformer): Now passes a memoizing RENAME
+ procedure, so that renaming the same identifier results in renamed
+ identifiers that are EQV? per "Hygienic Macros Through Explicit
+ Renaming".
+
+ * Init5d0.scm (defconst): Now allows redefinitions without effect
+ in the sense of EQUAL? rather than EQV? to allow reloading code
+ defining constant list structure.
+
+1999-05-09 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * r4rstest.scm (test-eq?-eqv?-agreement): Added tests for eqv?
+ vs. eq? agreement discussed in section "Equivalence predicates".
+
+1999-05-09 Arne Glenstrup <panic@diku.dk>
+
+ * Makefile (udscm5): Added '-s $(IMPLPATH)' for executable builds.
+
+1999-04-26 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * scl.c (inex_divbigbig): Was broken (did not return valid SCM)
+ for some cases.
+
+1999-04-22 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * r4rstest.scm (test-inexact-printing): Added to check that
+ (EQV? X (STRING->NUMBER (NUMBER->STRING X))) holds for inexact X.
+
+ * scl.c (iflo2str): Revamped so that (EQV? X (STRING->NUMBER
+ (NUMBER->STRING X))) holds for floating point X. Somewhat as in:
+ Burger & Dybvig
+ "Printing Floating-Point Numbers Quickly and Accurately"
+ <http://www.cs.indiana.edu/scheme-repository/doc.publications.html>
+ But floating point rather than bignum arithmetic is used -- due to
+ this state of sin one slop factor was introduced. It would be
+ good to check this on non-IEEE-754 architectures.
+
+ (istr2flo): Now reads floating point numbers with exponents somewhat
+ below -MAXEXP, since this such numbers can be represented with
+ gradually underflowing denormals.
+
+1999-04-15 Aubrey Jaffer <aubrey_jaffer@splashtech.com>
+
+ * Makefile (require.scm): Added constructor.
+
+1999-04-01 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * sys.c (scm_maksubr): Added, returns a subr not (yet) bound to an
+ interned symbol, abstracts the addition of the subr_table entry.
+ (make_subr): Now uses scm_maksubr.
+
+ * gsubr.c (make_gsubr): Now uses scm_maksubr (was buggily using
+ old subr name encoding.)
+
+ * eval.c (make_synt): Now uses scm_maksubr.
+
+ * scm.h: Added prototypes for make_gsubr, scm_maksubr.
+
+1999-03-26 Arne John Glenstrup <panic@diku.dk>
+
+ * scm.h (ptobfuns): added const to puts() and fwrite() prototypes.
+
+ * gmalloc.c: fixed compilation on hpux.
+
+1999-03-26 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * Init5d0.scm (identity): Now a subr: CR.
+ * eval.c
+ * gsubr.c
+ * repl.c
+ * scm.h
+ * subr.c
+ * sys.c (SNAME): Pointers to subr names now kept in a mallocated
+ data structure, the top 16 bits of the CAR of a subr is an index
+ into this table. Eventually this should help support eg generic
+ arithmetic.
+
+1999-03-25 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * sys.c (scm_grow_gra): Fixed error in mallocated accounting, made
+ increment grow with allocated size.
+
+1999-03-22 Aubrey Jaffer <aubrey_jaffer@splashtech.com>
+
+ * Init5d0.scm (exec-self): Undo *script* meta-argument processing.
+
+1999-03-18 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * Init5d0.scm (read:sharp): Simplified somewhat; again accepts
+ '#2((a b c) (1 2 3)) as array read syntax, with warning.
+
+1999-03-17 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * unif.c (raprin1): New write syntax for uniform vectors and arrays.
+ (array2list): (list2ura): Fixed for zero-rank arrays.
+
+ * Init5d0.scm (read:sharp): New read syntax for uniform vectors
+ and arrays.
+
+1999-03-16 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * x.c (scm2int_pair): Generalized to accept uniform vectors and
+ arrays.
+
+ * eval.c
+ * ramap.c
+ * repl.c
+ * rope.c
+ * scl.c
+ * scm.h
+ * sys.c
+ * unif.c
+ Added uniform vector type for signed short integers, tc7_svect.
+ The prototype is the symbol 'short, the print representation is
+ not currently readable. (Both items subject to change.)
+
+1999-03-11 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * x.c (x:close): Merged from x:close-display and x:destroy-window.
+ Flushes after closing window.
+
+ * x.c: Use OPN and other bits in type-word. Fixed GC of closed
+ windows and displays.
+
+1999-03-10 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * x.c: Added copyright notice.
+
+1999-03-07 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * mkimpcat.scm (edit-line): editline -> readline.
+
+ * Makefile (mydlls): build edit-line separately to link in
+ libraries correctly.
+
+1999-02-17 Aubrey Jaffer <aubrey_jaffer@splashtech.com>
+
+ * build.scm, mkimpcat.scm, x.c, x.h, x11.scm, xgen.scm, xscm.doc,
+ xtest.scm: Xlib interface from xscm-2.01
+
+1999-02-12 Hakan L. Younes <d93-hyo@nada.kth.se>
+
+ * build.scm, findexec.c, scm.c, scm.texi, scmfig.h, time.c:
+ amiga-gcc port.
+
+1999-02-11 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * repl.c (scm_warn): renamed from warn().
+
+1999-02-04 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * setjump.h
+ * repl.c (scm_stack_trace):
+ * sys.c (safewrite):
+ Made all safeport operations consistently use the standard C
+ setjmp, longjmp, and jmp_buf.
+
+1999-01-27 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * build.scm (build): -Dfreebsd no longer necessary for freebsd
+ builds.
+
+ * findexec.c: freebsd -> __FreeBSD__.
+ * ioext.c: freebsd -> __FreeBSD__.
+ * time.c: freebsd -> __FreeBSD__.
+
+1999-01-27 Bakul Shah <bakul@torrentnet.com>
+
+ * sys.c (add_final): Fixed call to scm_grow_gra.
+
+ * subr.c (promisep): Added PROMISE?
+
+1999-01-23 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * build.scm (obj->): Added (was called but not defined).
+
+1999-01-17 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * build.scm (read-version): 5d0 READ as a number; Assemble
+ characters till whitespace.
+
+Sun Jan 17 14:52:11 EST 1999 Aubrey Jaffer <jaffer@aubrey.jaffer>
+
+ * patchlvl.h (SCMVERSION): Bumped from 5c4 to 5d0.
+
+1999-01-16 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * ramap.c (init_ramap): definition for ARRAY-INDEXES added.
+
+ * scmmain.c (generic_name): Added (local char** init wasn't
+ portable).
+
+1999-01-12 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * Makefile (version.txi): support added.
+
+ * scm.texi (SCM_VERSION): abstracted to version.txi.
+
+1999-01-12 Aubrey Jaffer <aubrey_jaffer@splashtech.com>
+
+ * build (make-readme): moved (require 'posix) here.
+
+1999-01-11 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * build.scm (read-version): simplified.
+
+ * build (make-readme): added. Makes README from scm5c4.info.
+
+1999-01-11 Aubrey Jaffer <aubrey_jaffer@splashtech.com>
+
+ * Makefile (README): added target.
+
+ * build (print-manifest): added.
+
+ * scm.texi: Added spacing workaround for Texinfo @deftypefun bugs.
+ (Problems *): @table --> @multitable.
+ (Standards Compliance): Updated for R5RS.
+ (SCM Options): fixed - and --; @minus{} breaks TeX!
+
+1999-01-10 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * scm.texi (Scripting): renamed from Shell Scripts. Reorganized;
+ rewrote examples.
+ (SCM Options): fixed -- as well as texinfo can.
+
+ * Init5c4.scm (boot-tail): load *script* if not done by options.
+
+ * script.c (script_process_argv): Allow space between #! and
+ pathname.
+
+ * scm.c (scm_init_from_argv): gets additional argument
+ `script_arg', which becomes the value of *script*.
+
+ * ioext.c (director-for-each): fail gracefully if can't open
+ directory.
+
+1999-01-08 Aubrey Jaffer <aubrey_jaffer@splashtech.com>
+
+ * scm.texi (Smob Cells): Explained NUMDIGS_MAX limit.
+
+ * sys.c (init_storage): Added check for NUMDIGS_MAX.
+
+ * scmfig.h (NUMDIGS_MAX): moved from "scm.h". Reduced to 1000
+ (4816 decimal digits).
+
+1999-01-04 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * scm.texi (Embedding SCM): Added libtest.c example.
+
+ * Makefile (libtest): Added target.
+
+ * scm.c (dirsep): added variable.
+
+ * repl.c (heap_report): Only call scm_brk_report() if scm_init_brk
+ has been set.
+
+1999-01-04 Aubrey Jaffer <aubrey_jaffer@splashtech.com>
+
+ * scm.texi (Unix Shell Scripts): merged in "SCSH scripts".
+ Removed description of single non-\ argument on first script line.
+
+1999-01-03 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * scm.texi (Embedding SCM): Rewrote.
+
+ * repl.c (scm_top_level): Pass initpath string to boot-tail
+ (rather than #t) for dumped executables.
+
+ * scmfig.h (RTL): removed. main() is now in scmmain.c.
+
+ * build.scm (C-libraries): Added `lib', which excludes
+ "scmmain.c"; Removed RTL flag.
+
+ * dynl.c (init_dynl): Don't try to compute execpath.
+
+ * script.c (find_impl_file): Renamed from scm_find_impl_file.
+ Fixed reduntant "lib" check. Added tests for executable-name peer
+ and generic peer directories.
+
+ * Init5c4.scm (set-vicinities!): Simplified. Now takes init-file
+ argument.
+
+ * scmmain.c: created, stealing main() and scm_find_implpath() from
+ "scm.c".
+
+ * scm.c (scm_find_impl RTL main): removed.
+
+1999-01-02 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * repl.c, scm.c: moved initpath==0 argument handling from main to
+ scm_top_level().
+
+ * Makefile: Redundant DFLAG = -DIMPLINIT=\"$(IMPLINIT)\" removed.
+ IMPLINIT still #defined by scmflags.h.
+
+1998-12-18 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * Link.scm (compile-file): Converted from replace-suffix to
+ filename:substitute??.
+
+ * build.scm (c->): Added.
+ (c->o): Added.
+ (c->obj): Added.
+ (obj->exe): Converted from replace-suffix to filename:substitute??.
+
+1998-12-15 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * eval.c (ecache_eval_args): Added, allocates an environment frame
+ in the ecache and does argument number checking for closures with
+ >= 3 arguments (and no rest argument).
+ (asubr_apply): Added to apply multiargument rpsubrs and asubrs without
+ consing.
+
+ * sys.c (scm_env_v2lst): Added for ecache_eval_args, builds a list
+ of ecache cells from an argument vector.
+
+1998-12-14 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * eval.c (m_lambda): (closure): Now checks that argc <= 3 during
+ memoization instead of each time a closure is made.
+ (macroexp1): Gives more sensible error messages when a
+ non-identifier non-list is in the function position.
+
+1998-12-10 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * (scm_top_level): (repl): Made repl an acceptable second argument to
+ scm_top_level.
+
+1998-12-09 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * sys.c (VERIFY_INTS): Pass 0L rather than 0 for null pointer args.
+
+ * scm.c: Pass 0L rather than 0 for null pointer args.
+
+ * rgx.c (lregerror): Pass 0L rather than 0 for null pointer args.
+
+1998-12-09 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * repl.c (scm_top_level): Now takes a second argument, toplvl_fun,
+ which is a function of no arguments returning SCM. If this
+ variable is non-null, it will be called instead of repl(), if
+ toplvl_fun returns BOOL_T, it may be called again, otherwise
+ scm_top_level will return.
+
+ Now checks that BOOT-TAIL is non-immediate before applying it, so
+ that it becomes optional.
+
+ * scm.c (run_scm): Deleted, subsumed by main().
+
+ * patchlvl.h (INIT_FILE_NAME): #defined even for RTL case. The
+ init file is probably useful even if the default top level is not
+ used.
+
+ * eval.c (varcheck): Now counts required arguments so m_lambda
+ doesn't have to.
+
+1998-12-08 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * Macro.scm (Macro:compile-syntax-rules) Check that car of each
+ rule is a pair.
+
+1998-12-08 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * scm.c (main): Changed argc==0 argv[0] from "scm" to
+ GENERIC_NAME.
+
+1998-12-06 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * scm.texi (Embedding SCM): Changed from "Calling Scheme From C".
+
+ * scm.c (scm_execpath scm_find_executable): moved from repl.c.
+ (init_banner): Changed to use pre-processor concatenation.
+ (main): modularized.
+ (run_scm): freeall argument added to control calling of
+ free_storage().
+
+ * repl.c (scm_top_level): initpath with leading '(', ';', or
+ whitespace taken as string to load (rather than filename).
+ (init_sbrk): extracted from main().
+
+ * dynl.c (init_dynl): ifdef RTL removed.
+
+1998-12-06 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * subr.c
+ * scl.c (scm_intexpt): Special cases for arithmetic that can be
+ done with native C types. Moved from subr.c to scl.c because of
+ FLOAT dependencies.
+
+ * eval.c (lookupcar): (ceval_1): Added MEMOIZE_LOCALS cpp macro to
+ control memoization of local variables to ilocs.
+
+1998-12-05 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * repl.c (tryload): Removed TAIL_RECURSIVE_LOAD version.
+ (scm_top_level): If string argument starts with whitespace, `)', or
+ `;', then call scm_ldstr() with argument rather than scm_ldfile().
+
+ * build.scm (compile-dll-c-files linux): delete .o after making .so.
+
+ * scm.c (init_scm): Rest of inits moved into.
+ (final_scm): Handles finals.
+ (scm_init_from_argv): Handles universal argv processing;
+ platform-dependent argv processing remains in main().
+
+1998-12-04 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * repl.c (def_err_response): Fixed to print stack trace even if
+ err_exp is not defined.
+
+ * repl.c
+ * sys.c
+ * scm.h errjmp_bad is now a pointer to a string, rather than an
+ int, so that the final error message can say in which critical
+ code section the error occured.
+
+1998-12-03 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * repl.c (scm_top_level): renamed from repl_driver.
+
+1998-12-03 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * scl.c (makdbl): Combined some DEFER_INTS and ALLOW_INTS,
+ possible because NEWCELL is now callable with ints deferred.
+ (product): (divide): Now scale bignums if necessary before
+ converting them to doubles for calculating inexact results.
+ (big2scaldbl): (bigdblop): (inex_divbigbig): Auxiliary functions
+ added.
+ (idbl2str): Decrease minimum exponent to allow printing of
+ gradually underflowing IEEE doubles.
+
+ * scm.c (setitimer): Made each option individually controlled by #ifdef,
+ now returns #f instead of error if given an unsupported option.
+
+ * Init5c4.scm This is used to initialize the appropriate alarm
+ procedures.
+
+1998-12-02 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * scm.h (NUMDIGS): Added cast so that NALLOC error reports would
+ print correctly.
+
+1998-12-02 Aubrey Jaffer <aubrey_jaffer@splashtech.com>
+
+ * setjump.h: windframe removed -- dowinds could only be processed
+ while (possibly oversize) stack was intact.
+
+ * scm.h (ARGn .. PROF_SIGNAL): Special err_pos values renumbered
+ from 1; this allows 0 to indicate message has been printed.
+ (dynwinds): restored to sys_protects.
+
+ * repl.c (repl_driver): dowinds() call moved from abrt(), quit(),
+ and restart(); dowinds() now done after longjump.
+ (repl_driver): cur_inp being closed now indicates that SCM should
+ exit -- after printing error messages.
+ (def_err_response): err_pos = 0 after printing message. If
+ err_pos==0, don't print message.
+
+ * Init5c4.scm (fluid-let): Shrunk using multi_set returns.
+
+ * eval.c (scm_multi_set): Now returns new list of old values.
+
+ * scm.c (l_pause): DJGPP2.0 lacks ITIMER_VIRTUAL; can't quit SCM!
+ #undef SIGPROF if ITIMER_VIRTUAL not defined.
+
+ * sys.c (reset_safeport): fixed 16-bit argument to
+ must_malloc_cell.
+ (dowinds): fixed limit case behavior.
+
+1998-12-01 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * Init5c4.scm (fluid-let): defmacro added.
+
+ * eval.c (scm_multi_set): Added. (set! (a b c) (list 10 20 30))
+ sets 3 variables.
+
+ * sys.c (dowinds): Eliminated second argument.
+ (dynwinds): No longer a sysprotect.
+
+ * setjump.h (windframe): Dynamic wind information now kept in
+ linked struct windframe on C-stack.
+
+1998-12-01 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * sys.c safeport now includes jmp_buf, to which it will longjump
+ after writing its character limit. This makes it safe to print
+ out possibly circular structures in error handling routines.
+ (reset_safeport): Now returns non-zero only if its argument
+ really was a safeport.
+
+ * setjump.h (SAFEP_JMPBUF): Macro accessor for the jmp_buf,
+ setjump *must* be called with this argument before using a
+ safeport.
+
+ * repl.c (scm_stack_trace): (def_err_response): Use new
+ safeport features.
+
+ * Macro.scm (substitute-in-template): Added check that all pattern
+ variables combined in an ellipsis template have the same length.
+
+1998-11-29 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * scm.texi (Socket): examples updated to use wait-for-input; no
+ longer spin-wait.
+
+ * repl.c (wait_for_input): `select'-like procedure added.
+ (char_readyp): now supported by DJGPP.
+
+ * ioext.c (l_putenv lexec*): DJGPP now supports.
+
+ * scm.c (l_raise SIGALRM): DJGPP now supports.
+
+ * scmfig.h: include <float.h> now seems safe for DJGPP.
+
+1998-11-28 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * scm.texi (Data Type Representations): PTOBs had wrong code and
+ lsubr was missing!
+
+1998-11-26 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * repl.c (def_err_response): Now truncates ALL long expressions
+ being printed.
+
+ * sys.c (must_malloc must_malloc_cell): 0 -> 0L to fix 16-bit
+ scmlit.
+
+1998-11-26 Radey Shouman <rshouman@metro2000.com>
+
+ * eval.c (ceval): (env2tree): (ident_eqp): Removed redundant
+ DEFER_INTS_EGC before ENV_PUSH.
+ (ceval_1): Removed label retunspec, replaced by jumps to
+ retx. Seems to run a tad faster, be a little easier to look at.
+ (copy_list): Now takes second argument giving minimum length of
+ list, allowing the removal of several calls to ilength.
+ (m_case): (m_cond): (ceval_1): ilength checks replaced.
+
+1998-11-25 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * repl.c (scm_stack_trace): Changed numbering of stack frames.
+ (def_err_response): Now prints erring expression before
+ stack trace.
+ (init_tables): Removed unnecessary assignment to
+ scm_verbose, which was already 1 under any circumstances.
+ (def_err_response): Now truncates long expressions being
+ printed.
+ (err_head): More robust test for output to stderr, to
+ decide whether to call perror or not.
+
+ * sys.c (init_types): Initialize sys_safep to tmp_errp.
+ (reset_safeport): Now does exactly nothing if handed a
+ non-safe-port.
+ (init_types): (init_storage): Moved initialization of tmp_errp and
+ sys_protects earlier, in case allocating ptobs or smobs causes
+ errors to be thrown.
+
+1998-11-24 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * scm.h (NUM_IFLAGS): Added to make COOKIE, UNCOOK definitions a
+ little easier to read.
+
+ * sys.c (reset_safeport): Added, resets count and optionally
+ parent port on a safe-port.
+ (sys_safep): New sys_protect, so stack-trace doesn't have to
+ allocate pairs for a safe-port.
+
+ * repl.c (scm_stack_trace): Now uses sys_safep and reset_safeport.
+ (def_err_response): (handle_it): (repl_driver): (everr):
+ Now checks and dies horribly but predictably if def_err_response
+ is recursively entered.
+
+1998-11-20 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * eval.c (env2tree): Check for undefineds in environment to
+ prevent endless loop, substitute #<unspecified>.
+ * repl.c (stack_trace): Now uses safe ports, prints "STACK TRACE"
+ message (I don't remember when that disappeared) and prints at
+ most 12 traced frames.
+
+ * sys.c (makesafeport): (safewrite): (safeputs): (safeputc):
+ (safeflush): Added support for `safe' ports for error messages,
+ which will accept and re-output only a fixed number of
+ characters. Subsequent characters are simply discarded.
+
+1998-11-19 Radey Shouman <rshouman@metro2000.com>
+
+ * record.c (rec_error): (rec_accessor1): (rec_modifier1):
+ (rec_constr1): Better error reporting, including the name of the
+ expected record type and the relevant field.
+
+ (rec_prinset): Added PRINTER field to RTDs so they may be printed
+ by a user- specified procedure. Scheme signature:
+ (RECORD-PRINTER-SET! RTD PRINT-PROCEDURE) where PRINT-PROCEDURE
+ takes as arguments the record and a port.
+
+ Added local accessor macros for record & rtd fields, removed
+ questionable union type declarations.
+
+1998-11-18 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * Macro.scm (macro:compile-syntax-rules): Minor cleanup, made
+ internal rule representation a record type rather than list.
+ (renaming-transformer): Added to support `explicit
+ renaming' low-level macros.
+
+ * eval.c (varcheck): (m_lambda): Some checks moved from m_lambda
+ to varcheck, argument added to varcheck to give different message
+ (about "formals") in case of lambda.
+ (ENVP): Added predicate macro local to eval.c.
+
+1998-11-16 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * eval.c (varcheck): Renamed from uniqcheck, now checks that
+ elements are identifiers so m_do, m_lambda, m_letrec1 don't have to.
+
+ * Init5c4.scm (alarm-interrupt) (profile-alarm-interrupt)
+ (virtual-alarm-interrupt) Now initially defined to turn off their
+ respective alarms, so that restarting does not cause an error when
+ an alarm is pending.
+
+ * sys.c (gc_mark): Now marks the header of smobs and ptobs, so the
+ mark function doesn't have to.
+ * unif.c:
+ * record.c:
+ * rgx.c:
+ * rope.c:
+ * scm.h: Ptob and smob mark functions modified to not mark headers.
+
+1998-11-15 Radey Shouman <rshouman@metro2000.com>
+
+ * eval.c (bodycheck): Removed, was only used in m_do.
+ (m_do): No longer calls bodycheck.
+ (lookupcar): No longer memoizes if no checking is to be done, eg
+ if doing speculative expansion.
+ (macroexp1): Now saves car in local variable to avoid calling
+ unmemocar.
+ (uniqcheck): Added, checks for non-unique identifiers in a binding
+ list.
+ (m_lambda): (m_letrec1): (m_do): Now check for duplicate bound
+ names.
+
+1998-11-13 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * unif.c (shap2ra): better error checking of dimension specs
+
+1998-11-12 Aubrey Jaffer <aubrey_jaffer@splashtech.com>
+
+ * scmfig.h (SCM_NEED_FDS SCM_INTERRUPTED): added argument to make
+ clear that this is not a constant.
+
+1998-11-11 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * scmfig.h (SCM_INTERRUPTED): Abstracted the interrupted test from
+ SYSCALL.
+ (SCM_OPENCALL): Similar to SYSCALL, but will gc to reclaim
+ file descriptors.
+
+ * sys.c (try_open_file): Now uses SCM_OPENCALL.
+ (gc_for_open_files): Added.
+
+ * ioext.c:
+ * posix.c:
+ * socket.c: File opening system calls now use SCM_OPENCALL.
+ If an open fails because there are no unused file handles, GC for
+ for file handles.
+
+1998-11-11 Aubrey Jaffer <aubrey_jaffer@splashtech.com>
+
+ * Init5c4.scm (vicinity:suffix?): Abstracted from
+ pathname->vicinity and "Link.scm".
+
+1998-11-08 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * sys.c, scm.c, record.c, ramap.c: Changed some intern -> sysintern.
+
+ * build.scm (compile-c-files linux): gcc -O2 produces unreliable
+ objects for Cyrix 6x86 processor; -O2 option removed.
+
+1998-11-05 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * ioext.c (init_ioext): (provide 'directory-for-each) changed to
+ add_feature("directory-for-each"); so ioext.o can be statically
+ linked.
+
+1998-11-04 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * scm.h (ESTK_PARENT): (ESTK_PARENT_WRITABLEP):
+ (ESTK_PARENT_INDEX): SCM_ prepended, definition moved to scm.h,
+ now used in repl.c.
+
+ * repl.c (handle_it): Fixed so stack traces extend before
+ interrupt handler calls.
+ (scm_stack_trace): Fixed for segmented environment stack.
+
+1998-11-03 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * repl.c (def_err_response): print out errobj if short string; if
+ long string, print out first 57 characters and "...". This makes
+ messages about not finding Init???.scm more informative.
+
+Tue Nov 3 17:41:40 EST 1998 Aubrey Jaffer <jaffer@scm.colorage.net>
+
+ * patchlvl.h (SCMVERSION): Bumped from 5c3 to 5c4.
+
+1998-11-03 Aubrey Jaffer <aubrey_jaffer@splashtech.com>
+
+ * ioext.c (directory-for-each): Added.
+
+ * Makefile (build): Added to TAGS.
+
+1998-11-02 Radey Shouman <radey_shouman@splashtech.com>
+
+ * sys.c (makcclo): Fixed argument to ASSERT.
+
+1998-11-02 Aubrey Jaffer <aubrey_jaffer@splashtech.com>
+
+ * record.c rgx.c scm.texi socket.c subr.c sys.c unif.c: Callers to
+ must_malloc and friends now check that length will fit in field.
+
+ * scmfig.h sys.c (SHORT_SIZET): Added to detect whether sizet
+ width or LENGTH field more restrictive.
+
+ * rope.c (must_free_argv): changed to use must_free.
+
+ * scm.h (LENGTH_MAX): Changed from fixed constant to cpp computed.
+ (NUMDIGS_MAX): Added.
+
+1998-11-01 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * sys.c (gc_sweep): Continuation storage was not being counted
+ when freed.
+
+ * time.c (your_time): fixed scaling so numbers returned use full
+ INUM range.
+
+1998-10-29 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * eval.c (m_and): (m_or): Special case for one argument.
+
+1998-10-28 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * setjump.h
+ * sys.c (scm_make_cont): (scm_dynthrow): (egc_copy_roots):
+ No longer copy scm_estk if CHEAP_CONTINUATIONS is #defined.
+
+ * eval.c (ceval_1): Fix up environment stack accounting for
+ CHEAP_CONTINUATIONS.
+
+1998-10-27 Aubrey Jaffer <aubrey_jaffer@splashtech.com>
+
+ * scm.c (scm_init_extensions): Added call to init_user_scm
+ for RTL case.
+ Moved #ifndef RTL to insure DIRSEP and GENERIC_NAME are #defined
+ for RTL case.
+
+ * build.scm Now builds archive called libscm.a rather than scm.a
+
+1998-10-20 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * Init5c3.scm (with-XXX-to-port): Oops. fixed earlier change.
+
+1998-10-19 Aubrey Jaffer <aubrey_jaffer@splashtech.com>
+
+ * scm.texi (Build Options): Build platform table in Makefile and
+ @include.
+
+1998-10-19 Radey Shouman <Radey_Shouman@splashtech.com>
+ * dynl.c (l_dyn_call): (l_dyn_main_call): Now use new P_SHL macro,
+ prevents compiler warning under hpux.
+
+ * sys.c (scm_free_gra): Now sets elts pointer to zero.
+ (free_storage): scm_free_gra now sets smobs and ptobs to zero.
+ (egc_sweep): Give dead cells immediate values, prevents obscure
+ gc bug seen in hpux.
+
+ * sys.c (scm_estk_grow): (scm_estk_shrink): Deleted incorrect
+ DEFER/ALLOW_INTS.
+
+ (init_storage): SHORT_INT fixconfig message now suggests changing
+ scmfig.h rather than setjump.h
+
+1998-10-16 Basile STARYNKEVITCH <Basile.Starynkevitch@wanadoo.fr>
+
+ * repl.c (lreadr): linum now incremented for LINE_INCREMENTORS
+ within strings.
+
+1998-10-16 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * scmfig.h (SHORT_INT): __alpha is.
+
+1998-10-14 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * eval.c (apply): Deleted redundant DEFER_INTS_EGC, added
+ ALLOW_INTS_EGC to closure apply case.
+
+1998-10-13 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * sys.c (egc_copy_stack): Provide strict bound on live locations.
+
+ * eval.c (apply): Added default case for tc7_specfun type,
+ replaces special handling for (apply apply ...) and (apply
+ call-with-current-continuation ...)
+
+1998-10-12 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * scm.h (ISYMSETVAL): renamed to MAKISYMVAL.
+
+ * sys.c (scm_estk_reset): Now takes an argument giving the size of
+ the environment stack to create, 0 gives a default size.
+
+ (scm_estk_grow): (scm_estk_shrink): Rewritten to use segmented
+ stack, so all of the stack need not be copied when the stack grows
+ or when a continuation is captured.
+
+ (scm_env_cons): (scm_env_cons2): (scm_env_cons_tmp):
+ (scm_extend_env): Rewritten using local temporary for indexing
+ into ecache.
+
+1998-10-06 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * scm.c: SIGPROF #undefined if LACK_SETITIMER is #defined, needed
+ to build profiling version of SCM.
+
+1998-10-06 Aubrey Jaffer <aubrey_jaffer@splashtech.com>
+
+ * build.scm (read-version): Will use implementation-vicinity if
+ scm-srcdir does not contain "patchlvl.h".
+
+1998-10-03 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * scm.c (run_scm): Fixed finals call loop
+
+1998-10-02 Aubrey Jaffer <aubrey_jaffer@splashtech.com>
+
+ * unif.c, sys.c, subr.c, socket.c, scm.h, scl.c, rgx.c, posix.c:
+ Fixed argument types in calls to must_malloc_cell().
+
+ * scm.h, repl.c, dynl.c, continue.h:
+ CodeWarrior-Pro-3 port from Bob Schumaker <cobblers@netcom.com>
+
+1998-10-01 Bob Schumaker <cobblers@netcom.com>
+
+ * dynl.c: must_free_argv() was called with extra argument!
+
+ * continue.h (SHORT_ALIGN): Port for `CodeWarrior Pro 3'.
+
+ * repl.c, scm.h: declarations added for `CodeWarrior Pro 3'.
+
+1998-09-29 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * Link.scm (link-named-scm): simplified; prepping for hobbit5.
+
+1998-09-29 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * scm.c Added SIGVTALRM callback.
+
+ * Init5c3.scm (profile-alarm-timer): Renamed from profile-timer,
+ (virtual-alarm-timer): added.
+
+ * sys.c (must_malloc_cell): Takes an argument specifying the CAR
+ of the cell to be returned.
+
+ * scm.h (MAKE_LENGTH): (MAKE_NUMDIGS): Preprocessor macros added.
+
+1998-09-29 Aubrey Jaffer <aubrey_jaffer@splashtech.com>
+
+ * build (build-from-argv): slib:warns if not successful.
+ (bi): Exits with error indication when build not successful.
+
+ * build.scm (build): Sense was wrong; heap-can-shrink renamed
+ no-heap-shrink
+ (batch:rebuild-catalog): always return #t.
+
+1998-09-22 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * sys.c (scm_init_gra): (scm_grow_gra): (scm_free_gra): GRowable
+ Array type.
+ (newsmob): (newptob): (add_final): Implemented using scm_gra type.
+
+1998-09-18 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * Init5c3.scm (profile-timer): (milli-alarm): Defined in terms of
+ SETITIMER.
+
+ * sys.c (sysintern): No longer changes the CDR of an existing
+ symhash value cell if second argument is UNDEFINED. For use with
+ scm_setitimer, which uses symbols as keys, but not as identifiers.
+
+ * scm.c (scm_proftimer): Removed.
+ (scm_setitimer): Added, interface to setitimer/getitimer allowing
+ use of ITIMER_REAL, ITIMER_VIRTUAL, ITIMER_PROF.
+
+1998-09-18 Aubrey Jaffer <jaffer@colorage.com>
+
+ * posix.c (scm_getgroups): added scm_protect_temp(&grps);
+
+1998-09-17 Aubrey Jaffer <jaffer@ai.mit.edu>
+
+ * Init5c3.scm (with-input-from-port): (with-output-to-port):
+ (with-error-to-port): Replicated procedure rather than using
+ SWAPPORTS twice. This in combo with repl.c change fixes Radey's
+ strange multi-process bug!
+
+ * repl.c (set_inp set_outp set_errp): Made variable swap atomic.
+ Also changed so port argument can be closed.
+
+1998-09-17 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * sys.c (init_storage): Fixed estk initialization to work when
+ restarted.
+
+1998-09-16 Radey Shouman <Radey_Shouman@splashtech.com>
+
+ * Init5c3.scm (read:sharp-char): Added, parses emacs style meta
+ and control char syntax.
+
+ * repl.c (lreadpr): Added callout to READ:SHARP-CHAR for otherwise
+ undefined #\ read sequences, memoized references to READ:SHARP.
+
+ * unif.c (resizuve): Fixed accounting of mallocated storage for
+ strings and bitvectors.
+
+ * sys.c (igc_for_alloc): (must_malloc): (must_realloc):
+ (must_malloc_cell):
+ (must_realloc_cell): Fixed accounting of mallocated storage.
+
+ (igc): Added malloc consistency check for patched gmalloc, conditional
+ on #define DEBUG_GMALLOC.
+
+ (gc_sweep): Fixed accounting of bignum storage for DIGSTOOBIG case.
+
+ (intern): Avoid possible race condition by deferring ints during
+ search.
+
+ * scm.c (process_signals): Process from low numbers to higher, ala
+ Unix signals. More fatal errors should come earlier in the list.
+
Fri Sep 11 17:25:14 EDT 1998 Aubrey Jaffer <jaffer@scm.colorage.net>
* patchlvl.h (SCMVERSION): Bumped from 5c2 to 5c3.
@@ -5,7 +1351,7 @@ Fri Sep 11 17:25:14 EDT 1998 Aubrey Jaffer <jaffer@scm.colorage.net>
1998-09-11 Radey Shouman <Radey_Shouman@splashtech.com>
* gmalloc.c: Imported gmalloc.c from emacs 20.2.1.
-
+
(check_block): (check_frag_blocks): Debugging functions added.
* sys.c (scm_protect_temp): Added, is currently, and probably will
@@ -15,7 +1361,7 @@ Fri Sep 11 17:25:14 EDT 1998 Aubrey Jaffer <jaffer@scm.colorage.net>
* scl.c (big2str): Added call to scm_protect_temp.
* eval.c (map): (for_each): Added calls to scm_protect_temp.
-
+
* rgx.c (lregcomp): Added call to scm_protect_temp.
1998-09-04 Radey Shouman <radey@colorage.com>
@@ -41,7 +1387,7 @@ Fri Sep 11 17:25:14 EDT 1998 Aubrey Jaffer <jaffer@scm.colorage.net>
* scmfig.h (VERIFY_INTS): Added macro to print warnings if
interrupts are improperly allowed and CAREFUL_INTS is #defined.
-
+
(VOLATILE): Expands to `volatile' keyword if __STDC__ is #defined.
* sys.c (sys_errp): Interrupt safe system output port added.
@@ -59,7 +1405,7 @@ Fri Sep 11 17:25:14 EDT 1998 Aubrey Jaffer <jaffer@scm.colorage.net>
(closure): Now takes the number of required closure arguments as a
second argument.
(m_lambda): Computes and memoizes the number of required arguments.
-
+
* repl.c (iprlist): Uses GCCDR so that fatal error messages during
gc may print better.
(handle_it): Call to scm_egc made conditional on NO_ENV_CACHE.
@@ -76,7 +1422,7 @@ Fri Sep 11 17:25:14 EDT 1998 Aubrey Jaffer <jaffer@scm.colorage.net>
* Init5c2.scm (array-shape): No longer signals an error when
passed a non-array -- now returns whatever ARRAY-DIMENSIONS
returned (currently #f).
-
+
1998-08-26 Aubrey Jaffer <jaffer@colorage.com>
* scm.c (scm_proftimer): Also conditional on SIGALRM.
@@ -435,7 +1781,7 @@ Wed Jul 22 16:36:48 EDT 1998 Aubrey Jaffer <jaffer@scm.colorage.net>
1998-06-22 Radey Shouman <radey@colorage.com>
* eval.c (ENV_PUSH): Fixed problem introduced during last change:
- estk was overstepping its bounds.
+ estk was overstepping its bounds.
1998-06-19 Radey Shouman <radey@colorage.com>
@@ -638,7 +1984,7 @@ Wed May 20 17:53:52 EDT 1998 Aubrey Jaffer <jaffer@aubrey.jaffer>
1998-05-14 Radey Shouman <radey@colorage.com>
* Init.scm (bit-extract): (logical:bit-field):
- (logical:bitwise-if): (logical:copy-bit):
+ (logical:bitwise-if): (logical:copy-bit):
(logical:copy-bit-field): definitions added for SLIB compatibility.
* subr.c (scm_bitfield): renamed BIT-EXTRACT to BIT-FIELD,