1 1999-08-20 James Blandy <jimb@mule.m17n.org>
3 Remove support for the #/ path list syntax entirely.
4 * boot-9.scm (read-path-list-notation,
5 read-path-list-notation-warning): Deleted.
6 Don't register read-path-list-notation-warning as a reader for
7 objects starting with '#/'.
9 1999-08-05 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
11 GOOPS needs the observer protocol specified for the new module
12 system. Here's a simple version for the old module system:
13 * boot-9.scm (module-observers, module-weak-observers,
14 module-observer-id, set-module-observers!,
15 set-module-observer-id!): New accessors.
16 (module-type): Added slots `observers', `weak-observers' and
18 (module-observe, module-observe-weak, module-unobserve,
19 module-modified): New procedures.
20 (module-make-local-var!, module-add!, module-remove!,
21 module-clear!, module-define!, module-use!): Call module-modified.
23 1999-07-29 Marius Vollmer <mvo@zagadka.ping.de>
25 * boot-9.scm (error-catching-loop): Correct non-RnRS usage of internal
28 1999-07-19 Jim Blandy <jimb@savonarola.red-bean.com>
30 * streams.scm: New module, contributed by Michael Livshin.
31 * Makefile.am (ice9_sources): List it.
32 * Makefile.in: Regenerated.
34 * boot-9.scm (read-delimited!): Put the terminator in the correct
37 1999-06-29 Mikael Djurfeldt <mdj@mdj-pc.nada.kth.se>
39 * readline.scm: Bugfix: Avoid getting the continued-lines prompt
40 at multiple calls to read.
41 (promtp2): Variable for continued-lines prompt.
42 (make-readline-port): Use prompt2.
43 (set-readline-prompt!): New optional arg which sets
44 continued-lines prompt.
46 * boot-9.scm (top-repl): Set/clear readline prompts before/after
49 1999-06-18 Jim Blandy <jimb@savonarola.red-bean.com>
51 * ls.scm (ls, lls): Handle no arguments as meaning to look in
52 `(current-module)'. (Patch from Thien-Thi Nguyen.)
54 1999-06-14 Jim Blandy <jimb@savonarola.red-bean.com>
56 * string-fun.scm (split-before-predicate, split-after-predicate,
57 split-discarding-predicate): Make these public. (Thanks to
60 1999-06-13 Gary Houston <ghouston@easynet.co.uk>
62 * more changes to expect.scm, to avoid the one-character lookhead
63 that was introduced to fix the $ problem:
65 * expect.scm (expect): call the match proc an extra time at end
66 of file and set the eof? argument appropriately. call
67 expect-eof-proc only if the last call didn't match.
68 * expect.scm (expect-strings): change port to eof? in match proc.
69 * expect.scm (expect-regexec): take an eof indicator as an argument
72 1999-06-09 Jim Blandy <jimb@savonarola.red-bean.com>
74 * Makefile.am (ice9_sources): Add popen.scm to list.
75 * Makefile.in: Regenerated.
77 Fixes for expect from Gary Houston <ghouston@easynet.co.uk>:
79 * expect.scm (expect-regexec): define 'eof-next?'. I don't
80 know why it was missing. also don't peek for end of lines
81 unless expect-strings-exec-flags contains regexp/noteol.
82 (expect-strings-exec-flags): initialise to regexp/noteol.
84 Gary Houston's open-buffer port patches:
86 1999-04-01 Gary Houston <ghouston@easynet.co.uk>
88 * popen.scm: applied fixes from Greg Harvey. use a guardian
89 and a gc-thunk so that cleanup is done if a pipe is garbage
90 collected or closed with close-port. use a weak hash-table instead of
93 1999-03-20 Gary Houston <ghouston@easynet.co.uk>
95 * expect.scm (expect): call the match proc with the port instead.
96 (expect-strings): use peek-char to get the next char. this has
97 the advantage of getting the handling of $ "correct", but the
98 disadvantage of needing to get (and maybe block for) an extra character
99 from the port when it may not be needed. hence:
100 (expect-strings-exec-flags): new variable/parameter, supplies
101 flags for regexp-exec. if this includes regexp/noteol, then
102 automatic regexp/noteol handling (requiring an extra peeked char)
103 is enabled. default is regexp/noteol.
104 (expect-strings-compile-flags): new variable/parameter, supplies
105 flags for make-regexp. default is regexp/newline.
107 1999-03-15 Gary Houston <ghouston@easynet.co.uk>
109 * expect.scm (expect): call the match proc with an extra char,
110 peeked from the stream.
111 (expect-strings): build a match proc which takes the extra char.
112 (expect-regexec): take an extra arg "eof-next?" and use it
113 to decide whether the regexp/noteol flag should be added.
115 1999-02-26 Gary Houston <ghouston@easynet.co.uk>
117 * boot-9.scm (top-repl): don't flush all ports at exit.
118 (error-catching-loop): likewise.
120 1998-12-23 Gary Houston <ghouston@easynet.co.uk>
122 * boot-9.scm (scm-style-repl): -read: don't call
123 consume-trailing-whitespace if val is eof object. Allows
124 exiting repl with single control-D.
126 1998-12-06 Gary Houston <ghouston@easynet.co.uk>
128 * boot-9.scm (error-catching-loop): don't force output within
129 error catching loop after quit received.
130 (top-repl): flush all ports when the repl terminates.
132 * boot-9.scm (error-catching-loop): flush all ports before
133 primitive exit if non-interactive.
134 force-output on current-error-port if interactive.
136 * boot-9.scm (reopen-file): deleted.
137 * popen.scm (open-output-pipe, open-input-pipe): moved from
139 * popen.scm: new file.
141 1999-06-04 Dirk Herrmann <D.Herrmann@tu-bs.de>
143 * boot-9.scm (iota): replaced by a tail recursive version.
144 (reverse-iota): removed.
146 1999-06-03 Mikael Djurfeldt <mdj@mdj-pc.nada.kth.se>
148 * optargs.scm (lambda*): Bugfix: Replaced ARGLIST -->
149 non-optional-args. (Thanks to David Lutterkort.)
151 1999-05-09 Jim Blandy <jimb@savonarola.red-bean.com>
153 * string-case.scm: Removed; functions moved to libguile/strop.c
154 (which could be dynamically linked in the future anyway).
155 * Makefile.am (ice9_sources): Don't list string-case.scm.
156 * Makefile.in: Regenerated.
157 * format.scm: Don't bother importing (ice-9 string-case).
159 1999-05-02 Jim Blandy <jimb@savonarola.red-bean.com>
161 * boot-9.scm (provided?): New function.
163 * Makefile.am: Add string-case.scm and format.scm to ice9_sources.
164 * Makefile.in: Regenerated.
166 * string-case.scm: New file, brought in from SLIB, and adapted to
167 Guile's module system.
169 * format.scm: New file, brought in from SLIB, with the following
171 (format:format): If the first argument is the format string, stick
172 a #f on the front of it, so it is now a valid CL format argument
173 list. This is easier than changing everyplace else (like the
174 error formatter) that expects it to be in CL form. The other
175 clause which explicitly tests for this case is now dead code.
176 (format:format-work): Allow `@' and `:' in either order, as per
178 (format:num->cardinal): Don't assume that an elseless if returns
179 '() when the condition is false.
181 1999-04-17 Jim Blandy <jimb@savonarola.red-bean.com>
183 * Makefile.in: Regenerated.
185 1999-04-08 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
187 * boot-9.scm: Provide 'values.
189 1999-03-21 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
191 * boot-9.scm (process-define-module, use-syntax): Bugfix:
192 :use-syntax should add syntax to using module, not current module.
193 (internal-use-syntax): Removed.
195 1999-03-21 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
197 * session.scm (apropos-internal): Modified to comply with new
198 argument order for hash-fold.
200 1999-03-19 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
202 * boot-9.scm (try-load-module): New procedure. Broken out from
204 (resolve-module): Bugfix: Make it possible for a module at a
205 deeper level (x y z) to depend on a module on a higher (x y).
207 This also has the desired side-effect that multiple attempts to
208 load a module (e.g. with `use-modules') work until source is
209 actually found for the module (e.g. because the correct catalog
210 has been added to the load path).
214 1999-03-18 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
216 * session.scm (system-module): New procedure. Used to switch a
217 module between system and user state.
219 1999-03-16 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
221 * session.scm (apropos-internal): Rewritten using hash-fold.
223 * emacs.scm, session.scm, slib.scm): Added :no-backtrace in module
226 1999-03-14 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
228 * boot-9.scm (make-record-type): Use `set-struct-vtable-name!' to
229 associate a name to the record type descriptor so that the object
230 system can create a wrapper class for it.
232 1999-03-12 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
234 Improvement of backtraces: Introduces a new stack narrowing
235 specifier, #t, for the inner cut. If the inner cut is specified
236 by #t, `make-stack' will throw away inner stack frames (most
237 recent calls on call chain) up to but excluding the first user
238 stack frame encountered.
240 This specifier is now used in `save-stack' so that the call
241 `(save-stack)' will get the new behaviour. [It is recommended that
242 any error reporting functions written by the user have this call
243 on the outermost expression level (i.e. as a member of the lambda
246 Modules are partitioned into "user" and "system" modules. [I know
247 that some names used here are silly, but I don't have more time to
248 spend on a better solution, especially considering that the module
249 system will be replaced. But if people have better ideas, then
252 System modules are created by adding :no-backtrace among the
253 define-module switches:
258 Modules which doesn't have the :no-backtrace specifier are user
261 A stack frame is classified as a user frame if it has source code
262 associated with it and if this source code can be proven to come
263 from a user module. If it can be proven to come from a system
264 module it is a system frame.
266 Frames which can't be classified, e.g. application frames, are cut
267 away if they occur between system frames, but are left on the
268 stack if they occur between the last system frame and the first
269 user frame encountered. (Note that the first user frame
270 encountered is the last user code being evaluated!)
272 In some cases the system part of the call chain is introduced by
273 frames which should but can't be proven to be system frames. The
274 following workaround has been implemented: The cutting proceeds
275 over application frames where the operator is marked by the
276 `system-procedure' property. (This has been used to cut away
277 generic function dispatch code in the object system.)
279 * boot-9.scm (set-system-module!): New procedure: Set system/user
281 Mark `the-root-module' and `the-scm-module' as system modules.
282 (process-define-module): Add new keyword :no-backtrace.
284 * boot-9.scm (environment-module): Bugfixed.
285 (set-module-eval-closure!): Add a pointer back from the eval
286 closure to the module.
288 * emacs.scm (emacs-load): Reset port filename after transfer.
290 1999-03-03 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
292 * slib.scm (make-random-state): Added for compatibility.
294 1999-02-16 Maciej Stachowiak <mstachow@alum.mit.edu>
296 * optargs.scm (lambda*): Handle empty argument lists properly.
298 1999-02-15 Jim Blandy <jimb@savonarola.red-bean.com>
300 Fix from Russ McManus:
301 * getopt-long.scm (parse-option-spec): Store 'optional as the
302 value-required? field for options that take optional values.
303 (process-short-option): Grab a value for the option when it takes
304 either an optional or required value.
306 1999-02-12 Jim Blandy <jimb@savonarola.red-bean.com>
308 * getopt-long.scm: Remove debugging calls to `pk'.
310 * getopt-long.scm: Return list of ordinary arguments as the value
311 of the '() key, not `rest'.
313 A new argument-processing package from Russ McManus.
314 * getopt-long.scm: New file.
315 * Makefile.am (ice9_sources): Added getopt-long.scm.
316 * Makefile.in: Regenerated.
318 1999-02-09 Maciej Stachowiak <mstachow@alum.mit.edu>
320 * optargs.scm: New file.
321 * Makefile.am (ice9_sources): Add optargs.scm here. Makefile.in
322 not regenerated because I don't have the right version of Automake.
324 1999-02-06 Jim Blandy <jimb@zwingli.cygnus.com>
326 * and-let*.scm: New file, from Michael Livshin.
327 * Makefile.am (ice9_sources): Add and-let* here.
328 * Makefile.in: Regenerated.
330 1999-01-11 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
332 * slib.scm (install-require-module): Fixed the kludge which loads
333 the slib catalog: Doesn't anylonger assume that the feature tested
336 1998-12-14 Jim Blandy <jimb@zwingli.cygnus.com>
338 * Makefile.in: Regenerated.
340 1998-12-14 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
342 * boot-9.scm (process-define-module): Reverted the change of
343 1998-11-23 which caused loading of object code if :use-module was
344 applied to the module itself.
346 1998-12-11 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
348 * Makefile.am: Removed setf.scm.
350 * setf.scm: Removed. 1. It was buggy. 2. It was unschemey.
351 (These shortcomings were my fault.)
353 1998-12-10 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
355 * boot-9.scm (environment-module): New procedure.
357 1998-12-07 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
359 * Makefile.am: Added setf.scm.
361 1998-12-05 Christian Lynbech <chl@tbit.dk>
363 * setf.scm: New file. Adds the new forms `setf!' and `setter'
364 which implements generalized references a la Common LISP.
366 1998-12-02 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
368 * boot-9.scm (process-define-module): Added new specifier
369 :autoload MODULENAME BINDINGS to the define-module form.
370 The autoload specifier tells the module system to load the module
371 MODULENAME at the first occasion that any variable with its name
372 among BINDINGS is referenced.
373 (make-autoload-interface): New procedure: Constructs a stand-in
374 for the public interface for the module to be autoloaded.
376 1998-12-01 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
378 * boot-9.scm (*suppress-old-style-hook-warning*): Set this to #t
379 if you don't want the old style hook warnings.
381 1998-12-01 Christian Lynbech <chl@tbit.dk>
383 * boot-9.scm (try-using-libtool-name): Fix check on dlname to make
384 sure that it isn't empty, as it is when we are only buidling
387 1998-11-27 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
389 * session.scm (arity): New procedure.
391 1998-11-26 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
393 * boot-9.scm: Use run-hook instead of run-hooks everywhere.
395 1998-11-26 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
397 * boot-9.scm (run-hooks, add-hook!, remove-hook!): Added temporary
398 code for backward compatibility until people have had time to
399 adapt to the new hooks.
401 1998-11-23 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
403 * boot-9.scm (beautify-user-module!): Beautify also if public
404 interface is set to the module itself. In this way we can use
405 beautify-user-module! to beautify a module prepared for object
407 (process-define-module): Special case: Try to load object code as
408 well if a module does :use-module on itself.
410 * boot-9.scm: Bugfix: Since boot-9.scm is now loaded from
411 invoke_main_func, we can no longer be sure that all modules have
412 been registered when boot-9.scm is loaded.
413 (register-modules): New function: Register and tag modules
414 registered by scm_register_module_xxx since last call to this
415 function. Modules are tagged with the dynamic object passed as
416 argument. (Already linked modules should be tagged with #f.)
417 (init-dynamic-module, link-dynamic-module): Call register-modules
418 first to register linked modules.
420 * boot-9.scm (init-dynamic-module): Remove module from
421 registered-modules as soon as possible in case we are recursively
422 invoked; Set public interface before doing the dynamic-call.
424 * boot-9.scm (map-in-order): Removed (replaced by scm_serial_map).
425 (abort-hook, before-error-hook, after-error-hook,
426 before-backtrace-hook, after-backtrace-hook, before-read-hook,
427 after-read-hook, exit-hook): Make hooks with `make-hook'.
429 * boot-9.scm: Make hooks first class citizens and make them easier
431 (make-hook, add-hook!, remove-hook!, run-hooks): Moved to
434 * boot-9.scm: Added warnings about bindings used in
435 libguile/modules.c: the-module, set-current-module,
436 make-modules-in, beautify-user-module!, module-eval-closure.
438 1998-11-21 Mikael Djurfeldt <mdj@kenneth>
440 * boot-9.scm (the-environment): New special form: Returns an
441 object representing the current local evaluation environment.
442 This object can be used in `local-eval' and `defined?'.
444 1998-11-13 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
446 * boot-9.scm (collect): New syntax. Similar to begin but returns
447 a list of the results of all forms in the sequence instead of the
448 result of the last form.
450 1998-11-10 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
452 * boot-9.scm (values, call-with-values): Moved here from
455 * syncase.scm (values, call-with-values): Moved to boot-9.scm.
457 * boot-9.scm (readline-options, readline-enable, readline.disable,
458 readline-set!: New options interface.
460 * readline.scm (readline-port): Use readline-options-interface.
462 1998-11-05 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
464 * boot-9.scm: Set the repl start module in `top-repl' instead of
465 at the end of boot-9.scm.
467 1998-11-01 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
469 * emacs.scm (format): Bugfix: Handle multiple arguments
470 correctly. (Thanks to Thien-Thi Nguyen.)
472 1998-11-01 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
474 * boot-9.scm (exit-hook): New hook: Is run at the very end of an
476 (top-repl): Run exit-hook on exit.
478 * readline.scm (readline-port): Maybe read history; Maybe write
479 history at exit (add to exit-hook).
481 Fri Oct 30 15:15:37 1998 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
483 * readline.scm (make-readline-port): Bugfixed last change...
485 1998-10-28 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
487 * readline.scm (make-readline-port): Don't set prompt to "... " if
490 1998-10-19 Jim Blandy <jimb@zwingli.cygnus.com>
492 * boot-9.scm, debug.scm, expect.scm, hcons.scm, lineio.scm,
493 r4rs.scm, slib.scm, threads.scm: Update copyright years.
495 * getopt-gnu-style.scm, slib.scm: Add copyright notice.
497 Talked to Stallman. Actually, the syntax-case copyright is no
499 * Makefile.am (ice9_sources): Revert last change.
500 * syncase.scm, psyntax.pp, psyntax.ss: Added again.
501 * Makefile.in: Regeneretade.
503 * boot-9.scm: Don't assume that this file is loaded just before
504 entering a read-eval-print loop. Turn code to load (ice-9 emacs)
506 (load-emacs-interface): New function.
507 (top-repl): Call it, if use-emacs-interface is defined and true.
508 At this point, we *do* know we're about to enter a REPL.
510 We can't include Kent Dybvig's syntax-case macro expander in the
511 core Guile distribution, because we don't have copyright
512 assignments for this code. We can certainly distribute them as a
513 separate package, but Guile should be FSF code.
514 * syncase.scm, psyntax.pp, psyntax.ss: Removed.
515 * Makefile.am (ice9_sources): Removed syncase.scm, psyntax.pp, and
517 * Makefile.in: Regenerated.
519 * Makefile.am (ice9_sources): Add getopt-gnu-style.scm.
520 * Makefile.in: Regenerated.
522 1998-10-18 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
524 * boot-9.scm: Added extended read syntax for byte vectors #y(...)
525 and short vectors #h(...).
527 1998-10-14 Jim Blandy <jimb@zwingli.cygnus.com>
529 * calling.scm (excursion-function-syntax): Use a sequence of
530 set!'s, not a single multi-variable set!; we removed support for
531 that syntax a long time ago. (Thanks to Shuji Narazaki.)
533 1998-10-12 Jim Blandy <jimb@zwingli.cygnus.com>
535 * r4rs.scm (OPEN_READ, OPEN_WRITE, OPEN_BOTH): Don't bother
536 testing software-type here. That's the least of our Windows
537 porting issues, and it's done wrong anyway.
539 1998-10-09 Jim Blandy <jimb@zwingli.cygnus.com>
541 * boot-9.scm (read-path-list-notation-warning): New function:
542 print a warning the first time we see `#/' notation.
544 * q.scm (sync-q!, q?, q-remove!, q-push!, enq!): Lots of bugs, and
545 (eq? #f '()) assumptions. Make functions that aren't documented
546 to return anything else return the queue itself. (Bug report from
547 Michael Livshin --- thanks!)
549 1998-08-21 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
551 * debug.scm (trace-entry, trace-exit): Removed re-enabling of
554 * boot-9.scm (make-options): Bugfix: Changed pair? --> list? in
555 order to allow the empty list as arg.
556 (error-catching-loop): Use `with-traps' to create a dynamic
557 context with traps enabled.
559 1998-08-19 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
561 * boot-9.scm: Removed (ice-9 regex) from use-list of (guile)
563 (try-using-libtool-name): Removed dependency on (ice-9 regex).
565 1998-08-15 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
567 * boot-9.scm: Make the root module use (ice-9 regex) if
568 available. The dynamic linking facilities in boot-9.scm are
569 currently dependent upon regular expressions. My change of
570 1998-07-14 removed (ice-9 regex) from the use-list of the root
571 module and thereby destroyed dynamic linking.
573 1998-07-29 Jim Blandy <jimb@zwingli.cygnus.com>
575 * Makefile.in: Regenerated using the last public version of
576 automake, not the hacked Cygnus version.
578 1998-07-28 Jim Blandy <jimb@zwingli.cygnus.com>
580 * Makefile.in: Regenerated, after removing Totoro kludge.
582 1998-07-28 Jim Blandy <jimb@totoro.red-bean.com>
584 * getopt-gnu-style.scm: New file. (Thanks to Russ McManus.)
586 1998-07-26 Jim Blandy <jimb@zwingli.cygnus.com>
588 * Makefile.in Rebuilt, for config changes in parent dir.
590 1998-07-21 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
592 * readline.scm (make-readline-port): Set prompt string to "... "
593 after first read line. (Thanks to Richard Polton.)
595 1998-07-19 Jim Blandy <jimb@zwingli.cygnus.com>
597 * lineio.scm (make-line-buffering-input-port): Don't use
598 ungetc-char-ready?, since we don't provide that function any
599 more. The unread-string function doesn't interact properly with
600 any of the standard I/O functions anyway. (Thanks to Andrew
603 * hcons.scm (hashq-cons-assoc): Don't assume the empty list is
604 false. Return false when we cannot find a matching entry in the
605 list. (Thanks to Andrew Archibald.)
607 1998-07-16 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
609 * boot-9.scm (export, export-syntax): New special forms: Export
610 bindings from a module. `(export name1 name2 ...)' can be used at
611 the top of a module (after `define-module') to specify which names
612 should be exported. It can be used as an alternative to
613 `define-public'. `export-syntax' works equivalently to `export'
614 but is intended for export of syntactic keywords.
615 (Thanks to Thien-Thi Nguyen.)
617 1998-07-15 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
619 * boot-9.scm: Renamed module `(guile-repl)' --> `(guile-user)'.
621 1998-07-14 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
623 * boot-9.scm: Let the user start in module `(guile-repl)' instead
624 of module `(guile)'. Also make sure that `(guile-repl)' uses
625 suitable modules. This change improves Guile stability
626 substantially since bindings will only be copied from the root
627 module: If the user redefines builtins in `(guile-repl)' it won't
628 affect the internal operation of Guile itself.
630 1998-06-19 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
632 * boot-9.scm (load-module): When loading files from within files
633 themselves being loaded: Use the directory path of the file being
634 loaded as root for relative filenames. (After suggestion by
637 1998-06-15 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
639 * emacs.scm (emacs-load): New feature: Eval in specified module.
641 1998-06-14 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
643 * readline.scm: Typo in regex module name.
645 1998-06-13 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
647 * readline.scm (apropos-completion-function): regexp-quote text to
650 1998-06-11 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
652 * debug.scm, emacs.scm: Bugfix: Treat `the-last-stack' as a fluid.
654 1998-06-09 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
656 * boot-9.scm: Check that (current-input-port) is a tty before
657 enabling readline. (Thanks to Michael N. Livshin.)
659 1998-06-07 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
661 * boot-9.scm (use-syntax): Turned into a macro inorder to be
662 similar in use to `use-modules'.
663 Example: (use-syntax (ice-9 syncase)) will 1. load the module
664 (ice-9 syncase), and, 2. install the procedure `syncase' as eval
666 (internal-use-syntax): New procedure.
667 (process-define-module): Use `internal-use-syntax'.
669 1998-05-19 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
671 * Makefile.am (ice9_sources): Add emacs.scm.
673 1998-05-13 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
675 * readline.scm: Use the new readline facilities: Add the
676 possibility to control input and output ports; Add apropos
679 * boot-9.scm: Antirevert Jim's readline code which he reverted
680 19971027 and adapt it to the current readline interface.
682 * boot-9.scm (top-repl): Only enable readline if not using the
683 Emacs interface; Only use repl prompt when using the readline port
684 from repl-read. (We don't want to see it when calling `read'.)
686 * boot-9.scm (remove-hook!): Parenthesis bug.
688 1998-05-11 Mikael Djurfeldt <mdj@kenneth>
690 * boot-9.scm: Load readline module if readline is present.
692 * readline.scm (apropos-completion-function): New procedure:
693 Symbolic completion. (Thanks to Andrew Archibald!)
695 1998-04-22 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
697 * boot-9.scm (process-define-module): Added keyword use-syntax.
699 1998-04-19 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
701 * nonblocking.scm: Removed. libguile is now inherently
702 nonblocking through the use of scm_internal_select.
704 * emacs.scm: Removed use of nonblocking.scm.
706 * gwish.scm, gtcl.scm: Removed. tcltk.scm has made these
709 1998-04-15 Mikael Djurfeldt <mdj@nada.kth.se>
711 * runq.scm (runq-control): Corrected spelling of enqueue!.
712 (Thanks to Karl M. Hegbloom.)
714 1998-03-30 Mikael Djurfeldt <mdj@nada.kth.se>
716 * boot-9.scm: Added new run-time option interface eval-options.
718 1998-03-28 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
720 * boot-9.scm (remove-hook!): New macro. (Thanks to Maciej
723 1998-01-30 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
725 * threads.scm: Added simple error and signal handler.
726 (make-thread, begin-handler): Use this handler. The most
727 important effect of this is that signals get unmasked.
728 Previously, when a signal was thrown signals remained masked
729 (signals get masked when a signal is taken) which influenced other
732 1998-01-01 Tim Pierce <twp@skepsis.com>
734 A better fix to the SLIB identity problem -- thanks to Marius Vollmer.
735 * slib.scm (identity): Unmake public.
736 (slib:eval): Evaluate inside `slib-module'.
738 1997-12-24 Tim Pierce <twp@skepsis.com>
740 * boot-9.scm: Doc fix.
742 * slib.scm (identity): Made public.
743 (home-vicinity): New function (from SLIB/Template.scm).
745 1997-12-13 Tim Pierce <twp@skepsis.com>
747 * boot-9.scm (read-line): Rewritten to call %read-line for
748 improved speed. Minor user-visible changes: the new functions are
749 hardwired to treat the LFD character as signifying end-of-line, so
750 changing `scm-line-incrementors' will no longer affect the
751 behavior of read-line. On platforms which do not represent
752 end-of-line with a LFD character, read-line should behave more
753 like native line-processing facilities, but there is still a ways
756 Sat Nov 29 01:24:46 1997 Mikael Djurfeldt <mdj@kenneth>
758 * boot-9.scm (error-catching-loop, save-stack): `the-last-stack'
761 1997-11-28 Tim Pierce <twp@skepsis.com>
763 * boot-9.scm (find-and-link-dynamic-module): If a module directory
764 contains a .la file (a libtool support file), attempt to extract
765 the shared library name from that file. If the .la file does not
766 exist, try to link against a .so file. Libtool-generated compiled
767 modules should load more cleanly in Guile now.
768 (try-using-libtool-name, try-using-sharlib-name): New functions.
770 Sun Nov 9 06:10:59 1997 Gary Houston <ghouston@actrix.gen.nz>
772 * boot-9.scm (set-batch-mode?!, batch-mode?): initialize more
773 usefully so they will work from a script.
775 1997-10-31 Marius Vollmer <mvo@zagadka.ping.de>
777 * boot-9.scm (inherit-print-state): Moved definition to the
778 neighborhood of the record code.
780 Mon Oct 27 02:05:49 1997 Jim Blandy <jimb@totoro.red-bean.com>
782 * boot-9.scm: Revert changes to this file from Oct 23. It turns
783 out to interact badly with the Emacs support and the Tcl/Tk
784 support. It's not a high enough priority at the moment to be
785 worth fixing. I'm leaving the other readline support in, though.
787 Sat Oct 25 14:23:22 1997 Jim Blandy <jimb@totoro.red-bean.com>
789 * Makefile.am: Include readline.scm in the list of files to be
790 installed, so Guile can find it for interactive use.
791 * Makefile.in: Regenerated.
793 Thu Oct 23 01:00:33 1997 Jim Blandy <jimb@totoro.red-bean.com>
795 Add support for readline function.
796 * readline.scm: New module.
797 * boot-9.scm (repl-reader): New function.
798 (scm-style-repl): Call repl-reader, instead of doing the reading
799 ourselves. Remove repl-report-reset; it was never used for
801 (top-repl): If we've got the readline primitives, then redefine
802 repl-reader to use them.
803 If we've got the readline primitives, import the readline module.
805 * ls.scm (ls, lls): Don't assume (eq? #f '()).
807 Wed Oct 22 18:26:57 1997 Jim Blandy <jimb@totoro.red-bean.com>
809 * calling.scm, common-list.scm, ls.scm, q.scm, runq.scm,
810 string-fun.scm: Added copyright notices; reformatted.
812 Thu Oct 9 05:44:00 1997 Gary Houston <ghouston@actrix.gen.nz>
814 * expect.scm: (expect-regexec): new procedure, use it in
815 expect-strings to fix the => syntax under the new regex system.
816 (top): include regex module in define-module statement.
818 Wed Oct 8 03:16:01 1997 Gary Houston <ghouston@actrix.gen.nz>
820 * (error-catching-loop): new local variable "interactive". if
821 #f, abort terminates the process.
822 (set-batch-mode?!, batch-mode?): new closures, defined in
823 error-catching-loop. the names are from scsh.
825 1997-10-06 Marius Vollmer <mvo@zagadka.ping.de>
827 * boot-9.scm (inherit-print-state): If NEW-PORT contains a
828 print-state, throw it away.
830 Fri Oct 3 12:00:00 Mikael Djurfeldt <mdj@nada.kth.se>
832 * boot-9.scm (struct-layout): Use `vtable-index-layout' instead of
835 Thu Oct 2 12:00:00 Mikael Djurfeldt <mdj@nada.kth.se>
837 * boot-9.scm (struct-printer, make-struct-printer,
838 set-struct-printer-in-vtable!, *struct-printer*): Removed.
839 (record-type-vtable, make-record-type): Don't use make-struct-printer.
840 (record-type-vtable): User fields "prpr" (printer is no longer a
842 (record-type-name, record-type-fields): Decreased slot index by
843 one; Use `vtable-offset-user'.
845 Thu Oct 2 12:00:00 Marius Vollmer <mvo@zagadka.ping.de>
847 * boot-9.scm (inherit-print-state): New experimental function.
849 Tue Sep 30 13:12:48 1997 Jim Blandy <jimb@totoro.red-bean.com>
851 Suggestion and script from Maciej Stachowiak:
852 * boot-9.scm: Split off modules into separate, autoloadable files.
853 This reduces startup time from 10.5s to 5.5s (user cpu).
854 * calling.scm, common-list.scm, ls.scm, q.scm, runq.scm,
855 string-fun.scm: New files, containing stuff that used to be in
857 * Makefile.am (ice9_sources): List new files here, for
858 distribution and installation.
859 * Makefile.in: Regenerated.
861 Mon Sep 29 23:53:55 1997 Jim Blandy <jimb@totoro.red-bean.com>
863 * Makefile.in: Regenerated with automake 1.2c.
865 Mon Sep 29 03:21:24 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
867 * slib.scm (slib:load): slib:load first tries to load the file
868 named NAME, then NAME.scm. On error, report the error occuring at
869 the first attempt (NAME) rather than the second (NAME.scm).
871 * boot-9.scm: Bugfix: Hard-solder the print-option procedure into
872 the make-options macro so that we needn't refer to a global
875 Sun Sep 28 21:40:24 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
877 * debug.scm: Moved options interface procedures to boot-9.scm.
879 * boot-9.scm: Define options interface procedures here instead.
881 Sat Sep 27 20:19:20 1997 Jim Blandy <jimb@totoro.red-bean.com>
883 * boot-9.scm (separate-fields-discarding-char,
884 separate-fields-after-char, separate-fields-before-char): Call
885 continuation function, RET, as advertised: with each separated
886 field a separate argument.
888 * Makefile.in: Regenerated with automake 1.2a.
890 Sat Sep 20 14:23:53 1997 Mikael Djurfeldt <mdj@kenneth>
892 * slib.scm (slib:load): Export.
894 * boot-9.scm (in-vicinity): Bugfix: Don't add "/" to an empty
898 Thu Sep 18 01:24:31 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
900 * r4rs.scm (apply): Set name property to 'apply.
902 Tue Sep 16 22:09:50 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
904 * boot-9.scm (keyword->symbol, display-usage-report): Changed
905 length --> string-length. (Thanks to Aleksandar Bakic.)
906 (separate-fields-discarding-char, separate-fields-after-char,
907 separate-fields-before-char): Bugfix from Maciej Stachowiak
908 <mstachow@mit.edu>. Thanks!
909 (try-module-linked): Try to find module among those already
911 (try-module-dynamic-link): Removed the first test which
912 corresponds to a call to `try-module-linked'.
913 (resolve-module): Resolve modules in this order: 1. Already
914 registered modules (for example those which have been statically
915 linked), 2. Try to autoload an .scm-file, 3. Try to dynamically
918 Mon Sep 15 23:39:54 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
920 * boot-9.scm (iota): Renamed list-reverse! --> reverse!
922 Thu Sep 11 02:31:38 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
924 * session.scm (name): New procedure: Gives name of object.
925 (source): New procedure: Gives source of object.
927 Wed Sep 10 20:12:45 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
929 * boot-9.scm (primitive-macro?): New procedure.
931 * slib.scm: Added hack which transfers syntactic information from
932 the builtin variable `define' to the slib version if module (ice-9
933 syncase) has been loaded. This is necessary to get correct
934 expansion inside the slib module.
936 * psyntax.ss (build-let, build-named-let): New output
938 (build-lexical-var): Seed gensym with symbolic name.
939 (self-evaluating?): Add keywords among self-evaluating types.
940 (let): New core form.
941 (if): Removed from core language.
942 (or, and, let, cond): Removed syntactic definitions.
943 (sc-expand3): New procedure: Expander which takes optional mode
944 and eval-syntactic-expanders-when arguments.
946 * syncase.scm (psyncomp): New procedure: Recompiles psyntax.pp.
947 Should be used inside the (ice-9 syncase) module with (use-syntax
948 syncase) and with the current directory containing the psyntax.ss
950 Added hack to transfer syntactic information from the builtin
951 variable `define' to the slib version if module (ice-9 slib) has
954 Fri Sep 5 05:47:36 1997 Mikael Djurfeldt <mdj@faun.nada.kth.se>
956 * syncase.scm (sc-interface, sc-expand): Removed hook setup.
957 (syncase): Publish syntax transformer to be used with
959 (sc-macro): Use this as the value when publishing macros.
961 * boot-9.scm (module-type): Added `transformer'.
962 (make-module): Modified initialization.
963 (module-transformer, set-module-transformer!): Selector and
964 mutator for module-associated transformer.
965 (set-current-module): Use module-transformer to set
966 `scm:eval-transformer'.
967 (module-use!): Previous change reverted.
968 (use-syntax): New function: Install a transformer in current
970 (sc-interface, sc-expand): Removed! :)
972 Fri Sep 5 03:09:09 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
974 * emacs.scm (emacs-load): Added new parameter `module'.
976 * syncase.scm (putprop, getprop): Modified to use the object
977 properties of the variable object corresponding to the symbol;
978 This way we can ride on the mechanisms of the module system.
979 Changed `builtin-variable' calls to `define-public' calls.
980 Setup the hooks sc-expand and sc-interface.
982 * boot-9.scm (sc-interface, sc-expand): New builtin variables.
983 (set-current-module): Switch to and from sc-expand as
984 scm:eval-transformer when going into and out of modules using
986 (module-use!): Set scm:eval-transformer to sc-expand when adding
987 the syncase interface.
989 Thu Sep 4 14:57:04 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
991 * syncase.scm (putprop): Temporary fix which publishes new syntax
992 globally (the old behaviour was complex and connected to the inner
993 workings of the current module system).
995 Wed Sep 3 21:29:13 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
997 * psyntax.ss: Updated.
998 psyntax.pp: Bugfix: Previous version had some leading "t":s cut
1001 Tue Sep 2 00:26:42 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1003 * boot-9.scm (gensym): Removed (replaced by primitive).
1004 (obarray-gensym): Rewritten to use `gensym'.
1005 (gentemp): Rewritten to use `gensym'.
1007 Mon Sep 1 20:08:32 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1009 * gtcl.scm (make-tcl-binder): Rewritten to choose bindings
1010 according to the following priorities:
1011 1. tcl bindings which are present in override-scheme-list
1012 2. bindings from the-scm-module
1014 This way the gtcl module can occur first in the use-list without
1015 disabling the scheme interpreter.
1016 (new-interpreter): New function.
1018 * gwish.scm: Moved initialization code for the-interpreter to
1019 gtcl.scm; Moved name space cleaning code to gtcl.scm and rewrote
1020 it; Call `new-interpreter'; Don't :use-module (guile).
1022 Thu Aug 28 23:48:53 1997 Jim Blandy <jimb@totoro.red-bean.com>
1024 * Makefile.in: Regenerated.
1026 Wed Aug 27 11:35:09 1997 Jim Blandy <jimb@totoro.red-bean.com>
1028 * Makefile.in: Regenerated, so it uses "tar", not "gtar".
1030 Mon Aug 25 22:00:44 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1032 * emacs.scm (object->string, format, error-args->string): New
1034 (emacs-frame-eval): Reworked.
1036 Mon Aug 25 16:15:55 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1038 * session.scm (apropos-internal): Musn't initialize symbol
1039 accumulator with a constant pair. That led to mutation of the
1042 Sun Aug 24 01:03:10 1997 Mikael Djurfeldt <mdj@kenneth>
1044 * session.scm (vector-for-each): Removed.
1045 (apropos): vector-for-each --> array-for-each.
1046 (apropos-internal): New function. Return list of accessible
1047 symbols matching regexp.
1049 * debug.scm (frame-number->index): New function. Convert frame
1050 number (as displayed in the backtrace) to frame index (to be used
1053 * emacs.scm (emacs-load): New arguments: interactivep: when
1054 non-false, send back results to Emacs; colnum: Column number;
1055 Use modules (ice-9 debug) and (ice-9 session);
1056 (no-stack, no-source): New simple-actions;
1057 (result-to-emacs): New procedure. Sends data to Emacs via the
1059 (get-frame-source, emacs-select-frame, emacs-frame-eval,
1060 emacs-symdoc): New procedures.
1062 Wed Aug 20 13:21:11 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1064 * emacs.scm (emacs-load): Adjust stack narrowing.
1065 (whitespace-chars): Include #\np.
1067 * syncase.scm: Also turn off debugging evaluator and recording of
1068 procedure names during loading of psyntax.pp.
1070 * psyntax.pp: Removed leading blanks => 800K -> 100K.
1072 Tue Aug 19 02:39:41 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1074 * syncase.scm: Don't tamper with debug mode setting when enabling
1075 macros. Instead cut the stack with start-stack.
1076 Load psyntax.pp with recording of positions turned off.
1078 * psyntax.pp, psyntax.ss (quasiquote): Changed fx= --> =.
1080 * syncase.scm: New file: Guile-adaption for syntax-case macros.
1081 * psyntax.pp, psyntax.ss: Syntax-case macros, portable version 2 by
1082 R. Kent Dybvig, Oscar Waddell, Bob Hieb and Carl Bruggeman
1084 Mon Aug 18 21:58:25 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1086 * session.scm: New file: Session support.
1087 (apropos): New procedure: List bindings given regexp.
1089 Sat Aug 16 18:44:24 1997 Gary Houston <ghouston@actrix.gen.nz>
1091 * boot-9.scm: define tms accessors: clock, utime, stime, cutime,
1094 Thu Aug 14 19:55:37 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1096 * emacs.scm (emacs-load): Something has changed in the reader so
1097 that we now should set the port line count to the specified value
1098 (linum) instead of (- linum 1).
1100 * slib.scm (slib:load): Use load-from-path instead of
1101 primitive-load-path so that backtraces get narrowed properly at
1104 * boot-9.scm (top-repl): Save stack already in signal handler in
1105 order to narrow it correctly.
1106 (save-stack): Adjust narrowing tag for the top of load-stacks.
1108 Tue Jul 29 01:18:08 1997 Gary Houston <ghouston@actrix.gen.nz>
1110 * boot-9.scm (move->fdes, dup->port): use dup->fdes, not primitive-dup.
1111 (dup->fdes): deleted, now done in C.
1113 Sat Jul 26 08:00:42 1997 Gary Houston <ghouston@actrix.gen.nz>
1115 * boot-9.scm (setenv): new procedure, scsh compatible.
1117 Sat Jul 26 21:30:10 1997 Marius Vollmer <mvo@zagadka.ping.de>
1119 * boot-9.scm (with-fluids): New macro to go with the
1120 builtin `with-fluids*'.
1122 Thu Jul 24 04:28:11 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1124 * slib.scm (install-require-module): In newer versions of slib
1125 *catalog* is #f until the first access. Therefore we call
1126 require:provided? for a random feature if *catalog* is #f.
1128 Wed Jul 23 20:13:04 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1130 * boot-9.scm: If using emacs interface, enable backtraces
1133 Mon Jul 21 06:45:45 1997 Gary Houston <ghouston@actrix.gen.nz>
1135 * boot-9.scm (dup->port, dup->inport, dup->outport, dup->fdes,
1136 dup, fdes->inport, fdes->outport, port->fdes): new procedures.
1137 (duplicate-port): was a C primitive, now it's here.
1138 (move->fdes): allow the first argument to be a file descriptor.
1139 Return the modified port or file descriptor (was unspecified.)
1141 Fri Jul 11 00:13:43 1997 Jim Blandy <jimb@floss.red-bean.com>
1143 Changes to compile under gnu-win32, from Marcus Daniels:
1144 * boot-9.scm (load-user-init): If HOME is unset, provide
1147 * boot-9.scm (define-public): Changed to accomodate Hobbit.
1149 Tue Jun 24 00:31:47 1997 Jim Blandy <jimb@floss.red-bean.com>
1151 * boot-9.scm, debug.scm, hcons.scm, lineio.scm, mapping.scm,
1152 poe.scm, slib.scm, tags.scm, threads.scm: Use normal list
1153 notation, instead of #/ notation.
1155 * expect.scm (expect-strings): Pass regexp/newline flag to
1158 Mon Jun 23 16:13:38 1997 Jim Blandy <jimb@floss.red-bean.com>
1160 Fix inconsistencies in parsing of #/ style lists.
1161 * boot-9.scm (read-path-list-notation): New function.
1162 (parse-path-symbol): Deleted. Replaced by above.
1163 Plug in read-path-list-notation as the parser for #/ lists,
1164 instead of the anonymous lambda form calling parse-path-symbol.
1165 (Thanks to Maurizio Vitale.)
1167 * boot-9.scm (make-list): Remove the definition of this function
1168 from the (ice-9 common-list) module; make the `init' argument
1169 optional in the scm module's definition, to match the deleted
1170 definition. Harmony reigneth? (Thanks to Bernard URBAN.)
1172 Sun Jun 22 18:33:17 1997 Jim Blandy <jimb@floss.red-bean.com>
1174 Try to detect when people are using one version of libguile and a
1175 different version of ice-9. People have been skewing things and
1176 sending in bug reports.
1177 * version.scm.in: New file, which the configure script munges to
1178 produce version.scm, which contains the ice-9 config stamp.
1179 * boot-9.scm: Compare the libguile and ice-9 config stamps;
1180 display a warning if the two are different.
1181 * Makefile.am: Install version.scm, but don't distribute it.
1182 Distribute version.scm.in, but don't install it.
1183 * Makefile.in: Regenerated.
1185 Thu Jun 19 21:01:16 1997 Jim Blandy <jimb@floss.red-bean.com>
1187 * slib.scm (slib:warn): Alias for WARN function.
1189 Fri Jun 13 00:32:04 1997 Jim Blandy <jimb@floss.red-bean.com>
1191 * boot-9.scm (struct-printer): Fix off-by-one error in range
1192 check. Correctly check for struct printer tag.
1194 * expect.scm: Turn this into a module, (ice-9 expect).
1195 (expect-port, expect-timeout, expect-timeout-proc,
1196 expect-eof-proc, expect-char-proc, expect, expect-strings,
1197 expect-select): Make these public definitions.
1198 (expect-strings): Use make-regexp and regexp-exec, instead of
1199 regcomp and regexec. We've omitted the REG_NEWLINE flag; hope
1202 * boot-9.scm (with-regexp-parts): Comment this out. It has no
1203 users in the core, and relies on mildly hairy details of the old
1206 * test.scm: Re-enable tests asserting that '() is true, and not a
1207 boolean. This stuff has been true for a while.
1209 * boot-9.scm (ipow-by-squaring, butlast): Fix uses of outdated
1212 * boot-9.scm (with-excursion-getter-and-setter, q-rear): Doc
1215 Wed Jun 11 00:31:40 1997 Jim Blandy <jimb@floss.red-bean.com>
1217 * Makefile.in: Regenerated after xtra_PLUGIN_guile_libs change in
1220 Fri Jun 6 14:37:18 1997 Marius Vollmer <mvo@zagadka.ping.de>
1222 * boot-9.scm (struct-printer): Bugfix: Check the layout of the
1223 vtable and not the one of the struct.
1225 Wed Jun 4 23:27:16 1997 Marius Vollmer <mvo@zagadka.ping.de>
1227 * boot-9.scm (struct-layout, %struct-printer-tag, struct-printer,
1228 make-struct-printer, set-struct-printer-in-vtable!): New bindings
1229 to support printing of structures.
1230 (record-type-vtable, make-record-type): Add slot to hold printing
1231 function and initialize it with something appropriate. Removed
1232 commented out printing code.
1233 (record-type-name, record-type-fields): Adjusted slot offsets.
1234 (%print-module): Reduce argument list to "mod" and "port".
1236 Tue Jun 3 17:04:18 1997 Jim Blandy <jimb@totoro.cyclic.com>
1238 * slib.scm (identity): New function, used by SLIB.
1240 Sat May 31 18:57:12 1997 Gary Houston <ghouston@actrix.gen.nz>
1242 * boot-9.scm: signal-handler, alarm-thunk: removed.
1243 don't define ticks-interrupt etc.
1244 top-repl: install signal handlers for SIGINT, SIGFPE, SIGSEGV, SIGBUS
1245 during call to scm-style-repl.
1247 Fri May 30 18:08:10 1997 Jim Blandy <jimb@floss.cyclic.com>
1249 * slib.scm (slib:load): Use primitive-load-path instead of
1250 basic-load. This is probably wrong, but hopefully the entire
1251 source access system will be revised soon anyway, and this will
1252 make require behave more like Emacs Lisp's require. If this
1253 breaks something, please let me know. Maybe this is real dumb.
1255 Thu May 29 02:36:48 1997 Jim Blandy <jimb@floss.cyclic.com>
1257 * regex.scm: Add a module declaration. Use DEFINE-PUBLIC everywhere.
1258 * boot-9.scm: If the `regex' feature is present, use the module
1261 Tue May 27 22:48:14 1997 Tim Pierce <twp@twp.tezcat.com>
1263 * regex.scm: New file.
1264 * Makefile.am (subpkgdata_DATA): Add regex.scm.
1265 * Makefile.in: Regenerated.
1267 Mon May 26 17:24:48 1997 Jim Blandy <jimb@totoro.cyclic.com>
1269 * COPYING, boot-9.scm, debug.scm, emacs.scm, expect.scm, gtcl.scm,
1270 gwish.scm, hcons.scm, lineio.scm, mapping.scm, nonblocking.scm,
1271 oldprint.scm, poe.scm, r4rs.scm, source.scm, tags.scm, test.scm,
1272 threads.scm: New address for FSF.
1274 Fri May 16 04:09:45 1997 Jim Blandy <jimb@floss.cyclic.com>
1276 * debug.scm: Update copyright years; this file has been worked on
1279 Thu May 15 07:56:08 1997 Gary Houston <ghouston@actrix.gen.nz>
1281 * expect.scm: use gettimeofday instead of get-internal-real-time
1282 and use a floating point timeout when calling select. Untested,
1283 since the regex library is currently AWOL.
1285 Wed May 14 21:00:30 1997 Jim Blandy <jimb@floss.cyclic.com>
1287 * boot-9.scm (eval-string): Function deleted; it was already
1288 implemented in C, so there's no point in making a divergable copy
1291 Tue May 13 16:40:06 1997 Jim Blandy <jimb@floss.cyclic.com>
1293 * Makefile.in: Regenerated, using automake-1.1p.
1295 Tue May 13 16:40:06 1997 Jim Blandy <jimb@floss.cyclic.com>
1297 * Makefile.in: Regenerated, using automake-1.1p.
1299 Tue May 13 02:48:49 1997 Gary Houston <ghouston@actrix.gen.nz>
1301 * boot-9.scm (error-catching-loop): don't read a line from
1302 current input when quit is encountered, the previous change
1305 Mon May 12 19:00:21 1997 Jim Blandy <jimb@floss.cyclic.com>
1307 * boot-9.scm (scm-style-repl): After reading an expression,
1308 consume any trailing newline (perhaps preceded by whitespace), to
1309 avoid screwing up GDB. More detail in comments.
1311 Mon May 5 13:18:38 1997 Jim Blandy <jimb@floss.cyclic.com>
1313 * Makefile.am (ETAGS_ARGS): New variable, since we're not treating
1314 the Scheme code like code yet.
1315 * Makefile.in: Resrac,husrched.
1317 Wed Apr 30 15:25:15 1997 Marius Vollmer <mvo@zagadka.ping.de>
1319 * boot-9.scm (link-dynamic-module): Do not catch errors from
1320 dynamic-link and dynamic-call. When the shared library exists it
1321 is now assumed to be suitable for a dynamic C module.
1323 Fri Apr 25 21:21:35 1997 Marius Vollmer <mvo@zagadka.ping.de>
1325 * boot-9.scm (process-use-modules): New function to support the
1327 (use-modules): throw an error iff one of the requested modules
1330 Tue Apr 29 06:54:46 1997 Gary Houston <ghouston@actrix.gen.nz>
1332 * boot-9.scm: don't define timer-thunk or gc-thunk.
1334 Sun Apr 27 17:56:09 1997 Jim Blandy <jimb@floss.cyclic.com>
1336 * aclocal.m4: Removed; unnecessary, given changes of Apr 24.
1338 * Makefile.am (subpkgdatadir): Use "ice-9" instead of "@module@";
1339 we're not using AM_INIT_GUILE_MODULE any more.
1340 * Makefile.in: Regeneratitetedrerd.
1342 Thu Apr 24 01:33:33 1997 Jim Blandy <jimb@floss.cyclic.com>
1344 Get 'make dist' to work again.
1345 * Makefile.am (EXTRA_DIST): Remove PLUGIN files.
1346 * Makefile.in: Regenerated, like two tons of fleas.
1348 Changes for reduced Guile distribution: one configure script,
1350 * configure.in, configure: Removed.
1351 * Makefile.in: Regenerated.
1353 Sat Apr 19 08:03:50 1997 Jim Blandy <jimb@floss.cyclic.com>
1355 * boot-9.scm (eval-string, command-line, load-user-init): New
1358 Sat Apr 12 08:27:05 1997 Gary Houston <ghouston@actrix.gen.nz>
1360 * boot-9.scm (log10): defined.
1362 Tue Apr 1 17:46:49 1997 Gary Houston <ghouston@actrix.gen.nz>
1364 * expect.scm (expect-select): correct the millisecond timeout
1365 arithmetic (from Marko.Kohtala@ntc.nokia.com).
1367 Mon Mar 31 03:23:19 1997 Gary Houston <ghouston@actrix.gen.nz>
1369 * boot-9.scm (open-input-pipe, open-output-pipe): defined here
1370 instead of in libguile.
1371 (tm:sec etc.) new accessors for broken-down time.
1372 (set-tm:sec etc.) new setters for broken-down time.
1374 Thu Mar 27 05:06:00 1997 Gary Houston <ghouston@actrix.gen.nz>
1376 * boot-9.scm (netent:addrtype, servent:port): added missing
1378 (netent:net, servent:proto): repaired.
1379 (utsname:sysname etc.): new accessors for uname.
1381 Tue Mar 25 03:04:03 1997 Gary Houston <ghouston@actrix.gen.nz>
1383 * boot-9.scm (sockaddr:fam, sockaddr:path, sockaddr:addr,
1384 sockaddr:port): new functions.
1386 Wed Mar 19 04:50:34 1997 Gary Houston <ghouston@actrix.gen.nz>
1388 * boot-9.scm: define accessor procedures for the objects returned
1389 by getpw, getgr, gethost, getnet, getproto, getserv (e.g.,
1390 passwd:name, where the first component is the name of the C structure
1391 and the second is the unprefixed C member name.)
1393 Tue Mar 18 18:39:31 1997 Gary Houston <ghouston@actrix.gen.nz>
1395 * boot-9.scm (setpwent, setgrent, sethostent, setnetent, setprotoent,
1396 setservent): no longer take an argument, it was bogus.
1398 Thu Mar 13 00:13:41 1997 Gary Houston <ghouston@actrix.gen.nz>
1400 * boot-9.scm (scm-error): deleted, reimplemented in C.
1402 Mon Mar 10 15:48:31 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1404 * boot-9.scm (process-define-module): Modified to handle both
1405 keywords and symbols.
1407 Sat Mar 8 04:32:44 1997 Gary Houston <ghouston@actrix.gen.nz>
1409 * slib.scm: update read usage.
1411 * r4rs.scm: update primitive-load usage.
1412 Don't define read-sharp.
1414 * boot-9.scm: use read-hash-extend to install extra read syntax.
1415 (read-sharp): removed.
1416 Adjust usage of primitive-load-path, read, which no longer take
1417 case_i or read-sharp arguments.
1419 Sat Mar 8 00:07:54 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1421 * boot-9.scm: Added loading of session support module.
1423 * debug.scm: Removed `display-application'. (Replaced by
1424 primitive procedure.)
1426 * boot-9.scm (beautify-user-module!): Don't add the root module
1427 interface to the end of the use-list of the root module.
1429 Thu Mar 6 07:26:34 1997 Gary Houston <ghouston@actrix.gen.nz>
1431 * boot-9.scm: repl-quit, repl-abort: obsolete variables deleted.
1433 Wed Mar 5 20:30:24 1997 Gary Houston <ghouston@actrix.gen.nz>
1435 * boot-9.scm: check use-emacs-interface for emacs support.
1437 Sun Mar 2 19:47:14 1997 Gary Houston <ghouston@actrix.gen.nz>
1439 * boot-9.scm (scm-style-repl): call repl-report-start-timing if
1441 * (exit): alias for quit.
1443 Sun Mar 2 05:25:11 1997 Gary Houston <ghouston@actrix.gen.nz>
1445 * boot-9.scm (error-catching-loop thunk): use a status variable to
1446 return the quit args.
1447 (scm-style-repl): call -quit, passing return value from
1448 error-catching-repl. Make -quit return its args.
1449 stand-alone-repl: comment out, since it seems unused.
1451 (error-catching-loop thunk): discard trailing junk after a (quit).
1453 Sat Mar 1 15:24:39 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1455 * boot-9.scm: Removed the old printer code.
1457 * r4rs.scm (apply, call-with-current-continuation): Added comment
1458 explaining why apply and call/cc need to be closures.
1460 * boot-9.scm (apply, call-with-current-continuation): Bugfix:
1461 Removed. These definitions are already present in r4rs.scm.
1463 * debug.scm (trace-entry, trace-exit): Check that we're on a repl
1464 stack before printing traced frames; Re-enable trace flag at end
1467 Sat Mar 1 00:10:38 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1469 * debug.scm: Add hook for reset of trace level at abort.
1471 * boot-9.scm (run-hooks): New procedure.
1472 (add-hooks!): New macro.
1473 Change hooks to use these functions.
1475 * debug.scm: *Warning* This feature is a bit premature. I add
1476 it anyway because 1. it is very useful, and, 2. you can start
1477 making it less premature by complaining to me and by modifying
1479 (trace): Given one or more procedure objects, trace each one.
1480 Given no arguments, show all traced procedures.
1481 (untrace): Given one or more procedure objects, untrace each one.
1482 Given no arguments, untrace all traced procedures. The tracing in
1483 Guile have an advantage to most other systems: We don't create new
1484 procedure objects, but mark the procedure objects themselves.
1485 This means that also anonymous and internal procedures can be
1488 * boot-9.scm (error-catching-loop): Added handling of apply-frame
1489 and exit-frame exceptions.
1491 * boot-9.scm (assert-repl-prompt, the-prompt-string): Removed.
1492 (set-repl-prompt!): Setter for repl prompt.
1493 (scm-style-repl): If prompt is #f, don't prompt; if prompt is a
1494 string, display it; if prompt is a thunk, call it and display its
1495 result; otherwise display "> ".
1496 (Change suggested by Roland Orre <orre@nada.kth.se>.)
1498 * r4rs.scm (%load-verbosely): Reverted change to
1499 `module-defined?', since the module system isn't bootstrapped when
1500 we load r4rs.scm. This is just a temporary fix to make the
1501 repository version runnable.
1503 Thu Feb 27 23:25:47 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1505 * boot-9.scm: Removed the enabling of debug evaluator and
1506 recording of source code positions. This was placed there for our
1507 convenience, but it has already sneaked into the distribution
1508 once... so we'd better add this in our local copies instead when
1509 we need it. (These options are normally enabled at the end of
1510 boot-9.scm when loading the debug module.)
1512 Thu Feb 27 16:04:45 1997 Marius Vollmer <mvo@zagadka.ping.de>
1514 * boot-9.scm (module-defined?): New function.
1515 (macroexpand-1, macroexpand): Use local-ref instead of defined?
1517 * r4rs.scm (%load-verbosely): Use "module-defined?" instead of
1519 * slib.scm (defined?): New function to take the place of the
1520 builtin "defined?". It allways examines the slib module.
1522 Mon Feb 24 21:46:15 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1524 * configure.in: Added AM_MAINTAINER_MODE
1526 Sat Feb 15 04:51:20 1997 Gary Houston <ghouston@actrix.gen.nz>
1528 * boot-9.scm (read-sharp): define directly, don't go through a
1531 Tue Feb 11 08:45:48 1997 Gary Houston <ghouston@actrix.gen.nz>
1533 * boot-9.scm (uniform-vector-set!): use uniform-array-set1!, not
1534 uniform-vector-set1! which doesn't exist.
1536 Mon Feb 10 03:01:48 1997 Mikael Djurfeldt <mdj@kenneth>
1538 * boot-9.scm (backtrace): Removed. (A C version now exists in
1541 Fri Jan 24 06:05:36 1997 Gary Houston <ghouston@actrix.gen.nz>
1543 * boot-9.scm (read-line!, read-delimited!, read-delimited,
1544 read-line): new procedures, see libguile/ChangeLog.
1546 Thu Jan 16 17:07:03 1997 Marius Vollmer <mvo@zagadka.ping.de>
1548 Added dynamic linking of modules. See libguile/DYNAMIC-LINKING.
1550 * boot-9.scm (split-c-module-name, convert-c-registered-modules,
1551 init-dynamic-module, dynamic-maybe-call,
1552 find-and-link-dynamic-module, link-dynamic-module,
1553 try-module-dynamic-link, registered-modules): New definitions for
1554 dynamic linking of modules.
1555 (resolve-module): Try to dynamically link the requested module
1556 after failing to load it as Scheme code.
1558 Wed Jan 8 05:50:14 1997 Gary Houston <ghouston@actrix.gen.nz>
1560 * boot-9.scm (getservbyport, getservbyname): remove stray %.
1562 Tue Jan 7 20:02:24 1997 Jim Blandy <jimb@floss.cyclic.com>
1564 * boot-9.scm (and=>): Rename THUNK argument to PROCEDURE, 'cos
1567 * lineio.scm (make-line-buffering-input-port): Properly test for
1568 the case of an empty buffer list. The old code assumed that '()
1571 Mon Jan 6 01:13:53 1997 Mikael Djurfeldt <mdj@kenneth>
1573 * boot-9.scm (use-modules): New macro (from Marius Vollmer).
1574 (use-modules <module name> ...) Put the the modules named by
1575 <module name> ... on the use list of the current module.
1577 Sun Jan 5 15:52:59 1997 Jim Blandy <jimb@floss.cyclic.com>
1579 * boot-9.scm (error-catching-loop): Remove message saying that
1580 typing "$" will put you in the debugger. This isn't implemented
1583 Sun Dec 22 23:27:25 1996 Jim Blandy <jimb@floss.cyclic.com>
1585 * boot-9.scm (delq-all!): Function deleted; delq!'s semantics have
1586 been fixed, so this function is superfluous.
1587 (transform-usage-lambda): Use delq!, not delq-all!.
1589 Tue Dec 17 20:36:45 1996 Marius Vollmer <mvo@zagadka.ping.de>
1591 * boot-9.scm (resolve-module): New optional parameter that
1592 controls whether autoloading is attempted or not. Default is #t.
1593 (process-define-module): Don't autoload the defined module.
1594 (try-module-autoload): Don't autoload the directory modules.
1596 * boot-9.scm (process-define-module): Ensure that the-scm-module
1597 is last in the `uses' list to allow shadowing builtin
1598 bindings. All :use-module options are added in the order they
1599 appear in the arguments but before anything already on the list
1600 (such as the-scm-module).
1602 Wed Dec 11 21:06:05 1996 Gary Houston <ghouston@actrix.gen.nz>
1604 * slib.scm (slib-parent-dir): throw error if #f returned from
1607 Sat Nov 30 23:57:28 1996 Tom Tromey <tromey@cygnus.com>
1609 * PLUGIN/greet, PLUGIN/split.sed, PLUGIN/this.configure: Removed.
1610 * Makefile.am, aclocal.m4: New files.
1611 * configure.in: Updated for Automake.
1613 Wed Nov 27 14:16:14 1996 Marius Vollmer <mvo@zagadka.ping.de>
1615 * boot-9.scm (macroexpand-1, macroexpand), slib.scm
1616 (slib:features), r4rs.scm (%load-verbosely): "defined?" is now a
1617 function, use it accordingly.
1619 Thu Nov 21 11:12:10 1996 Jim Blandy <jimb@floss.cyclic.com>
1621 It's an "eval closure", not an "eval thunk." A thunk is a
1622 function of no arguments.
1623 * boot-9.scm (module-type): Rename module field.
1624 (make-module, eval-in-module, make-root-module,
1625 set-current-module): Uses changed.
1626 (module-eval-closure, set-module-eval-closure!,
1627 root-module-closure): Renamed from module-eval-thunk,
1628 set-module-eval-thunk!, root-module-thunk.
1629 (set-current-module): Change uses of *top-level-lookup-thunk* to
1630 *top-level-eval-closure*.
1632 Wed Nov 20 14:45:27 1996 Jim Blandy <jimb@totoro.cyclic.com>
1634 * slib.scm (slib-parent-dir): Use string-length, not length.
1635 (Thanks to Bernard Urban.)
1637 Sat Nov 2 20:00:42 1996 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1639 * boot-9.scm: The debugging evaluator and recording of positions
1640 aren't enabled by default any longer (they are switched on in
1641 debug.scm). But during development we want to have them also
1642 *inside* boot-9.scm. Therefore, two lines are added at the
1643 beginning of boot-9.scm to enable these.
1645 Call `provide' so that `records' are included among the
1648 The scheme for saving the stack has been adjusted: save-stack is
1649 now commonly available for saving the stack. Calling `save-stack'
1650 sets a flag `stack-saved?' which prevents overwriting the stack.
1651 `stack-saved?' is reset at `abort'.
1653 Spelling correction: seperate --> separate.
1655 Removed `:'s that had creeped into some comments.
1657 The repl now doesn't print #<unspecified> results any longer
1658 If the user wants to see this, he can do
1659 (assert-repl-print-unspecified #t) in his startup file.
1661 The user now gets a friendly message instead of a backtrace at
1664 Added `before-read-hook'.
1666 Load module (ice-9 emacs) if option `-e' was specified.
1668 (provide): New function.
1670 (error): Save stack at entry, so that Guile entrails won't show up
1673 (backtrace): New function.
1675 (save-stack): Can now take arbitrary number of stack narrowing
1676 specifier pairs. The first specifier in a pair controls inner
1677 border, the second the outer border. A number means cut that
1678 number of frames, a procedure object means cut until that object
1679 is found in operator position in a frame.
1681 * debug.scm: Enable debugging evaluator and recording of positions
1684 * slib.scm (slib:load): Adapt to the new behavior of
1685 primitive-load: It doesn't any longer try both with and without
1686 ".scm" extension. (We don't want to use %search-load-path here.)
1688 (implementation-vicinity): New function. slib requires it
1690 (library-vicinity): Updated.
1692 Load "require.scm" in the library-vicinity.
1694 (install-require-vicinity, install-require-module): New functions.
1696 Mon Oct 28 17:56:29 1996 Jim Blandy <jimb@floss.cyclic.com>
1698 * boot-9.scm (load-from-path): New function.
1700 * boot-9.scm (try-load, basic-try-load, try-load-module,
1701 try-load): Deleted. I don't think they're being used.
1703 * Makefile.in (scm_files): Add r4rs.scm and test.scm to this list,
1704 so they'll get distributed.
1706 Get Guile to be a little less chatty by default. The new user
1707 should see as little clutter as possible.
1708 * r4rs.scm (%load-verbosely): Make this #f by default.
1709 * boot-9.scm (scm-repl-verbose): Make this #f by default.
1710 (scm-style-repl): Don't run 'pk' on the value passed to quit.
1712 * r4rs.scm: New file.
1713 * boot-9.scm: Load r4rs.scm, first thing.
1714 (OPEN_READ, OPEN_WRITE, OPEN_BOTH, *null-device*, open-input-file,
1715 open-output-file, open-io-file, close-input-port,
1716 close-output-port, close-io-port, call-with-input-file,
1717 call-with-output-file, with-input-from-port, with-output-to-port,
1718 with-error-to-port, with-input-from-file, with-output-to-file,
1719 with-error-to-file, with-input-from-string, with-output-to-string,
1720 with-error-to-string, the-eof-object): Definitions moved to
1721 r4rs.scm. Not all of them are R4RS, but those that are use those
1723 (load, %load-verbosely, %load-announce): Moved, along with code to
1724 set %load-hook, to r4rs.scm.
1726 * test.scm: New file.
1728 * boot-9.scm (integer?): Definition deleted, in favor of the one
1729 present in libguile (which used to be called int?). I have no
1730 idea why integer? didn't just call int? to begin with.
1732 * boot-9.scm (<, <=, =, >, >=): Definitions in terms of <?, <=?,
1733 =?, >?, and >=? deleted; they're defined that way by libguile now.
1735 * boot-9.scm (load): Simplified; primitive-load does most of this
1737 (%load-announce-win): Removed; no longer used. Set %load-hook to
1738 call %load-announce.
1740 Sun Oct 27 07:47:03 1996 Gary Houston <ghouston@actrix.gen.nz>
1742 * boot-9.scm (stat:dev, stat:ino, stat:mode, stat:nlink, stat:uid,
1743 stat:gid, stat:rdev, stat:size, stat:atime, stat:mtime,
1744 stat:ctime, stat:blksize, stat:blocks) accessor functions for stat
1746 (file-is-directory?): use stat:type.
1748 Fri Oct 25 03:34:47 1996 Jim Blandy <jimb@floss.cyclic.com>
1750 * boot-9.scm (%read-sharp): Don't recognize the `#!' syntax here;
1751 that's now taken care of in libguile, and in a way compatible with
1752 SCSH (which this isn't).
1754 Mon Oct 21 18:52:36 1996 Jim Blandy <jimb@totoro.cyclic.com>
1756 * boot-9.scm: Formatting tweaks.
1758 Fri Oct 18 01:03:08 1996 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1760 * boot-9.scm (handle-system-error): Added hooks before-error-hook,
1761 after-error-hook, before-backtrace-hook and after-backtrace-hook
1762 to the error handler. E.g.: fancy emacs support could plug into
1764 (save-stack): New function. The stack is now made differently
1765 depending on the stack id. (The motivation is to make a better
1766 choice regarding what stack frames to present to the user.)
1767 (error-catching-loop): Stack handling code moved outside into
1770 Thu Oct 17 20:33:08 1996 Gary Houston <ghouston@actrix.gen.nz>
1772 * Makefile.in (scm_files): add expect.scm.
1774 * expect.scm: new file ported from guile-iii.
1776 * boot-9.scm: remove handle-system-error, after moving the code into
1777 error-catching-loop.
1778 Don't set 'throw-handler-default property on error keys.
1779 Just interpret (almost) any throw with 4 args as an error throw.
1780 Delete some try-load stuff that was already commented out.
1782 Second thoughts, keep handle-system-error but call it from
1783 error-catching-loop.
1785 Tue Oct 15 17:07:20 1996 Jim Blandy <jimb@floss.cyclic.com>
1787 * boot-9.scm: Doc fixes.
1788 (make-module): Rework for readability.
1789 (make-root-module, make-scm-module): USES argument to make-module
1790 should be '(), not #f.
1792 * boot-9.scm (try-load): %sys-load-path has been renamed to
1793 primitive-load-path; adjust call here.
1795 Tue Oct 15 14:25:01 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1797 * boot-9.scm (signal-handler): Bugfix: Moved the recording of
1798 the stack to the correct place: when it is decided to generate an
1801 Mon Oct 14 22:20:30 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1803 * boot-9.scm (error-catching-loop, signal-handler,
1804 handle-system-error): Backtracing now works for signals aswell;
1805 Backtracing mechanism can now identify the stack root created by
1806 start-stack so that the user isn't exposed to system stack frames.
1808 Mon Oct 14 06:05:42 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1810 * Makefile.in: Added threads.scm.
1812 Mon Oct 14 04:21:51 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1814 * debug.scm (make-enable, make-disable): Simplified.
1816 * boot-9.scm: Renamed %%throw-handler-default -->
1817 throw-handler-default.
1818 ((handle-system-error key . arg-list)): Changed the way errors are
1820 ((scm-style-repl)): Wrap up the call to eval in a start-stack
1822 ((error-catching-loop thunk)): Introduce a lazy-catch into
1823 error-catching-loop so that the stack can be captured.
1825 Thu Oct 10 22:27:32 1996 Jim Blandy <jimb@totoro.cyclic.com>
1827 * mapping.scm (hash-table-mapping): Explicitly request that
1828 make-vector fill new vectors with '(); this will make it easier to
1829 port Guile Scheme code to other Schemes.
1830 * boot-9.scm (make-print-style, make-print-table): Same.
1832 Sun Oct 6 03:54:59 1996 Gary Houston <ghouston@actrix.gen.nz>
1834 * boot-9.scm (load): rewritten again.
1835 Append "." to the default %load-path.
1836 (feature?): new function: checks for a symbol in the features list.
1837 (module-local-variable): remove apparently useless (caddr (list m v
1839 (%load-announce): minor formatting change.
1840 (file-exists?): use access? if posix is featured.
1841 (file-is-directory?): use stat if i/o-extensions is featured.
1842 (try-module-autoload module-name): use file-exists? before
1845 Sat Oct 5 18:54:03 1996 Mikael Djurfeldt <mdj@kenneth>
1847 * boot-9.scm: Added conditional loading of threads.scm.
1849 * threads.scm: New file. Modified from the Cygnus-r0.3
1852 * boot-9.scm (error-catching-loop): Added handling of key
1855 * boot-9.scm: Name change %%bad-throw --> bad-throw.
1857 Wed Oct 2 23:38:44 1996 Jim Blandy <jimb@totoro.cyclic.com>
1859 * boot-9.scm (make-record-type, record-constructor): Don't assume
1860 the empty list is false when parsing the argument list.
1862 Mon Sep 30 22:15:50 1996 Jim Blandy <jimb@totoro.cyclic.com>
1864 * boot-9.scm (signal-handler): Clean up logic.
1866 * boot-9.scm (load): Assume %load-path is always bound.
1868 Sat Sep 28 00:15:37 1996 Gary Houston <ghouston@actrix.gen.nz>
1870 * boot-9.scm (error): replace another throw with scm-error. Throw
1871 to 'misc-error instead of 'error (no need to distinguish these.)
1872 Don't set up 'error as a key.
1873 Set up regex-error as a key, if regex is available.
1874 (signal-handler): use scm-error, not throw.
1876 (%try-load, try-load-with-path, %load, load-with-path,
1877 basic-try-load-with-path, basic-load-with-path,
1878 try-load-module-with-path,load-module-with-path): deleted, since
1879 they seem redundant.
1880 (try-load): define using %try-load, not try-load-with-path.
1881 (load): rewritten. load tries to open the file directly and
1882 with a .scm extension before searching the library directories
1883 (should "." be added to %load-path? then load could still open
1884 directly files starting with "/").
1885 (try-module-autoload): use load, not load-with-path.
1886 (%load-indent): deleted, -2 was causing errors.
1888 (%read-sharp): use port-line, not line-number.
1890 Fri Sep 27 16:23:51 1996 Jim Blandy <jimb@totoro.cyclic.com>
1892 * boot-9.scm (%%bad-throw): Delete definition. 1) It's very
1893 straightforward to provide the equivalent functionality using
1894 (catch #t ...), so there's no need for the extra complexity. 2)
1895 Outside the context of a read-eval-print loop (which Guile should
1896 not require) it's not clear we should do anything more complicated
1897 than print an error and exit; the user or REPL can establish
1898 something better if it wants. 3) In that case, it's much more
1899 robust to just do it in the C code.
1901 Tue Sep 24 06:53:04 1996 Gary Houston <ghouston@actrix.gen.nz>
1903 * boot-9.scm (%try-load): define using primitive-load. Previously
1904 %try-load itself was the primitive.
1905 (load-with-path): use scm-error instead of %load-announce-lossage.
1906 Errors are thrown to 'misc-error instead of 'could-not-load.
1907 (%load-announce-lossage): deleted.
1909 Mon Sep 23 00:16:31 1996 Mikael Djurfeldt <mdj@kenneth>
1911 * boot-9.scm (warn, scm-style-repl): Use C printer instead of `print'.
1912 (make-record-type type-name fields): Temporarily remove support
1913 for printing of records (not possible yet with C printer).
1915 Fri Sep 20 00:24:27 1996 Gary Houston <ghouston@actrix.gen.nz>
1917 * boot-9.scm (file-exists?, file-is-directory): catch only
1918 system-error, not every kind of error.
1919 (scm-error): new procedure.
1921 Thu Sep 19 16:02:46 1996 Jim Blandy <jimb@totoro.cyclic.com>
1923 * boot-9.scm: Formatting tweaks.
1925 Wed Sep 18 09:07:37 1996 Gary Houston <ghouston@actrix.gen.nz>
1927 * boot-9.scm (%%handle-system-error key): remove the code for
1928 SCM-style errors. handle the case that an unexpected number
1929 of args are supplied.
1930 (%%system-errors): removed.
1931 (error): redefine using a throw with key and 4 args.
1932 ('error): associate 'error, 'error-signal keys with
1933 %%handle-system-error.
1934 (%%default-error-handler): removed.
1935 (signal-handler): throw with 4 args and use the error-signal key.
1936 Create an error message instead of using numerical codes.
1937 (%%bad-throw): call error instead of throw if key not found.
1939 Tue Sep 17 04:11:28 1996 Gary Houston <ghouston@actrix.gen.nz>
1941 * boot-9.scm: initialize new error keys (see libguile/ChangeLog).
1942 (%%handle-system-error key): check subr is not #f before printing.
1943 Recognize %s (embed an argument using "display") and
1944 %S (embed an argument using "write").
1946 Sun Sep 15 03:55:35 1996 Gary Houston <ghouston@actrix.gen.nz>
1948 * boot-9.scm (%%handle-system-error key): set args and rest to
1949 the empty list if they are #f.
1950 Initialize out-of-range as an error key.
1952 Sat Sep 14 03:41:15 1996 Gary Houston <ghouston@actrix.gen.nz>
1954 * PLUGIN/REQ: remove the "ice-9 lgh" line which causes a cycle.
1956 * boot-9.scm: remove leading %% from references to '%%system-error.
1957 (%%handle-system-error): don't pass all the thrown arguments when
1958 aborting, just the key and subr.
1959 Remove the code to "Install default handlers for built-in errors."
1960 Remove the definition of the syserror procedure.
1961 Associate 'numerical-overflow with default handler.
1963 Fri Sep 13 04:58:11 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1965 * boot-9.scm: Name change: value-ref --> local-ref
1966 resolved-ref --> nested-ref Motivation: conformance to the other
1967 dictionary operators: list-ref operates on list, vector-ref
1968 operates on vector, nested-ref operates on nested namespace,
1969 local-ref operates on the local nested namespace.
1971 Sat Sep 7 06:44:47 1996 Gary Houston <ghouston@actrix.gen.nz>
1973 * boot-9.scm (%%handle-system-error): recognise errors thrown
1974 by lgh-error (fill-message etc.)
1975 (fill-message): check first whether args is null.
1976 (fill-message): bug fix and check that args is a list.
1978 Thu Sep 5 11:33:41 1996 Jim Blandy <jimb@floss.cyclic.com>
1980 * boot-9.scm: %load-path is initialized in C code now.
1981 (implementation-vicinity, parse-path): Deleted, along with code to
1982 initialize %load-path.
1984 * boot-9.scm (in-vicinity): If the vicinity doesn't end with a
1985 "/", use one to separate it from the file.
1987 Thu Aug 29 23:05:11 1996 Thomas Morgan <tmorgan@gnu.ai.mit.edu>
1989 * boot-9.scm (%load-path): Add the site directory.
1990 Add the directory named after the version number.
1991 Prepend the version number to the other directories in the path.
1992 Simplify by mapping the common prefix onto each item.
1993 * Makefile.in (datadir, pkgdatadir, pkgverdatadir, subpkgdatadir,
1994 sitedatadir): New definitions.
1995 (libparent, libdir, install_path): Replaced by above.
1996 (install): Create the above directories.
1997 Put the source files into subpkgdatadir.
1998 (uninstall): Remove the above directories.
2000 Thu Aug 29 21:48:47 1996 Jim Blandy <jimb@floss.cyclic.com>
2002 Don't use the PLUGIN system to gather information for the
2003 Makefile's distribution and installation targets; just put it all
2004 in the Makefile directly.
2005 * PLUGIN/this.configure (scm_files, aux_files): Remove sections
2007 * configure.in: Remove code that gets and substitutes scm_files and
2009 * Makefile.in (scm_files, aux_files): Write out the list of files
2010 here, where people expect to find them.
2012 Fri Aug 23 06:44:36 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
2014 * boot-9.scm: Preliminary solution: optionally load the debug
2015 module. Changed "gls" to "guile1.0b3".
2017 * debug.scm: New file: debug extensions.
2019 Wed Aug 21 13:06:56 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
2021 * boot-9.scm (print-vector): Renamed weak-hash-table? -->
2022 weak-key-hash-table?. (Again!)
2024 Tue Aug 20 07:31:39 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
2026 * boot-9.scm (print-vector, macro-table, xformer-table):
2027 Renamed weak-hash-table --> weak-key-hash-table.
2029 * poe.scm (funcq-memo): Renamed weak-hash-table -->
2030 weak-key-hash-table.
2032 Sat Aug 3 06:16:35 1996 Gary Houston <ghouston@actrix.gen.nz>
2034 * boot-9.scm (*null-device*): global constant from goonix.
2035 (move->fdes): adjusted for boolean primitive-move->fdes. return
2036 the modified port, always set revealed count to 1 (SCSH compatible).
2037 (release-port-handle port): from goonix (SCSH compatible).
2038 (%open-file): removed.
2039 (open-input-file, open-output-file, file-exists?, file-is-directory?):
2040 modified for open-file change (does not return #f).
2042 Thu Aug 1 02:52:42 1996 Jim Blandy <jimb@totoro.cyclic.com>
2044 * Makefile.in (dist-dir): New target for new dist system.
2045 (manifest): Deleted.
2046 * PLUGIN/this.configure (aux_files): Removed PLUGIN; it's a
2047 directory, and needs special treatment in the dist-dir target.
2049 Thu Aug 1 09:00:21 1996 Gary Houston <ghouston@actrix.gen.nz>
2051 * boot-9.scm: remove the wrappers for '%' system primitives,
2052 now that they throw errors directly.
2053 remove make-simple-wrapper and similar functions.
2054 protect a call to getenv which may now throw an exception.
2056 Wed Jul 31 23:44:42 1996 Gary Houston <ghouston@actrix.gen.nz>
2058 * boot-9.scm (false-if-exception): new macro.
2060 Fri Apr 19 13:53:08 1996 Tom Lord <lord@beehive>
2062 * The more things change...