1 1998-06-15 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3 * emacs.scm (emacs-load): New feature: Eval in specified module.
5 1998-06-14 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
7 * readline.scm: Typo in regex module name.
9 1998-06-13 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
11 * readline.scm (apropos-completion-function): regexp-quote text to
14 1998-06-11 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
16 * debug.scm, emacs.scm: Bugfix: Treat `the-last-stack' as a fluid.
18 1998-06-09 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
20 * boot-9.scm: Check that (current-input-port) is a tty before
21 enabling readline. (Thanks to Michael N. Livshin.)
23 1998-06-07 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
25 * boot-9.scm (use-syntax): Turned into a macro inorder to be
26 similar in use to `use-modules'.
27 Example: (use-syntax (ice-9 syncase)) will 1. load the module
28 (ice-9 syncase), and, 2. install the procedure `syncase' as eval
30 (internal-use-syntax): New procedure.
31 (process-define-module): Use `internal-use-syntax'.
33 1998-05-19 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
35 * Makefile.am (ice9_sources): Add emacs.scm.
37 1998-05-13 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
39 * readline.scm: Use the new readline facilities: Add the
40 possibility to control input and output ports; Add apropos
43 * boot-9.scm: Antirevert Jim's readline code which he reverted
44 19971027 and adapt it to the current readline interface.
46 * boot-9.scm (top-repl): Only enable readline if not using the
47 Emacs interface; Only use repl prompt when using the readline port
48 from repl-read. (We don't want to see it when calling `read'.)
50 * boot-9.scm (remove-hook!): Parenthesis bug.
52 1998-05-11 Mikael Djurfeldt <mdj@kenneth>
54 * boot-9.scm: Load readline module if readline is present.
56 * readline.scm (apropos-completion-function): New procedure:
57 Symbolic completion. (Thanks to Andrew Archibald!)
59 1998-04-22 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
61 * boot-9.scm (process-define-module): Added keyword use-syntax.
63 1998-04-19 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
65 * nonblocking.scm: Removed. libguile is now inherently
66 nonblocking through the use of scm_internal_select.
68 * emacs.scm: Removed use of nonblocking.scm.
70 * gwish.scm, gtcl.scm: Removed. tcltk.scm has made these
73 1998-04-15 Mikael Djurfeldt <mdj@nada.kth.se>
75 * runq.scm (runq-control): Corrected spelling of enqueue!.
76 (Thanks to Karl M. Hegbloom.)
78 1998-03-30 Mikael Djurfeldt <mdj@nada.kth.se>
80 * boot-9.scm: Added new run-time option interface eval-options.
82 1998-03-28 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
84 * boot-9.scm (remove-hook!): New macro. (Thanks to Maciej
87 1998-01-30 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
89 * threads.scm: Added simple error and signal handler.
90 (make-thread, begin-handler): Use this handler. The most
91 important effect of this is that signals get unmasked.
92 Previously, when a signal was thrown signals remained masked
93 (signals get masked when a signal is taken) which influenced other
96 1998-01-01 Tim Pierce <twp@skepsis.com>
98 A better fix to the SLIB identity problem -- thanks to Marius Vollmer.
99 * slib.scm (identity): Unmake public.
100 (slib:eval): Evaluate inside `slib-module'.
102 1997-12-24 Tim Pierce <twp@skepsis.com>
104 * boot-9.scm: Doc fix.
106 * slib.scm (identity): Made public.
107 (home-vicinity): New function (from SLIB/Template.scm).
109 1997-12-13 Tim Pierce <twp@skepsis.com>
111 * * boot-9.scm (read-line): Rewritten to call %read-line for
112 improved speed. Minor user-visible changes: the new functions are
113 hardwired to treat the LFD character as signifying end-of-line, so
114 changing `scm-line-incrementors' will no longer affect the
115 behavior of read-line. On platforms which do not represent
116 end-of-line with a LFD character, read-line should behave more
117 like native line-processing facilities, but there is still a ways
120 Sat Nov 29 01:24:46 1997 Mikael Djurfeldt <mdj@kenneth>
122 * boot-9.scm (error-catching-loop, save-stack): `the-last-stack'
125 1997-11-28 Tim Pierce <twp@skepsis.com>
127 * boot-9.scm (find-and-link-dynamic-module): If a module directory
128 contains a .la file (a libtool support file), attempt to extract
129 the shared library name from that file. If the .la file does not
130 exist, try to link against a .so file. Libtool-generated compiled
131 modules should load more cleanly in Guile now.
132 (try-using-libtool-name, try-using-sharlib-name): New functions.
134 Sun Nov 9 06:10:59 1997 Gary Houston <ghouston@actrix.gen.nz>
136 * boot-9.scm (set-batch-mode?!, batch-mode?): initialize more
137 usefully so they will work from a script.
139 1997-10-31 Marius Vollmer <mvo@zagadka.ping.de>
141 * boot-9.scm (inherit-print-state): Moved definition to the
142 neighborhood of the record code.
144 Mon Oct 27 02:05:49 1997 Jim Blandy <jimb@totoro.red-bean.com>
146 * boot-9.scm: Revert changes to this file from Oct 23. It turns
147 out to interact badly with the Emacs support and the Tcl/Tk
148 support. It's not a high enough priority at the moment to be
149 worth fixing. I'm leaving the other readline support in, though.
151 Sat Oct 25 14:23:22 1997 Jim Blandy <jimb@totoro.red-bean.com>
153 * Makefile.am: Include readline.scm in the list of files to be
154 installed, so Guile can find it for interactive use.
155 * Makefile.in: Regenerated.
157 Thu Oct 23 01:00:33 1997 Jim Blandy <jimb@totoro.red-bean.com>
159 Add support for readline function.
160 * readline.scm: New module.
161 * boot-9.scm (repl-reader): New function.
162 (scm-style-repl): Call repl-reader, instead of doing the reading
163 ourselves. Remove repl-report-reset; it was never used for
165 (top-repl): If we've got the readline primitives, then redefine
166 repl-reader to use them.
167 If we've got the readline primitives, import the readline module.
169 * ls.scm (ls, lls): Don't assume (eq? #f '()).
171 Wed Oct 22 18:26:57 1997 Jim Blandy <jimb@totoro.red-bean.com>
173 * calling.scm, common-list.scm, ls.scm, q.scm, runq.scm,
174 string-fun.scm: Added copyright notices; reformatted.
176 Thu Oct 9 05:44:00 1997 Gary Houston <ghouston@actrix.gen.nz>
178 * expect.scm: (expect-regexec): new procedure, use it in
179 expect-strings to fix the => syntax under the new regex system.
180 (top): include regex module in define-module statement.
182 Wed Oct 8 03:16:01 1997 Gary Houston <ghouston@actrix.gen.nz>
184 * (error-catching-loop): new local variable "interactive". if
185 #f, abort terminates the process.
186 (set-batch-mode?!, batch-mode?): new closures, defined in
187 error-catching-loop. the names are from scsh.
189 1997-10-06 Marius Vollmer <mvo@zagadka.ping.de>
191 * boot-9.scm (inherit-print-state): If NEW-PORT contains a
192 print-state, throw it away.
194 Fri Oct 3 12:00:00 Mikael Djurfeldt <mdj@nada.kth.se>
196 * boot-9.scm (struct-layout): Use `vtable-index-layout' instead of
199 Thu Oct 2 12:00:00 Mikael Djurfeldt <mdj@nada.kth.se>
201 * boot-9.scm (struct-printer, make-struct-printer,
202 set-struct-printer-in-vtable!, *struct-printer*): Removed.
203 (record-type-vtable, make-record-type): Don't use make-struct-printer.
204 (record-type-vtable): User fields "prpr" (printer is no longer a
206 (record-type-name, record-type-fields): Decreased slot index by
207 one; Use `vtable-offset-user'.
209 Thu Oct 2 12:00:00 Marius Vollmer <mvo@zagadka.ping.de>
211 * boot-9.scm (inherit-print-state): New experimental function.
213 Tue Sep 30 13:12:48 1997 Jim Blandy <jimb@totoro.red-bean.com>
215 Suggestion and script from Maciej Stachowiak:
216 * boot-9.scm: Split off modules into separate, autoloadable files.
217 This reduces startup time from 10.5s to 5.5s (user cpu).
218 * calling.scm, common-list.scm, ls.scm, q.scm, runq.scm,
219 string-fun.scm: New files, containing stuff that used to be in
221 * Makefile.am (ice9_sources): List new files here, for
222 distribution and installation.
223 * Makefile.in: Regenerated.
225 Mon Sep 29 23:53:55 1997 Jim Blandy <jimb@totoro.red-bean.com>
227 * Makefile.in: Regenerated with automake 1.2c.
229 Mon Sep 29 03:21:24 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
231 * slib.scm (slib:load): slib:load first tries to load the file
232 named NAME, then NAME.scm. On error, report the error occuring at
233 the first attempt (NAME) rather than the second (NAME.scm).
235 * boot-9.scm: Bugfix: Hard-solder the print-option procedure into
236 the make-options macro so that we needn't refer to a global
239 Sun Sep 28 21:40:24 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
241 * debug.scm: Moved options interface procedures to boot-9.scm.
243 * boot-9.scm: Define options interface procedures here instead.
245 Sat Sep 27 20:19:20 1997 Jim Blandy <jimb@totoro.red-bean.com>
247 * boot-9.scm (separate-fields-discarding-char,
248 separate-fields-after-char, separate-fields-before-char): Call
249 continuation function, RET, as advertised: with each separated
250 field a separate argument.
252 * Makefile.in: Regenerated with automake 1.2a.
254 Sat Sep 20 14:23:53 1997 Mikael Djurfeldt <mdj@kenneth>
256 * slib.scm (slib:load): Export.
258 * boot-9.scm (in-vicinity): Bugfix: Don't add "/" to an empty
262 Thu Sep 18 01:24:31 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
264 * r4rs.scm (apply): Set name property to 'apply.
266 Tue Sep 16 22:09:50 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
268 * boot-9.scm (keyword->symbol, display-usage-report): Changed
269 length --> string-length. (Thanks to Aleksandar Bakic.)
270 (separate-fields-discarding-char, separate-fields-after-char,
271 separate-fields-before-char): Bugfix from Maciej Stachowiak
272 <mstachow@mit.edu>. Thanks!
273 (try-module-linked): Try to find module among those already
275 (try-module-dynamic-link): Removed the first test which
276 corresponds to a call to `try-module-linked'.
277 (resolve-module): Resolve modules in this order: 1. Already
278 registered modules (for example those which have been statically
279 linked), 2. Try to autoload an .scm-file, 3. Try to dynamically
282 Mon Sep 15 23:39:54 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
284 * boot-9.scm (iota): Renamed list-reverse! --> reverse!
286 Thu Sep 11 02:31:38 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
288 * session.scm (name): New procedure: Gives name of object.
289 (source): New procedure: Gives source of object.
291 Wed Sep 10 20:12:45 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
293 * * boot-9.scm (primitive-macro?): New procedure.
295 * slib.scm: Added hack which transfers syntactic information from
296 the builtin variable `define' to the slib version if module (ice-9
297 syncase) has been loaded. This is necessary to get correct
298 expansion inside the slib module.
300 * psyntax.ss (build-let, build-named-let): New output
302 (build-lexical-var): Seed gensym with symbolic name.
303 (self-evaluating?): Add keywords among self-evaluating types.
304 (let): New core form.
305 (if): Removed from core language.
306 (or, and, let, cond): Removed syntactic definitions.
307 (sc-expand3): New procedure: Expander which takes optional mode
308 and eval-syntactic-expanders-when arguments.
310 * syncase.scm (psyncomp): New procedure: Recompiles psyntax.pp.
311 Should be used inside the (ice-9 syncase) module with (use-syntax
312 syncase) and with the current directory containing the psyntax.ss
314 Added hack to transfer syntactic information from the builtin
315 variable `define' to the slib version if module (ice-9 slib) has
318 Fri Sep 5 05:47:36 1997 Mikael Djurfeldt <mdj@faun.nada.kth.se>
320 * syncase.scm (sc-interface, sc-expand): Removed hook setup.
321 (syncase): Publish syntax transformer to be used with
323 (sc-macro): Use this as the value when publishing macros.
325 * boot-9.scm (module-type): Added `transformer'.
326 (make-module): Modified initialization.
327 (module-transformer, set-module-transformer!): Selector and
328 mutator for module-associated transformer.
329 (set-current-module): Use module-transformer to set
330 `scm:eval-transformer'.
331 (module-use!): Previous change reverted.
332 * (use-syntax): New function: Install a transformer in current
334 (sc-interface, sc-expand): Removed! :)
336 Fri Sep 5 03:09:09 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
338 * emacs.scm (emacs-load): Added new parameter `module'.
340 * syncase.scm (putprop, getprop): Modified to use the object
341 properties of the variable object corresponding to the symbol;
342 This way we can ride on the mechanisms of the module system.
343 Changed `builtin-variable' calls to `define-public' calls.
344 Setup the hooks sc-expand and sc-interface.
346 * boot-9.scm (sc-interface, sc-expand): New builtin variables.
347 (set-current-module): Switch to and from sc-expand as
348 scm:eval-transformer when going into and out of modules using
350 (module-use!): Set scm:eval-transformer to sc-expand when adding
351 the syncase interface.
353 Thu Sep 4 14:57:04 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
355 * syncase.scm (putprop): Temporary fix which publishes new syntax
356 globally (the old behaviour was complex and connected to the inner
357 workings of the current module system).
359 Wed Sep 3 21:29:13 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
361 * psyntax.ss: Updated.
362 psyntax.pp: Bugfix: Previous version had some leading "t":s cut
365 Tue Sep 2 00:26:42 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
367 * boot-9.scm (gensym): Removed (replaced by primitive).
368 (obarray-gensym): Rewritten to use `gensym'.
369 (gentemp): Rewritten to use `gensym'.
371 Mon Sep 1 20:08:32 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
373 * gtcl.scm (make-tcl-binder): Rewritten to choose bindings
374 according to the following priorities:
375 1. tcl bindings which are present in override-scheme-list
376 2. bindings from the-scm-module
378 This way the gtcl module can occur first in the use-list without
379 disabling the scheme interpreter.
380 (new-interpreter): New function.
382 * gwish.scm: Moved initialization code for the-interpreter to
383 gtcl.scm; Moved name space cleaning code to gtcl.scm and rewrote
384 it; Call `new-interpreter'; Don't :use-module (guile).
386 Thu Aug 28 23:48:53 1997 Jim Blandy <jimb@totoro.red-bean.com>
388 * Makefile.in: Regenerated.
390 Wed Aug 27 11:35:09 1997 Jim Blandy <jimb@totoro.red-bean.com>
392 * Makefile.in: Regenerated, so it uses "tar", not "gtar".
394 Mon Aug 25 22:00:44 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
396 * emacs.scm (object->string, format, error-args->string): New
398 (emacs-frame-eval): Reworked.
400 Mon Aug 25 16:15:55 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
402 * session.scm (apropos-internal): Musn't initialize symbol
403 accumulator with a constant pair. That led to mutation of the
406 Sun Aug 24 01:03:10 1997 Mikael Djurfeldt <mdj@kenneth>
408 * session.scm (vector-for-each): Removed.
409 (apropos): vector-for-each --> array-for-each.
410 (apropos-internal): New function. Return list of accessible
411 symbols matching regexp.
413 * debug.scm (frame-number->index): New function. Convert frame
414 number (as displayed in the backtrace) to frame index (to be used
417 * emacs.scm (emacs-load): New arguments: interactivep: when
418 non-false, send back results to Emacs; colnum: Column number;
419 Use modules (ice-9 debug) and (ice-9 session);
420 (no-stack, no-source): New simple-actions;
421 (result-to-emacs): New procedure. Sends data to Emacs via the
423 (get-frame-source, emacs-select-frame, emacs-frame-eval,
424 emacs-symdoc): New procedures.
426 Wed Aug 20 13:21:11 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
428 * emacs.scm (emacs-load): Adjust stack narrowing.
429 (whitespace-chars): Include #\np.
431 * syncase.scm: Also turn off debugging evaluator and recording of
432 procedure names during loading of psyntax.pp.
434 * psyntax.pp: Removed leading blanks => 800K -> 100K.
436 Tue Aug 19 02:39:41 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
438 * syncase.scm: Don't tamper with debug mode setting when enabling
439 macros. Instead cut the stack with start-stack.
440 Load psyntax.pp with recording of positions turned off.
442 * psyntax.pp, psyntax.ss (quasiquote): Changed fx= --> =.
444 * * syncase.scm: New file: Guile-adaption for syntax-case macros.
445 psyntax.pp, psyntax.ss: Syntax-case macros, portable version 2 by
446 R. Kent Dybvig, Oscar Waddell, Bob Hieb and Carl Bruggeman
448 Mon Aug 18 21:58:25 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
450 * * session.scm: New file: Session support.
451 (apropos): New procedure: List bindings given regexp.
453 Sat Aug 16 18:44:24 1997 Gary Houston <ghouston@actrix.gen.nz>
455 * boot-9.scm: define tms accessors: clock, utime, stime, cutime,
458 Thu Aug 14 19:55:37 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
460 * emacs.scm (emacs-load): Something has changed in the reader so
461 that we now should set the port line count to the specified value
462 (linum) instead of (- linum 1).
464 * slib.scm (slib:load): Use load-from-path instead of
465 primitive-load-path so that backtraces get narrowed properly at
468 * boot-9.scm (top-repl): Save stack already in signal handler in
469 order to narrow it correctly.
470 (save-stack): Adjust narrowing tag for the top of load-stacks.
472 Tue Jul 29 01:18:08 1997 Gary Houston <ghouston@actrix.gen.nz>
474 * boot-9.scm (move->fdes, dup->port): use dup->fdes, not primitive-dup.
475 (dup->fdes): deleted, now done in C.
477 Sat Jul 26 08:00:42 1997 Gary Houston <ghouston@actrix.gen.nz>
479 * boot-9.scm (setenv): new procedure, scsh compatible.
481 Sat Jul 26 21:30:10 1997 Marius Vollmer <mvo@zagadka.ping.de>
483 * boot-9.scm (with-fluids): New macro to go with the
484 builtin `with-fluids*'.
486 Thu Jul 24 04:28:11 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
488 * slib.scm (install-require-module): In newer versions of slib
489 *catalog* is #f until the first access. Therefore we call
490 require:provided? for a random feature if *catalog* is #f.
492 Wed Jul 23 20:13:04 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
494 * boot-9.scm: If using emacs interface, enable backtraces
497 Mon Jul 21 06:45:45 1997 Gary Houston <ghouston@actrix.gen.nz>
499 * boot-9.scm (dup->port, dup->inport, dup->outport, dup->fdes,
500 dup, fdes->inport, fdes->outport, port->fdes): new procedures.
501 (duplicate-port): was a C primitive, now it's here.
502 (move->fdes): allow the first argument to be a file descriptor.
503 Return the modified port or file descriptor (was unspecified.)
505 Fri Jul 11 00:13:43 1997 Jim Blandy <jimb@floss.red-bean.com>
507 Changes to compile under gnu-win32, from Marcus Daniels:
508 * boot-9.scm (load-user-init): If HOME is unset, provide
511 * boot-9.scm (define-public): Changed to accomodate Hobbit.
513 Tue Jun 24 00:31:47 1997 Jim Blandy <jimb@floss.red-bean.com>
515 * boot-9.scm, debug.scm, hcons.scm, lineio.scm, mapping.scm,
516 poe.scm, slib.scm, tags.scm, threads.scm: Use normal list
517 notation, instead of #/ notation.
519 * expect.scm (expect-strings): Pass regexp/newline flag to
522 Mon Jun 23 16:13:38 1997 Jim Blandy <jimb@floss.red-bean.com>
524 Fix inconsistencies in parsing of #/ style lists.
525 * boot-9.scm (read-path-list-notation): New function.
526 (parse-path-symbol): Deleted. Replaced by above.
527 Plug in read-path-list-notation as the parser for #/ lists,
528 instead of the anonymous lambda form calling parse-path-symbol.
529 (Thanks to Maurizio Vitale.)
531 * boot-9.scm (make-list): Remove the definition of this function
532 from the (ice-9 common-list) module; make the `init' argument
533 optional in the scm module's definition, to match the deleted
534 definition. Harmony reigneth? (Thanks to Bernard URBAN.)
536 Sun Jun 22 18:33:17 1997 Jim Blandy <jimb@floss.red-bean.com>
538 Try to detect when people are using one version of libguile and a
539 different version of ice-9. People have been skewing things and
540 sending in bug reports.
541 * version.scm.in: New file, which the configure script munges to
542 produce version.scm, which contains the ice-9 config stamp.
543 * boot-9.scm: Compare the libguile and ice-9 config stamps;
544 display a warning if the two are different.
545 * Makefile.am: Install version.scm, but don't distribute it.
546 Distribute version.scm.in, but don't install it.
547 * Makefile.in: Regenerated.
549 Thu Jun 19 21:01:16 1997 Jim Blandy <jimb@floss.red-bean.com>
551 * slib.scm (slib:warn): Alias for WARN function.
553 Fri Jun 13 00:32:04 1997 Jim Blandy <jimb@floss.red-bean.com>
555 * boot-9.scm (struct-printer): Fix off-by-one error in range
556 check. Correctly check for struct printer tag.
558 * expect.scm: Turn this into a module, (ice-9 expect).
559 (expect-port, expect-timeout, expect-timeout-proc,
560 expect-eof-proc, expect-char-proc, expect, expect-strings,
561 expect-select): Make these public definitions.
562 (expect-strings): Use make-regexp and regexp-exec, instead of
563 regcomp and regexec. We've omitted the REG_NEWLINE flag; hope
566 * boot-9.scm (with-regexp-parts): Comment this out. It has no
567 users in the core, and relies on mildly hairy details of the old
570 * test.scm: Re-enable tests asserting that '() is true, and not a
571 boolean. This stuff has been true for a while.
573 * boot-9.scm (ipow-by-squaring, butlast): Fix uses of outdated
576 * boot-9.scm (with-excursion-getter-and-setter, q-rear): Doc
579 Wed Jun 11 00:31:40 1997 Jim Blandy <jimb@floss.red-bean.com>
581 * Makefile.in: Regenerated after xtra_PLUGIN_guile_libs change in
584 Fri Jun 6 14:37:18 1997 Marius Vollmer <mvo@zagadka.ping.de>
586 * boot-9.scm (struct-printer): Bugfix: Check the layout of the
587 vtable and not the one of the struct.
589 Wed Jun 4 23:27:16 1997 Marius Vollmer <mvo@zagadka.ping.de>
591 * boot-9.scm (struct-layout, %struct-printer-tag, struct-printer,
592 make-struct-printer, set-struct-printer-in-vtable!): New bindings
593 to support printing of structures.
594 (record-type-vtable, make-record-type): Add slot to hold printing
595 function and initialize it with something appropriate. Removed
596 commented out printing code.
597 (record-type-name, record-type-fields): Adjusted slot offsets.
598 (%print-module): Reduce argument list to "mod" and "port".
600 Tue Jun 3 17:04:18 1997 Jim Blandy <jimb@totoro.cyclic.com>
602 * slib.scm (identity): New function, used by SLIB.
604 Sat May 31 18:57:12 1997 Gary Houston <ghouston@actrix.gen.nz>
606 * boot-9.scm: signal-handler, alarm-thunk: removed.
607 don't define ticks-interrupt etc.
608 top-repl: install signal handlers for SIGINT, SIGFPE, SIGSEGV, SIGBUS
609 during call to scm-style-repl.
611 Fri May 30 18:08:10 1997 Jim Blandy <jimb@floss.cyclic.com>
613 * slib.scm (slib:load): Use primitive-load-path instead of
614 basic-load. This is probably wrong, but hopefully the entire
615 source access system will be revised soon anyway, and this will
616 make require behave more like Emacs Lisp's require. If this
617 breaks something, please let me know. Maybe this is real dumb.
619 Thu May 29 02:36:48 1997 Jim Blandy <jimb@floss.cyclic.com>
621 * regex.scm: Add a module declaration. Use DEFINE-PUBLIC everywhere.
622 * boot-9.scm: If the `regex' feature is present, use the module
625 Tue May 27 22:48:14 1997 Tim Pierce <twp@twp.tezcat.com>
627 * regex.scm: New file.
628 * Makefile.am (subpkgdata_DATA): Add regex.scm.
629 * Makefile.in: Regenerated.
631 Mon May 26 17:24:48 1997 Jim Blandy <jimb@totoro.cyclic.com>
633 * COPYING, boot-9.scm, debug.scm, emacs.scm, expect.scm, gtcl.scm,
634 gwish.scm, hcons.scm, lineio.scm, mapping.scm, nonblocking.scm,
635 oldprint.scm, poe.scm, r4rs.scm, source.scm, tags.scm, test.scm,
636 threads.scm: New address for FSF.
638 Fri May 16 04:09:45 1997 Jim Blandy <jimb@floss.cyclic.com>
640 * debug.scm: Update copyright years; this file has been worked on
643 Thu May 15 07:56:08 1997 Gary Houston <ghouston@actrix.gen.nz>
645 * expect.scm: use gettimeofday instead of get-internal-real-time
646 and use a floating point timeout when calling select. Untested,
647 since the regex library is currently AWOL.
649 Wed May 14 21:00:30 1997 Jim Blandy <jimb@floss.cyclic.com>
651 * boot-9.scm (eval-string): Function deleted; it was already
652 implemented in C, so there's no point in making a divergable copy
655 Tue May 13 16:40:06 1997 Jim Blandy <jimb@floss.cyclic.com>
657 * Makefile.in: Regenerated, using automake-1.1p.
659 Tue May 13 16:40:06 1997 Jim Blandy <jimb@floss.cyclic.com>
661 * Makefile.in: Regenerated, using automake-1.1p.
663 Tue May 13 02:48:49 1997 Gary Houston <ghouston@actrix.gen.nz>
665 * boot-9.scm (error-catching-loop): don't read a line from
666 current input when quit is encountered, the previous change
669 Mon May 12 19:00:21 1997 Jim Blandy <jimb@floss.cyclic.com>
671 * boot-9.scm (scm-style-repl): After reading an expression,
672 consume any trailing newline (perhaps preceded by whitespace), to
673 avoid screwing up GDB. More detail in comments.
675 Mon May 5 13:18:38 1997 Jim Blandy <jimb@floss.cyclic.com>
677 * Makefile.am (ETAGS_ARGS): New variable, since we're not treating
678 the Scheme code like code yet.
679 * Makefile.in: Resrac,husrched.
681 Wed Apr 30 15:25:15 1997 Marius Vollmer <mvo@zagadka.ping.de>
683 * boot-9.scm (link-dynamic-module): Do not catch errors from
684 dynamic-link and dynamic-call. When the shared library exists it
685 is now assumed to be suitable for a dynamic C module.
687 Fri Apr 25 21:21:35 1997 Marius Vollmer <mvo@zagadka.ping.de>
689 * boot-9.scm (process-use-modules): New function to support the
691 (use-modules): throw an error iff one of the requested modules
694 Tue Apr 29 06:54:46 1997 Gary Houston <ghouston@actrix.gen.nz>
696 * boot-9.scm: don't define timer-thunk or gc-thunk.
698 Sun Apr 27 17:56:09 1997 Jim Blandy <jimb@floss.cyclic.com>
700 * aclocal.m4: Removed; unnecessary, given changes of Apr 24.
702 * Makefile.am (subpkgdatadir): Use "ice-9" instead of "@module@";
703 we're not using AM_INIT_GUILE_MODULE any more.
704 * Makefile.in: Regeneratitetedrerd.
706 Thu Apr 24 01:33:33 1997 Jim Blandy <jimb@floss.cyclic.com>
708 Get 'make dist' to work again.
709 * Makefile.am (EXTRA_DIST): Remove PLUGIN files.
710 * Makefile.in: Regenerated, like two tons of fleas.
712 Changes for reduced Guile distribution: one configure script,
714 * configure.in, configure: Removed.
715 * Makefile.in: Regenerated.
717 Sat Apr 19 08:03:50 1997 Jim Blandy <jimb@floss.cyclic.com>
719 * boot-9.scm (eval-string, command-line, load-user-init): New
722 Sat Apr 12 08:27:05 1997 Gary Houston <ghouston@actrix.gen.nz>
724 * boot-9.scm (log10): defined.
726 Tue Apr 1 17:46:49 1997 Gary Houston <ghouston@actrix.gen.nz>
728 * expect.scm (expect-select): correct the millisecond timeout
729 arithmetic (from Marko.Kohtala@ntc.nokia.com).
731 Mon Mar 31 03:23:19 1997 Gary Houston <ghouston@actrix.gen.nz>
733 * boot-9.scm (open-input-pipe, open-output-pipe): defined here
734 instead of in libguile.
735 (tm:sec etc.) new accessors for broken-down time.
736 (set-tm:sec etc.) new setters for broken-down time.
738 Thu Mar 27 05:06:00 1997 Gary Houston <ghouston@actrix.gen.nz>
740 * boot-9.scm (netent:addrtype, servent:port): added missing
742 (netent:net, servent:proto): repaired.
743 (utsname:sysname etc.): new accessors for uname.
745 Tue Mar 25 03:04:03 1997 Gary Houston <ghouston@actrix.gen.nz>
747 * boot-9.scm (sockaddr:fam, sockaddr:path, sockaddr:addr,
748 sockaddr:port): new functions.
750 Wed Mar 19 04:50:34 1997 Gary Houston <ghouston@actrix.gen.nz>
752 * boot-9.scm: define accessor procedures for the objects returned
753 by getpw, getgr, gethost, getnet, getproto, getserv (e.g.,
754 passwd:name, where the first component is the name of the C structure
755 and the second is the unprefixed C member name.)
757 Tue Mar 18 18:39:31 1997 Gary Houston <ghouston@actrix.gen.nz>
759 * boot-9.scm (setpwent, setgrent, sethostent, setnetent, setprotoent,
760 setservent): no longer take an argument, it was bogus.
762 Thu Mar 13 00:13:41 1997 Gary Houston <ghouston@actrix.gen.nz>
764 * boot-9.scm (scm-error): deleted, reimplemented in C.
766 Mon Mar 10 15:48:31 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
768 * boot-9.scm (process-define-module): Modified to handle both
769 keywords and symbols.
771 Sat Mar 8 04:32:44 1997 Gary Houston <ghouston@actrix.gen.nz>
773 * slib.scm: update read usage.
775 * r4rs.scm: update primitive-load usage.
776 Don't define read-sharp.
778 * boot-9.scm: use read-hash-extend to install extra read syntax.
779 (read-sharp): removed.
780 Adjust usage of primitive-load-path, read, which no longer take
781 case_i or read-sharp arguments.
783 Sat Mar 8 00:07:54 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
785 * boot-9.scm: Added loading of session support module.
787 * debug.scm: Removed `display-application'. (Replaced by
788 primitive procedure.)
790 * boot-9.scm (beautify-user-module!): Don't add the root module
791 interface to the end of the use-list of the root module.
793 Thu Mar 6 07:26:34 1997 Gary Houston <ghouston@actrix.gen.nz>
795 * boot-9.scm: repl-quit, repl-abort: obsolete variables deleted.
797 Wed Mar 5 20:30:24 1997 Gary Houston <ghouston@actrix.gen.nz>
799 * boot-9.scm: check use-emacs-interface for emacs support.
801 Sun Mar 2 19:47:14 1997 Gary Houston <ghouston@actrix.gen.nz>
803 * boot-9.scm (scm-style-repl): call repl-report-start-timing if
805 * (exit): alias for quit.
807 Sun Mar 2 05:25:11 1997 Gary Houston <ghouston@actrix.gen.nz>
809 * boot-9.scm (error-catching-loop thunk): use a status variable to
810 return the quit args.
811 (scm-style-repl): call -quit, passing return value from
812 error-catching-repl. Make -quit return its args.
813 stand-alone-repl: comment out, since it seems unused.
815 (error-catching-loop thunk): discard trailing junk after a (quit).
817 Sat Mar 1 15:24:39 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
819 * boot-9.scm: Removed the old printer code.
821 * r4rs.scm (apply, call-with-current-continuation): Added comment
822 explaining why apply and call/cc need to be closures.
824 * boot-9.scm (apply, call-with-current-continuation): Bugfix:
825 Removed. These definitions are already present in r4rs.scm.
827 * debug.scm (trace-entry, trace-exit): Check that we're on a repl
828 stack before printing traced frames; Re-enable trace flag at end
831 Sat Mar 1 00:10:38 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
833 * debug.scm: Add hook for reset of trace level at abort.
835 * boot-9.scm (run-hooks): New procedure.
836 (add-hooks!): New macro.
837 Change hooks to use these functions.
839 * debug.scm: *Warning* This feature is a bit premature. I add
840 it anyway because 1. it is very useful, and, 2. you can start
841 making it less premature by complaining to me and by modifying
843 (trace): Given one or more procedure objects, trace each one.
844 Given no arguments, show all traced procedures.
845 (untrace): Given one or more procedure objects, untrace each one.
846 Given no arguments, untrace all traced procedures. The tracing in
847 Guile have an advantage to most other systems: We don't create new
848 procedure objects, but mark the procedure objects themselves.
849 This means that also anonymous and internal procedures can be
852 * boot-9.scm (error-catching-loop): Added handling of apply-frame
853 and exit-frame exceptions.
855 * boot-9.scm (assert-repl-prompt, the-prompt-string): Removed.
856 (set-repl-prompt!): Setter for repl prompt.
857 (scm-style-repl): If prompt is #f, don't prompt; if prompt is a
858 string, display it; if prompt is a thunk, call it and display its
859 result; otherwise display "> ".
860 (Change suggested by Roland Orre <orre@nada.kth.se>.)
862 * r4rs.scm (%load-verbosely): Reverted change to
863 `module-defined?', since the module system isn't bootstrapped when
864 we load r4rs.scm. This is just a temporary fix to make the
865 repository version runnable.
867 Thu Feb 27 23:25:47 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
869 * boot-9.scm: Removed the enabling of debug evaluator and
870 recording of source code positions. This was placed there for our
871 convenience, but it has already sneaked into the distribution
872 once... so we'd better add this in our local copies instead when
873 we need it. (These options are normally enabled at the end of
874 boot-9.scm when loading the debug module.)
876 Thu Feb 27 16:04:45 1997 Marius Vollmer <mvo@zagadka.ping.de>
878 * boot-9.scm (module-defined?): New function.
879 (macroexpand-1, macroexpand): Use local-ref instead of defined?
881 * r4rs.scm (%load-verbosely): Use "module-defined?" instead of
883 * slib.scm (defined?): New function to take the place of the
884 builtin "defined?". It allways examines the slib module.
886 Mon Feb 24 21:46:15 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
888 * configure.in: Added AM_MAINTAINER_MODE
890 Sat Feb 15 04:51:20 1997 Gary Houston <ghouston@actrix.gen.nz>
892 * boot-9.scm (read-sharp): define directly, don't go through a
895 Tue Feb 11 08:45:48 1997 Gary Houston <ghouston@actrix.gen.nz>
897 * boot-9.scm (uniform-vector-set!): use uniform-array-set1!, not
898 uniform-vector-set1! which doesn't exist.
900 Mon Feb 10 03:01:48 1997 Mikael Djurfeldt <mdj@kenneth>
902 * boot-9.scm (backtrace): Removed. (A C version now exists in
905 Fri Jan 24 06:05:36 1997 Gary Houston <ghouston@actrix.gen.nz>
907 * boot-9.scm (read-line!, read-delimited!, read-delimited,
908 read-line): new procedures, see libguile/ChangeLog.
910 Thu Jan 16 17:07:03 1997 Marius Vollmer <mvo@zagadka.ping.de>
912 Added dynamic linking of modules. See libguile/DYNAMIC-LINKING.
914 * boot-9.scm (split-c-module-name, convert-c-registered-modules,
915 init-dynamic-module, dynamic-maybe-call,
916 find-and-link-dynamic-module, link-dynamic-module,
917 try-module-dynamic-link, registered-modules): New definitions for
918 dynamic linking of modules.
919 (resolve-module): Try to dynamically link the requested module
920 after failing to load it as Scheme code.
922 Wed Jan 8 05:50:14 1997 Gary Houston <ghouston@actrix.gen.nz>
924 * boot-9.scm (getservbyport, getservbyname): remove stray %.
926 Tue Jan 7 20:02:24 1997 Jim Blandy <jimb@floss.cyclic.com>
928 * boot-9.scm (and=>): Rename THUNK argument to PROCEDURE, 'cos
931 * lineio.scm (make-line-buffering-input-port): Properly test for
932 the case of an empty buffer list. The old code assumed that '()
935 Mon Jan 6 01:13:53 1997 Mikael Djurfeldt <mdj@kenneth>
937 * boot-9.scm (use-modules): New macro (from Marius Vollmer).
938 (use-modules <module name> ...) Put the the modules named by
939 <module name> ... on the use list of the current module.
941 Sun Jan 5 15:52:59 1997 Jim Blandy <jimb@floss.cyclic.com>
943 * boot-9.scm (error-catching-loop): Remove message saying that
944 typing "$" will put you in the debugger. This isn't implemented
947 Sun Dec 22 23:27:25 1996 Jim Blandy <jimb@floss.cyclic.com>
949 * boot-9.scm (delq-all!): Function deleted; delq!'s semantics have
950 been fixed, so this function is superfluous.
951 (transform-usage-lambda): Use delq!, not delq-all!.
953 Tue Dec 17 20:36:45 1996 Marius Vollmer <mvo@zagadka.ping.de>
955 * boot-9.scm (resolve-module): New optional parameter that
956 controls whether autoloading is attempted or not. Default is #t.
957 (process-define-module): Don't autoload the defined module.
958 (try-module-autoload): Don't autoload the directory modules.
960 * boot-9.scm (process-define-module): Ensure that the-scm-module
961 is last in the `uses' list to allow shadowing builtin
962 bindings. All :use-module options are added in the order they
963 appear in the arguments but before anything already on the list
964 (such as the-scm-module).
966 Wed Dec 11 21:06:05 1996 Gary Houston <ghouston@actrix.gen.nz>
968 * slib.scm (slib-parent-dir): throw error if #f returned from
971 Sat Nov 30 23:57:28 1996 Tom Tromey <tromey@cygnus.com>
973 * PLUGIN/greet, PLUGIN/split.sed, PLUGIN/this.configure: Removed.
974 * Makefile.am, aclocal.m4: New files.
975 * configure.in: Updated for Automake.
977 Wed Nov 27 14:16:14 1996 Marius Vollmer <mvo@zagadka.ping.de>
979 * boot-9.scm (macroexpand-1, macroexpand), slib.scm
980 (slib:features), r4rs.scm (%load-verbosely): "defined?" is now a
981 function, use it accordingly.
983 Thu Nov 21 11:12:10 1996 Jim Blandy <jimb@floss.cyclic.com>
985 It's an "eval closure", not an "eval thunk." A thunk is a
986 function of no arguments.
987 * boot-9.scm (module-type): Rename module field.
988 (make-module, eval-in-module, make-root-module,
989 set-current-module): Uses changed.
990 (module-eval-closure, set-module-eval-closure!,
991 root-module-closure): Renamed from module-eval-thunk,
992 set-module-eval-thunk!, root-module-thunk.
993 (set-current-module): Change uses of *top-level-lookup-thunk* to
994 *top-level-eval-closure*.
996 Wed Nov 20 14:45:27 1996 Jim Blandy <jimb@totoro.cyclic.com>
998 * slib.scm (slib-parent-dir): Use string-length, not length.
999 (Thanks to Bernard Urban.)
1001 Sat Nov 2 20:00:42 1996 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1003 * boot-9.scm: The debugging evaluator and recording of positions
1004 aren't enabled by default any longer (they are switched on in
1005 debug.scm). But during development we want to have them also
1006 *inside* boot-9.scm. Therefore, two lines are added at the
1007 beginning of boot-9.scm to enable these.
1009 Call `provide' so that `records' are included among the
1012 The scheme for saving the stack has been adjusted: save-stack is
1013 now commonly available for saving the stack. Calling `save-stack'
1014 sets a flag `stack-saved?' which prevents overwriting the stack.
1015 `stack-saved?' is reset at `abort'.
1017 Spelling correction: seperate --> separate.
1019 Removed `:'s that had creeped into some comments.
1021 The repl now doesn't print #<unspecified> results any longer
1022 If the user wants to see this, he can do
1023 (assert-repl-print-unspecified #t) in his startup file.
1025 The user now gets a friendly message instead of a backtrace at
1028 Added `before-read-hook'.
1030 Load module (ice-9 emacs) if option `-e' was specified.
1032 (provide): New function.
1034 (error): Save stack at entry, so that Guile entrails won't show up
1037 (backtrace): New function.
1039 (save-stack): Can now take arbitrary number of stack narrowing
1040 specifier pairs. The first specifier in a pair controls inner
1041 border, the second the outer border. A number means cut that
1042 number of frames, a procedure object means cut until that object
1043 is found in operator position in a frame.
1045 * debug.scm: Enable debugging evaluator and recording of positions
1048 * slib.scm (slib:load): Adapt to the new behavior of
1049 primitive-load: It doesn't any longer try both with and without
1050 ".scm" extension. (We don't want to use %search-load-path here.)
1052 (implementation-vicinity): New function. slib requires it
1054 (library-vicinity): Updated.
1056 Load "require.scm" in the library-vicinity.
1058 (install-require-vicinity, install-require-module): New functions.
1060 Mon Oct 28 17:56:29 1996 Jim Blandy <jimb@floss.cyclic.com>
1062 * boot-9.scm (load-from-path): New function.
1064 * boot-9.scm (try-load, basic-try-load, try-load-module,
1065 try-load): Deleted. I don't think they're being used.
1067 * Makefile.in (scm_files): Add r4rs.scm and test.scm to this list,
1068 so they'll get distributed.
1070 Get Guile to be a little less chatty by default. The new user
1071 should see as little clutter as possible.
1072 * r4rs.scm (%load-verbosely): Make this #f by default.
1073 * boot-9.scm (scm-repl-verbose): Make this #f by default.
1074 (scm-style-repl): Don't run 'pk' on the value passed to quit.
1076 * r4rs.scm: New file.
1077 * boot-9.scm: Load r4rs.scm, first thing.
1078 (OPEN_READ, OPEN_WRITE, OPEN_BOTH, *null-device*, open-input-file,
1079 open-output-file, open-io-file, close-input-port,
1080 close-output-port, close-io-port, call-with-input-file,
1081 call-with-output-file, with-input-from-port, with-output-to-port,
1082 with-error-to-port, with-input-from-file, with-output-to-file,
1083 with-error-to-file, with-input-from-string, with-output-to-string,
1084 with-error-to-string, the-eof-object): Definitions moved to
1085 r4rs.scm. Not all of them are R4RS, but those that are use those
1087 (load, %load-verbosely, %load-announce): Moved, along with code to
1088 set %load-hook, to r4rs.scm.
1090 * test.scm: New file.
1092 * boot-9.scm (integer?): Definition deleted, in favor of the one
1093 present in libguile (which used to be called int?). I have no
1094 idea why integer? didn't just call int? to begin with.
1096 * boot-9.scm (<, <=, =, >, >=): Definitions in terms of <?, <=?,
1097 =?, >?, and >=? deleted; they're defined that way by libguile now.
1099 * boot-9.scm (load): Simplified; primitive-load does most of this
1101 (%load-announce-win): Removed; no longer used. Set %load-hook to
1102 call %load-announce.
1104 Sun Oct 27 07:47:03 1996 Gary Houston <ghouston@actrix.gen.nz>
1106 * boot-9.scm (stat:dev, stat:ino, stat:mode, stat:nlink, stat:uid,
1107 stat:gid, stat:rdev, stat:size, stat:atime, stat:mtime,
1108 stat:ctime, stat:blksize, stat:blocks) accessor functions for stat
1110 (file-is-directory?): use stat:type.
1112 Fri Oct 25 03:34:47 1996 Jim Blandy <jimb@floss.cyclic.com>
1114 * boot-9.scm (%read-sharp): Don't recognize the `#!' syntax here;
1115 that's now taken care of in libguile, and in a way compatible with
1116 SCSH (which this isn't).
1118 Mon Oct 21 18:52:36 1996 Jim Blandy <jimb@totoro.cyclic.com>
1120 * boot-9.scm: Formatting tweaks.
1122 Fri Oct 18 01:03:08 1996 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1124 * boot-9.scm (handle-system-error): Added hooks before-error-hook,
1125 after-error-hook, before-backtrace-hook and after-backtrace-hook
1126 to the error handler. E.g.: fancy emacs support could plug into
1128 (save-stack): New function. The stack is now made differently
1129 depending on the stack id. (The motivation is to make a better
1130 choice regarding what stack frames to present to the user.)
1131 (error-catching-loop): Stack handling code moved outside into
1134 Thu Oct 17 20:33:08 1996 Gary Houston <ghouston@actrix.gen.nz>
1136 * Makefile.in (scm_files): add expect.scm.
1138 * expect.scm: new file ported from guile-iii.
1140 * boot-9.scm: remove handle-system-error, after moving the code into
1141 error-catching-loop.
1142 Don't set 'throw-handler-default property on error keys.
1143 Just interpret (almost) any throw with 4 args as an error throw.
1144 Delete some try-load stuff that was already commented out.
1146 Second thoughts, keep handle-system-error but call it from
1147 error-catching-loop.
1149 Tue Oct 15 17:07:20 1996 Jim Blandy <jimb@floss.cyclic.com>
1151 * boot-9.scm: Doc fixes.
1152 (make-module): Rework for readability.
1153 (make-root-module, make-scm-module): USES argument to make-module
1154 should be '(), not #f.
1156 * boot-9.scm (try-load): %sys-load-path has been renamed to
1157 primitive-load-path; adjust call here.
1159 Tue Oct 15 14:25:01 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1161 * boot-9.scm (signal-handler): Bugfix: Moved the recording of
1162 the stack to the correct place: when it is decided to generate an
1165 Mon Oct 14 22:20:30 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1167 * boot-9.scm (error-catching-loop, signal-handler,
1168 handle-system-error): Backtracing now works for signals aswell;
1169 Backtracing mechanism can now identify the stack root created by
1170 start-stack so that the user isn't exposed to system stack frames.
1172 Mon Oct 14 06:05:42 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1174 * Makefile.in: Added threads.scm.
1176 Mon Oct 14 04:21:51 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1178 * debug.scm (make-enable, make-disable): Simplified.
1180 * boot-9.scm: Renamed %%throw-handler-default -->
1181 throw-handler-default.
1182 ((handle-system-error key . arg-list)): Changed the way errors are
1184 ((scm-style-repl)): Wrap up the call to eval in a start-stack
1186 ((error-catching-loop thunk)): Introduce a lazy-catch into
1187 error-catching-loop so that the stack can be captured.
1189 Thu Oct 10 22:27:32 1996 Jim Blandy <jimb@totoro.cyclic.com>
1191 * mapping.scm (hash-table-mapping): Explicitly request that
1192 make-vector fill new vectors with '(); this will make it easier to
1193 port Guile Scheme code to other Schemes.
1194 * boot-9.scm (make-print-style, make-print-table): Same.
1196 Sun Oct 6 03:54:59 1996 Gary Houston <ghouston@actrix.gen.nz>
1198 * boot-9.scm (load): rewritten again.
1199 Append "." to the default %load-path.
1200 (feature?): new function: checks for a symbol in the features list.
1201 (module-local-variable): remove apparently useless (caddr (list m v
1203 (%load-announce): minor formatting change.
1204 (file-exists?): use access? if posix is featured.
1205 (file-is-directory?): use stat if i/o-extensions is featured.
1206 (try-module-autoload module-name): use file-exists? before
1209 Sat Oct 5 18:54:03 1996 Mikael Djurfeldt <mdj@kenneth>
1211 * boot-9.scm: Added conditional loading of threads.scm.
1213 * threads.scm: New file. Modified from the Cygnus-r0.3
1216 * boot-9.scm (error-catching-loop): Added handling of key
1219 * boot-9.scm: Name change %%bad-throw --> bad-throw.
1221 Wed Oct 2 23:38:44 1996 Jim Blandy <jimb@totoro.cyclic.com>
1223 * boot-9.scm (make-record-type, record-constructor): Don't assume
1224 the empty list is false when parsing the argument list.
1226 Mon Sep 30 22:15:50 1996 Jim Blandy <jimb@totoro.cyclic.com>
1228 * boot-9.scm (signal-handler): Clean up logic.
1230 * boot-9.scm (load): Assume %load-path is always bound.
1232 Sat Sep 28 00:15:37 1996 Gary Houston <ghouston@actrix.gen.nz>
1234 * boot-9.scm (error): replace another throw with scm-error. Throw
1235 to 'misc-error instead of 'error (no need to distinguish these.)
1236 Don't set up 'error as a key.
1237 Set up regex-error as a key, if regex is available.
1238 (signal-handler): use scm-error, not throw.
1240 (%try-load, try-load-with-path, %load, load-with-path,
1241 basic-try-load-with-path, basic-load-with-path,
1242 try-load-module-with-path,load-module-with-path): deleted, since
1243 they seem redundant.
1244 (try-load): define using %try-load, not try-load-with-path.
1245 (load): rewritten. load tries to open the file directly and
1246 with a .scm extension before searching the library directories
1247 (should "." be added to %load-path? then load could still open
1248 directly files starting with "/").
1249 (try-module-autoload): use load, not load-with-path.
1250 (%load-indent): deleted, -2 was causing errors.
1252 (%read-sharp): use port-line, not line-number.
1254 Fri Sep 27 16:23:51 1996 Jim Blandy <jimb@totoro.cyclic.com>
1256 * boot-9.scm (%%bad-throw): Delete definition. 1) It's very
1257 straightforward to provide the equivalent functionality using
1258 (catch #t ...), so there's no need for the extra complexity. 2)
1259 Outside the context of a read-eval-print loop (which Guile should
1260 not require) it's not clear we should do anything more complicated
1261 than print an error and exit; the user or REPL can establish
1262 something better if it wants. 3) In that case, it's much more
1263 robust to just do it in the C code.
1265 Tue Sep 24 06:53:04 1996 Gary Houston <ghouston@actrix.gen.nz>
1267 * boot-9.scm (%try-load): define using primitive-load. Previously
1268 %try-load itself was the primitive.
1269 (load-with-path): use scm-error instead of %load-announce-lossage.
1270 Errors are thrown to 'misc-error instead of 'could-not-load.
1271 (%load-announce-lossage): deleted.
1273 Mon Sep 23 00:16:31 1996 Mikael Djurfeldt <mdj@kenneth>
1275 * boot-9.scm (warn, scm-style-repl): Use C printer instead of `print'.
1276 (make-record-type type-name fields): Temporarily remove support
1277 for printing of records (not possible yet with C printer).
1279 Fri Sep 20 00:24:27 1996 Gary Houston <ghouston@actrix.gen.nz>
1281 * boot-9.scm (file-exists?, file-is-directory): catch only
1282 system-error, not every kind of error.
1283 (scm-error): new procedure.
1285 Thu Sep 19 16:02:46 1996 Jim Blandy <jimb@totoro.cyclic.com>
1287 * boot-9.scm: Formatting tweaks.
1289 Wed Sep 18 09:07:37 1996 Gary Houston <ghouston@actrix.gen.nz>
1291 * boot-9.scm (%%handle-system-error key): remove the code for
1292 SCM-style errors. handle the case that an unexpected number
1293 of args are supplied.
1294 (%%system-errors): removed.
1295 (error): redefine using a throw with key and 4 args.
1296 ('error): associate 'error, 'error-signal keys with
1297 %%handle-system-error.
1298 (%%default-error-handler): removed.
1299 (signal-handler): throw with 4 args and use the error-signal key.
1300 Create an error message instead of using numerical codes.
1301 (%%bad-throw): call error instead of throw if key not found.
1303 Tue Sep 17 04:11:28 1996 Gary Houston <ghouston@actrix.gen.nz>
1305 * boot-9.scm: initialize new error keys (see libguile/ChangeLog).
1306 (%%handle-system-error key): check subr is not #f before printing.
1307 Recognize %s (embed an argument using "display") and
1308 %S (embed an argument using "write").
1310 Sun Sep 15 03:55:35 1996 Gary Houston <ghouston@actrix.gen.nz>
1312 * boot-9.scm (%%handle-system-error key): set args and rest to
1313 the empty list if they are #f.
1314 Initialize out-of-range as an error key.
1316 Sat Sep 14 03:41:15 1996 Gary Houston <ghouston@actrix.gen.nz>
1318 * PLUGIN/REQ: remove the "ice-9 lgh" line which causes a cycle.
1320 * boot-9.scm: remove leading %% from references to '%%system-error.
1321 (%%handle-system-error): don't pass all the thrown arguments when
1322 aborting, just the key and subr.
1323 Remove the code to "Install default handlers for built-in errors."
1324 Remove the definition of the syserror procedure.
1325 Associate 'numerical-overflow with default handler.
1327 Fri Sep 13 04:58:11 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1329 * boot-9.scm: Name change: value-ref --> local-ref
1330 resolved-ref --> nested-ref Motivation: conformance to the other
1331 dictionary operators: list-ref operates on list, vector-ref
1332 operates on vector, nested-ref operates on nested namespace,
1333 local-ref operates on the local nested namespace.
1335 Sat Sep 7 06:44:47 1996 Gary Houston <ghouston@actrix.gen.nz>
1337 * boot-9.scm (%%handle-system-error): recognise errors thrown
1338 by lgh-error (fill-message etc.)
1339 (fill-message): check first whether args is null.
1340 (fill-message): bug fix and check that args is a list.
1342 Thu Sep 5 11:33:41 1996 Jim Blandy <jimb@floss.cyclic.com>
1344 * boot-9.scm: %load-path is initialized in C code now.
1345 (implementation-vicinity, parse-path): Deleted, along with code to
1346 initialize %load-path.
1348 * boot-9.scm (in-vicinity): If the vicinity doesn't end with a
1349 "/", use one to separate it from the file.
1351 Thu Aug 29 23:05:11 1996 Thomas Morgan <tmorgan@gnu.ai.mit.edu>
1353 * boot-9.scm (%load-path): Add the site directory.
1354 Add the directory named after the version number.
1355 Prepend the version number to the other directories in the path.
1356 Simplify by mapping the common prefix onto each item.
1357 * Makefile.in (datadir, pkgdatadir, pkgverdatadir, subpkgdatadir,
1358 sitedatadir): New definitions.
1359 (libparent, libdir, install_path): Replaced by above.
1360 (install): Create the above directories.
1361 Put the source files into subpkgdatadir.
1362 (uninstall): Remove the above directories.
1364 Thu Aug 29 21:48:47 1996 Jim Blandy <jimb@floss.cyclic.com>
1366 Don't use the PLUGIN system to gather information for the
1367 Makefile's distribution and installation targets; just put it all
1368 in the Makefile directly.
1369 * PLUGIN/this.configure (scm_files, aux_files): Remove sections
1371 * configure.in: Remove code that gets and substitutes scm_files and
1373 * Makefile.in (scm_files, aux_files): Write out the list of files
1374 here, where people expect to find them.
1376 Fri Aug 23 06:44:36 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1378 * boot-9.scm: Preliminary solution: optionally load the debug
1379 module. Changed "gls" to "guile1.0b3".
1381 * debug.scm: New file: debug extensions.
1383 Wed Aug 21 13:06:56 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1385 * boot-9.scm (print-vector): Renamed weak-hash-table? -->
1386 weak-key-hash-table?. (Again!)
1388 Tue Aug 20 07:31:39 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1390 * boot-9.scm (print-vector, macro-table, xformer-table):
1391 Renamed weak-hash-table --> weak-key-hash-table.
1393 * poe.scm (funcq-memo): Renamed weak-hash-table -->
1394 weak-key-hash-table.
1396 Sat Aug 3 06:16:35 1996 Gary Houston <ghouston@actrix.gen.nz>
1398 * boot-9.scm (*null-device*): global constant from goonix.
1399 (move->fdes): adjusted for boolean primitive-move->fdes. return
1400 the modified port, always set revealed count to 1 (SCSH compatible).
1401 (release-port-handle port): from goonix (SCSH compatible).
1402 (%open-file): removed.
1403 (open-input-file, open-output-file, file-exists?, file-is-directory?):
1404 modified for open-file change (does not return #f).
1406 Thu Aug 1 02:52:42 1996 Jim Blandy <jimb@totoro.cyclic.com>
1408 * Makefile.in (dist-dir): New target for new dist system.
1409 (manifest): Deleted.
1410 * PLUGIN/this.configure (aux_files): Removed PLUGIN; it's a
1411 directory, and needs special treatment in the dist-dir target.
1413 Thu Aug 1 09:00:21 1996 Gary Houston <ghouston@actrix.gen.nz>
1415 * boot-9.scm: remove the wrappers for '%' system primitives,
1416 now that they throw errors directly.
1417 remove make-simple-wrapper and similar functions.
1418 protect a call to getenv which may now throw an exception.
1420 Wed Jul 31 23:44:42 1996 Gary Houston <ghouston@actrix.gen.nz>
1422 * boot-9.scm (false-if-exception): new macro.
1424 Fri Apr 19 13:53:08 1996 Tom Lord <lord@beehive>
1426 * The more things change...