1 1999-02-12 Jim Blandy <jimb@savonarola.red-bean.com>
3 * getopt-long.scm: Remove debugging calls to `pk'.
5 * getopt-long.scm: Return list of ordinary arguments as the value
6 of the '() key, not `rest'.
8 A new argument-processing package from Russ McManus.
9 * getopt-long.scm: New file.
10 * Makefile.am (ice9_sources): Added getopt-long.scm.
11 * Makefile.in: Regenerated.
13 1999-02-09 Maciej Stachowiak <mstachow@alum.mit.edu>
15 * optargs.scm: New file.
16 * Makefile.am (ice9_sources): Add optargs.scm here. Makefile.in
17 not regenerated because I don't have the right version of Automake.
19 1999-02-06 Jim Blandy <jimb@zwingli.cygnus.com>
21 * and-let*.scm: New file, from Michael Livshin.
22 * Makefile.am (ice9_sources): Add and-let* here.
23 * Makefile.in: Regenerated.
25 1999-01-11 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
27 * slib.scm (install-require-module): Fixed the kludge which loads
28 the slib catalog: Doesn't anylonger assume that the feature tested
31 1998-12-14 Jim Blandy <jimb@zwingli.cygnus.com>
33 * Makefile.in: Regenerated.
35 1998-12-14 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
37 * boot-9.scm (process-define-module): Reverted the change of
38 1998-11-23 which caused loading of object code if :use-module was
39 applied to the module itself.
41 1998-12-11 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
43 * Makefile.am: Removed setf.scm.
45 * setf.scm: Removed. 1. It was buggy. 2. It was unschemey.
46 (These shortcomings were my fault.)
48 1998-12-10 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
50 * boot-9.scm (environment-module): New procedure.
52 1998-12-07 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
54 * Makefile.am: Added setf.scm.
56 1998-12-05 Christian Lynbech <chl@tbit.dk>
58 * setf.scm: New file. Adds the new forms `setf!' and `setter'
59 which implements generalized references a la Common LISP.
61 1998-12-02 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
63 * boot-9.scm (process-define-module): Added new specifier
64 :autoload MODULENAME BINDINGS to the define-module form.
65 The autoload specifier tells the module system to load the module
66 MODULENAME at the first occasion that any variable with its name
67 among BINDINGS is referenced.
68 (make-autoload-interface): New procedure: Constructs a stand-in
69 for the public interface for the module to be autoloaded.
71 1998-12-01 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
73 * boot-9.scm (*suppress-old-style-hook-warning*): Set this to #t
74 if you don't want the old style hook warnings.
76 1998-12-01 Christian Lynbech <chl@tbit.dk>
78 * boot-9.scm (try-using-libtool-name): Fix check on dlname to make
79 sure that it isn't empty, as it is when we are only buidling
82 1998-11-27 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
84 * session.scm (arity): New procedure.
86 1998-11-26 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
88 * boot-9.scm: Use run-hook instead of run-hooks everywhere.
90 1998-11-26 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
92 * boot-9.scm (run-hooks, add-hook!, remove-hook!): Added temporary
93 code for backward compatibility until people have had time to
94 adapt to the new hooks.
96 1998-11-23 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
98 * boot-9.scm (beautify-user-module!): Beautify also if public
99 interface is set to the module itself. In this way we can use
100 beautify-user-module! to beautify a module prepared for object
102 (process-define-module): Special case: Try to load object code as
103 well if a module does :use-module on itself.
105 * boot-9.scm: Bugfix: Since boot-9.scm is now loaded from
106 invoke_main_func, we can no longer be sure that all modules have
107 been registered when boot-9.scm is loaded.
108 (register-modules): New function: Register and tag modules
109 registered by scm_register_module_xxx since last call to this
110 function. Modules are tagged with the dynamic object passed as
111 argument. (Already linked modules should be tagged with #f.)
112 (init-dynamic-module, link-dynamic-module): Call register-modules
113 first to register linked modules.
115 * boot-9.scm (init-dynamic-module): Remove module from
116 registered-modules as soon as possible in case we are recursively
117 invoked; Set public interface before doing the dynamic-call.
119 * boot-9.scm (map-in-order): Removed (replaced by scm_serial_map).
120 (abort-hook, before-error-hook, after-error-hook,
121 before-backtrace-hook, after-backtrace-hook, before-read-hook,
122 after-read-hook, exit-hook): Make hooks with `make-hook'.
124 * boot-9.scm: Make hooks first class citizens and make them easier
126 (make-hook, add-hook!, remove-hook!, run-hooks): Moved to
129 * boot-9.scm: Added warnings about bindings used in
130 libguile/modules.c: the-module, set-current-module,
131 make-modules-in, beautify-user-module!, module-eval-closure.
133 1998-11-21 Mikael Djurfeldt <mdj@kenneth>
135 * boot-9.scm (the-environment): New special form: Returns an
136 object representing the current local evaluation environment.
137 This object can be used in `local-eval' and `defined?'.
139 1998-11-13 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
141 * boot-9.scm (collect): New syntax. Similar to begin but returns
142 a list of the results of all forms in the sequence instead of the
143 result of the last form.
145 1998-11-10 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
147 * boot-9.scm (values, call-with-values): Moved here from
150 * syncase.scm (values, call-with-values): Moved to boot-9.scm.
152 * boot-9.scm (readline-options, readline-enable, readline.disable,
153 readline-set!: New options interface.
155 * readline.scm (readline-port): Use readline-options-interface.
157 1998-11-05 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
159 * boot-9.scm: Set the repl start module in `top-repl' instead of
160 at the end of boot-9.scm.
162 1998-11-01 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
164 * emacs.scm (format): Bugfix: Handle multiple arguments
165 correctly. (Thanks to Thien-Thi Nguyen.)
167 1998-11-01 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
169 * boot-9.scm (exit-hook): New hook: Is run at the very end of an
171 (top-repl): Run exit-hook on exit.
173 * readline.scm (readline-port): Maybe read history; Maybe write
174 history at exit (add to exit-hook).
176 Fri Oct 30 15:15:37 1998 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
178 * readline.scm (make-readline-port): Bugfixed last change...
180 1998-10-28 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
182 * readline.scm (make-readline-port): Don't set prompt to "... " if
185 1998-10-19 Jim Blandy <jimb@zwingli.cygnus.com>
187 * boot-9.scm, debug.scm, expect.scm, hcons.scm, lineio.scm,
188 r4rs.scm, slib.scm, threads.scm: Update copyright years.
190 * getopt-gnu-style.scm, slib.scm: Add copyright notice.
192 Talked to Stallman. Actually, the syntax-case copyright is no
194 * Makefile.am (ice9_sources): Revert last change.
195 * syncase.scm, psyntax.pp, psyntax.ss: Added again.
196 * Makefile.in: Regeneretade.
198 * boot-9.scm: Don't assume that this file is loaded just before
199 entering a read-eval-print loop. Turn code to load (ice-9 emacs)
201 (load-emacs-interface): New function.
202 (top-repl): Call it, if use-emacs-interface is defined and true.
203 At this point, we *do* know we're about to enter a REPL.
205 We can't include Kent Dybvig's syntax-case macro expander in the
206 core Guile distribution, because we don't have copyright
207 assignments for this code. We can certainly distribute them as a
208 separate package, but Guile should be FSF code.
209 * syncase.scm, psyntax.pp, psyntax.ss: Removed.
210 * Makefile.am (ice9_sources): Removed syncase.scm, psyntax.pp, and
212 * Makefile.in: Regenerated.
214 * Makefile.am (ice9_sources): Add getopt-gnu-style.scm.
215 * Makefile.in: Regenerated.
217 1998-10-18 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
219 * boot-9.scm: Added extended read syntax for byte vectors #y(...)
220 and short vectors #h(...).
222 1998-10-14 Jim Blandy <jimb@zwingli.cygnus.com>
224 * calling.scm (excursion-function-syntax): Use a sequence of
225 set!'s, not a single multi-variable set!; we removed support for
226 that syntax a long time ago. (Thanks to Shuji Narazaki.)
228 1998-10-12 Jim Blandy <jimb@zwingli.cygnus.com>
230 * r4rs.scm (OPEN_READ, OPEN_WRITE, OPEN_BOTH): Don't bother
231 testing software-type here. That's the least of our Windows
232 porting issues, and it's done wrong anyway.
234 1998-10-09 Jim Blandy <jimb@zwingli.cygnus.com>
236 * boot-9.scm (read-path-list-notation-warning): New function:
237 print a warning the first time we see `#/' notation.
239 * q.scm (sync-q!, q?, q-remove!, q-push!, enq!): Lots of bugs, and
240 (eq? #f '()) assumptions. Make functions that aren't documented
241 to return anything else return the queue itself. (Bug report from
242 Michael Livshin --- thanks!)
244 1998-08-21 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
246 * debug.scm (trace-entry, trace-exit): Removed re-enabling of
249 * boot-9.scm (make-options): Bugfix: Changed pair? --> list? in
250 order to allow the empty list as arg.
251 (error-catching-loop): Use `with-traps' to create a dynamic
252 context with traps enabled.
254 1998-08-19 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
256 * boot-9.scm: Removed (ice-9 regex) from use-list of (guile)
258 (try-using-libtool-name): Removed dependency on (ice-9 regex).
260 1998-08-15 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
262 * boot-9.scm: Make the root module use (ice-9 regex) if
263 available. The dynamic linking facilities in boot-9.scm are
264 currently dependent upon regular expressions. My change of
265 1998-07-14 removed (ice-9 regex) from the use-list of the root
266 module and thereby destroyed dynamic linking.
268 1998-07-29 Jim Blandy <jimb@zwingli.cygnus.com>
270 * Makefile.in: Regenerated using the last public version of
271 automake, not the hacked Cygnus version.
273 1998-07-28 Jim Blandy <jimb@zwingli.cygnus.com>
275 * Makefile.in: Regenerated, after removing Totoro kludge.
277 1998-07-28 Jim Blandy <jimb@totoro.red-bean.com>
279 * getopt-gnu-style.scm: New file. (Thanks to Russ McManus.)
281 1998-07-26 Jim Blandy <jimb@zwingli.cygnus.com>
283 * Makefile.in Rebuilt, for config changes in parent dir.
285 1998-07-21 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
287 * readline.scm (make-readline-port): Set prompt string to "... "
288 after first read line. (Thanks to Richard Polton.)
290 1998-07-19 Jim Blandy <jimb@zwingli.cygnus.com>
292 * lineio.scm (make-line-buffering-input-port): Don't use
293 ungetc-char-ready?, since we don't provide that function any
294 more. The unread-string function doesn't interact properly with
295 any of the standard I/O functions anyway. (Thanks to Andrew
298 * hcons.scm (hashq-cons-assoc): Don't assume the empty list is
299 false. Return false when we cannot find a matching entry in the
300 list. (Thanks to Andrew Archibald.)
302 1998-07-16 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
304 * boot-9.scm (export, export-syntax): New special forms: Export
305 bindings from a module. `(export name1 name2 ...)' can be used at
306 the top of a module (after `define-module') to specify which names
307 should be exported. It can be used as an alternative to
308 `define-public'. `export-syntax' works equivalently to `export'
309 but is intended for export of syntactic keywords.
310 (Thanks to Thien-Thi Nguyen.)
312 1998-07-15 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
314 * boot-9.scm: Renamed module `(guile-repl)' --> `(guile-user)'.
316 1998-07-14 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
318 * boot-9.scm: Let the user start in module `(guile-repl)' instead
319 of module `(guile)'. Also make sure that `(guile-repl)' uses
320 suitable modules. This change improves Guile stability
321 substantially since bindings will only be copied from the root
322 module: If the user redefines builtins in `(guile-repl)' it won't
323 affect the internal operation of Guile itself.
325 1998-06-19 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
327 * boot-9.scm (load-module): When loading files from within files
328 themselves being loaded: Use the directory path of the file being
329 loaded as root for relative filenames. (After suggestion by
332 1998-06-15 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
334 * emacs.scm (emacs-load): New feature: Eval in specified module.
336 1998-06-14 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
338 * readline.scm: Typo in regex module name.
340 1998-06-13 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
342 * readline.scm (apropos-completion-function): regexp-quote text to
345 1998-06-11 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
347 * debug.scm, emacs.scm: Bugfix: Treat `the-last-stack' as a fluid.
349 1998-06-09 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
351 * boot-9.scm: Check that (current-input-port) is a tty before
352 enabling readline. (Thanks to Michael N. Livshin.)
354 1998-06-07 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
356 * boot-9.scm (use-syntax): Turned into a macro inorder to be
357 similar in use to `use-modules'.
358 Example: (use-syntax (ice-9 syncase)) will 1. load the module
359 (ice-9 syncase), and, 2. install the procedure `syncase' as eval
361 (internal-use-syntax): New procedure.
362 (process-define-module): Use `internal-use-syntax'.
364 1998-05-19 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
366 * Makefile.am (ice9_sources): Add emacs.scm.
368 1998-05-13 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
370 * readline.scm: Use the new readline facilities: Add the
371 possibility to control input and output ports; Add apropos
374 * boot-9.scm: Antirevert Jim's readline code which he reverted
375 19971027 and adapt it to the current readline interface.
377 * boot-9.scm (top-repl): Only enable readline if not using the
378 Emacs interface; Only use repl prompt when using the readline port
379 from repl-read. (We don't want to see it when calling `read'.)
381 * boot-9.scm (remove-hook!): Parenthesis bug.
383 1998-05-11 Mikael Djurfeldt <mdj@kenneth>
385 * boot-9.scm: Load readline module if readline is present.
387 * readline.scm (apropos-completion-function): New procedure:
388 Symbolic completion. (Thanks to Andrew Archibald!)
390 1998-04-22 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
392 * boot-9.scm (process-define-module): Added keyword use-syntax.
394 1998-04-19 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
396 * nonblocking.scm: Removed. libguile is now inherently
397 nonblocking through the use of scm_internal_select.
399 * emacs.scm: Removed use of nonblocking.scm.
401 * gwish.scm, gtcl.scm: Removed. tcltk.scm has made these
404 1998-04-15 Mikael Djurfeldt <mdj@nada.kth.se>
406 * runq.scm (runq-control): Corrected spelling of enqueue!.
407 (Thanks to Karl M. Hegbloom.)
409 1998-03-30 Mikael Djurfeldt <mdj@nada.kth.se>
411 * boot-9.scm: Added new run-time option interface eval-options.
413 1998-03-28 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
415 * boot-9.scm (remove-hook!): New macro. (Thanks to Maciej
418 1998-01-30 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
420 * threads.scm: Added simple error and signal handler.
421 (make-thread, begin-handler): Use this handler. The most
422 important effect of this is that signals get unmasked.
423 Previously, when a signal was thrown signals remained masked
424 (signals get masked when a signal is taken) which influenced other
427 1998-01-01 Tim Pierce <twp@skepsis.com>
429 A better fix to the SLIB identity problem -- thanks to Marius Vollmer.
430 * slib.scm (identity): Unmake public.
431 (slib:eval): Evaluate inside `slib-module'.
433 1997-12-24 Tim Pierce <twp@skepsis.com>
435 * boot-9.scm: Doc fix.
437 * slib.scm (identity): Made public.
438 (home-vicinity): New function (from SLIB/Template.scm).
440 1997-12-13 Tim Pierce <twp@skepsis.com>
442 * boot-9.scm (read-line): Rewritten to call %read-line for
443 improved speed. Minor user-visible changes: the new functions are
444 hardwired to treat the LFD character as signifying end-of-line, so
445 changing `scm-line-incrementors' will no longer affect the
446 behavior of read-line. On platforms which do not represent
447 end-of-line with a LFD character, read-line should behave more
448 like native line-processing facilities, but there is still a ways
451 Sat Nov 29 01:24:46 1997 Mikael Djurfeldt <mdj@kenneth>
453 * boot-9.scm (error-catching-loop, save-stack): `the-last-stack'
456 1997-11-28 Tim Pierce <twp@skepsis.com>
458 * boot-9.scm (find-and-link-dynamic-module): If a module directory
459 contains a .la file (a libtool support file), attempt to extract
460 the shared library name from that file. If the .la file does not
461 exist, try to link against a .so file. Libtool-generated compiled
462 modules should load more cleanly in Guile now.
463 (try-using-libtool-name, try-using-sharlib-name): New functions.
465 Sun Nov 9 06:10:59 1997 Gary Houston <ghouston@actrix.gen.nz>
467 * boot-9.scm (set-batch-mode?!, batch-mode?): initialize more
468 usefully so they will work from a script.
470 1997-10-31 Marius Vollmer <mvo@zagadka.ping.de>
472 * boot-9.scm (inherit-print-state): Moved definition to the
473 neighborhood of the record code.
475 Mon Oct 27 02:05:49 1997 Jim Blandy <jimb@totoro.red-bean.com>
477 * boot-9.scm: Revert changes to this file from Oct 23. It turns
478 out to interact badly with the Emacs support and the Tcl/Tk
479 support. It's not a high enough priority at the moment to be
480 worth fixing. I'm leaving the other readline support in, though.
482 Sat Oct 25 14:23:22 1997 Jim Blandy <jimb@totoro.red-bean.com>
484 * Makefile.am: Include readline.scm in the list of files to be
485 installed, so Guile can find it for interactive use.
486 * Makefile.in: Regenerated.
488 Thu Oct 23 01:00:33 1997 Jim Blandy <jimb@totoro.red-bean.com>
490 Add support for readline function.
491 * readline.scm: New module.
492 * boot-9.scm (repl-reader): New function.
493 (scm-style-repl): Call repl-reader, instead of doing the reading
494 ourselves. Remove repl-report-reset; it was never used for
496 (top-repl): If we've got the readline primitives, then redefine
497 repl-reader to use them.
498 If we've got the readline primitives, import the readline module.
500 * ls.scm (ls, lls): Don't assume (eq? #f '()).
502 Wed Oct 22 18:26:57 1997 Jim Blandy <jimb@totoro.red-bean.com>
504 * calling.scm, common-list.scm, ls.scm, q.scm, runq.scm,
505 string-fun.scm: Added copyright notices; reformatted.
507 Thu Oct 9 05:44:00 1997 Gary Houston <ghouston@actrix.gen.nz>
509 * expect.scm: (expect-regexec): new procedure, use it in
510 expect-strings to fix the => syntax under the new regex system.
511 (top): include regex module in define-module statement.
513 Wed Oct 8 03:16:01 1997 Gary Houston <ghouston@actrix.gen.nz>
515 * (error-catching-loop): new local variable "interactive". if
516 #f, abort terminates the process.
517 (set-batch-mode?!, batch-mode?): new closures, defined in
518 error-catching-loop. the names are from scsh.
520 1997-10-06 Marius Vollmer <mvo@zagadka.ping.de>
522 * boot-9.scm (inherit-print-state): If NEW-PORT contains a
523 print-state, throw it away.
525 Fri Oct 3 12:00:00 Mikael Djurfeldt <mdj@nada.kth.se>
527 * boot-9.scm (struct-layout): Use `vtable-index-layout' instead of
530 Thu Oct 2 12:00:00 Mikael Djurfeldt <mdj@nada.kth.se>
532 * boot-9.scm (struct-printer, make-struct-printer,
533 set-struct-printer-in-vtable!, *struct-printer*): Removed.
534 (record-type-vtable, make-record-type): Don't use make-struct-printer.
535 (record-type-vtable): User fields "prpr" (printer is no longer a
537 (record-type-name, record-type-fields): Decreased slot index by
538 one; Use `vtable-offset-user'.
540 Thu Oct 2 12:00:00 Marius Vollmer <mvo@zagadka.ping.de>
542 * boot-9.scm (inherit-print-state): New experimental function.
544 Tue Sep 30 13:12:48 1997 Jim Blandy <jimb@totoro.red-bean.com>
546 Suggestion and script from Maciej Stachowiak:
547 * boot-9.scm: Split off modules into separate, autoloadable files.
548 This reduces startup time from 10.5s to 5.5s (user cpu).
549 * calling.scm, common-list.scm, ls.scm, q.scm, runq.scm,
550 string-fun.scm: New files, containing stuff that used to be in
552 * Makefile.am (ice9_sources): List new files here, for
553 distribution and installation.
554 * Makefile.in: Regenerated.
556 Mon Sep 29 23:53:55 1997 Jim Blandy <jimb@totoro.red-bean.com>
558 * Makefile.in: Regenerated with automake 1.2c.
560 Mon Sep 29 03:21:24 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
562 * slib.scm (slib:load): slib:load first tries to load the file
563 named NAME, then NAME.scm. On error, report the error occuring at
564 the first attempt (NAME) rather than the second (NAME.scm).
566 * boot-9.scm: Bugfix: Hard-solder the print-option procedure into
567 the make-options macro so that we needn't refer to a global
570 Sun Sep 28 21:40:24 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
572 * debug.scm: Moved options interface procedures to boot-9.scm.
574 * boot-9.scm: Define options interface procedures here instead.
576 Sat Sep 27 20:19:20 1997 Jim Blandy <jimb@totoro.red-bean.com>
578 * boot-9.scm (separate-fields-discarding-char,
579 separate-fields-after-char, separate-fields-before-char): Call
580 continuation function, RET, as advertised: with each separated
581 field a separate argument.
583 * Makefile.in: Regenerated with automake 1.2a.
585 Sat Sep 20 14:23:53 1997 Mikael Djurfeldt <mdj@kenneth>
587 * slib.scm (slib:load): Export.
589 * boot-9.scm (in-vicinity): Bugfix: Don't add "/" to an empty
593 Thu Sep 18 01:24:31 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
595 * r4rs.scm (apply): Set name property to 'apply.
597 Tue Sep 16 22:09:50 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
599 * boot-9.scm (keyword->symbol, display-usage-report): Changed
600 length --> string-length. (Thanks to Aleksandar Bakic.)
601 (separate-fields-discarding-char, separate-fields-after-char,
602 separate-fields-before-char): Bugfix from Maciej Stachowiak
603 <mstachow@mit.edu>. Thanks!
604 (try-module-linked): Try to find module among those already
606 (try-module-dynamic-link): Removed the first test which
607 corresponds to a call to `try-module-linked'.
608 (resolve-module): Resolve modules in this order: 1. Already
609 registered modules (for example those which have been statically
610 linked), 2. Try to autoload an .scm-file, 3. Try to dynamically
613 Mon Sep 15 23:39:54 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
615 * boot-9.scm (iota): Renamed list-reverse! --> reverse!
617 Thu Sep 11 02:31:38 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
619 * session.scm (name): New procedure: Gives name of object.
620 (source): New procedure: Gives source of object.
622 Wed Sep 10 20:12:45 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
624 * boot-9.scm (primitive-macro?): New procedure.
626 * slib.scm: Added hack which transfers syntactic information from
627 the builtin variable `define' to the slib version if module (ice-9
628 syncase) has been loaded. This is necessary to get correct
629 expansion inside the slib module.
631 * psyntax.ss (build-let, build-named-let): New output
633 (build-lexical-var): Seed gensym with symbolic name.
634 (self-evaluating?): Add keywords among self-evaluating types.
635 (let): New core form.
636 (if): Removed from core language.
637 (or, and, let, cond): Removed syntactic definitions.
638 (sc-expand3): New procedure: Expander which takes optional mode
639 and eval-syntactic-expanders-when arguments.
641 * syncase.scm (psyncomp): New procedure: Recompiles psyntax.pp.
642 Should be used inside the (ice-9 syncase) module with (use-syntax
643 syncase) and with the current directory containing the psyntax.ss
645 Added hack to transfer syntactic information from the builtin
646 variable `define' to the slib version if module (ice-9 slib) has
649 Fri Sep 5 05:47:36 1997 Mikael Djurfeldt <mdj@faun.nada.kth.se>
651 * syncase.scm (sc-interface, sc-expand): Removed hook setup.
652 (syncase): Publish syntax transformer to be used with
654 (sc-macro): Use this as the value when publishing macros.
656 * boot-9.scm (module-type): Added `transformer'.
657 (make-module): Modified initialization.
658 (module-transformer, set-module-transformer!): Selector and
659 mutator for module-associated transformer.
660 (set-current-module): Use module-transformer to set
661 `scm:eval-transformer'.
662 (module-use!): Previous change reverted.
663 (use-syntax): New function: Install a transformer in current
665 (sc-interface, sc-expand): Removed! :)
667 Fri Sep 5 03:09:09 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
669 * emacs.scm (emacs-load): Added new parameter `module'.
671 * syncase.scm (putprop, getprop): Modified to use the object
672 properties of the variable object corresponding to the symbol;
673 This way we can ride on the mechanisms of the module system.
674 Changed `builtin-variable' calls to `define-public' calls.
675 Setup the hooks sc-expand and sc-interface.
677 * boot-9.scm (sc-interface, sc-expand): New builtin variables.
678 (set-current-module): Switch to and from sc-expand as
679 scm:eval-transformer when going into and out of modules using
681 (module-use!): Set scm:eval-transformer to sc-expand when adding
682 the syncase interface.
684 Thu Sep 4 14:57:04 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
686 * syncase.scm (putprop): Temporary fix which publishes new syntax
687 globally (the old behaviour was complex and connected to the inner
688 workings of the current module system).
690 Wed Sep 3 21:29:13 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
692 * psyntax.ss: Updated.
693 psyntax.pp: Bugfix: Previous version had some leading "t":s cut
696 Tue Sep 2 00:26:42 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
698 * boot-9.scm (gensym): Removed (replaced by primitive).
699 (obarray-gensym): Rewritten to use `gensym'.
700 (gentemp): Rewritten to use `gensym'.
702 Mon Sep 1 20:08:32 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
704 * gtcl.scm (make-tcl-binder): Rewritten to choose bindings
705 according to the following priorities:
706 1. tcl bindings which are present in override-scheme-list
707 2. bindings from the-scm-module
709 This way the gtcl module can occur first in the use-list without
710 disabling the scheme interpreter.
711 (new-interpreter): New function.
713 * gwish.scm: Moved initialization code for the-interpreter to
714 gtcl.scm; Moved name space cleaning code to gtcl.scm and rewrote
715 it; Call `new-interpreter'; Don't :use-module (guile).
717 Thu Aug 28 23:48:53 1997 Jim Blandy <jimb@totoro.red-bean.com>
719 * Makefile.in: Regenerated.
721 Wed Aug 27 11:35:09 1997 Jim Blandy <jimb@totoro.red-bean.com>
723 * Makefile.in: Regenerated, so it uses "tar", not "gtar".
725 Mon Aug 25 22:00:44 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
727 * emacs.scm (object->string, format, error-args->string): New
729 (emacs-frame-eval): Reworked.
731 Mon Aug 25 16:15:55 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
733 * session.scm (apropos-internal): Musn't initialize symbol
734 accumulator with a constant pair. That led to mutation of the
737 Sun Aug 24 01:03:10 1997 Mikael Djurfeldt <mdj@kenneth>
739 * session.scm (vector-for-each): Removed.
740 (apropos): vector-for-each --> array-for-each.
741 (apropos-internal): New function. Return list of accessible
742 symbols matching regexp.
744 * debug.scm (frame-number->index): New function. Convert frame
745 number (as displayed in the backtrace) to frame index (to be used
748 * emacs.scm (emacs-load): New arguments: interactivep: when
749 non-false, send back results to Emacs; colnum: Column number;
750 Use modules (ice-9 debug) and (ice-9 session);
751 (no-stack, no-source): New simple-actions;
752 (result-to-emacs): New procedure. Sends data to Emacs via the
754 (get-frame-source, emacs-select-frame, emacs-frame-eval,
755 emacs-symdoc): New procedures.
757 Wed Aug 20 13:21:11 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
759 * emacs.scm (emacs-load): Adjust stack narrowing.
760 (whitespace-chars): Include #\np.
762 * syncase.scm: Also turn off debugging evaluator and recording of
763 procedure names during loading of psyntax.pp.
765 * psyntax.pp: Removed leading blanks => 800K -> 100K.
767 Tue Aug 19 02:39:41 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
769 * syncase.scm: Don't tamper with debug mode setting when enabling
770 macros. Instead cut the stack with start-stack.
771 Load psyntax.pp with recording of positions turned off.
773 * psyntax.pp, psyntax.ss (quasiquote): Changed fx= --> =.
775 * syncase.scm: New file: Guile-adaption for syntax-case macros.
776 * psyntax.pp, psyntax.ss: Syntax-case macros, portable version 2 by
777 R. Kent Dybvig, Oscar Waddell, Bob Hieb and Carl Bruggeman
779 Mon Aug 18 21:58:25 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
781 * session.scm: New file: Session support.
782 (apropos): New procedure: List bindings given regexp.
784 Sat Aug 16 18:44:24 1997 Gary Houston <ghouston@actrix.gen.nz>
786 * boot-9.scm: define tms accessors: clock, utime, stime, cutime,
789 Thu Aug 14 19:55:37 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
791 * emacs.scm (emacs-load): Something has changed in the reader so
792 that we now should set the port line count to the specified value
793 (linum) instead of (- linum 1).
795 * slib.scm (slib:load): Use load-from-path instead of
796 primitive-load-path so that backtraces get narrowed properly at
799 * boot-9.scm (top-repl): Save stack already in signal handler in
800 order to narrow it correctly.
801 (save-stack): Adjust narrowing tag for the top of load-stacks.
803 Tue Jul 29 01:18:08 1997 Gary Houston <ghouston@actrix.gen.nz>
805 * boot-9.scm (move->fdes, dup->port): use dup->fdes, not primitive-dup.
806 (dup->fdes): deleted, now done in C.
808 Sat Jul 26 08:00:42 1997 Gary Houston <ghouston@actrix.gen.nz>
810 * boot-9.scm (setenv): new procedure, scsh compatible.
812 Sat Jul 26 21:30:10 1997 Marius Vollmer <mvo@zagadka.ping.de>
814 * boot-9.scm (with-fluids): New macro to go with the
815 builtin `with-fluids*'.
817 Thu Jul 24 04:28:11 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
819 * slib.scm (install-require-module): In newer versions of slib
820 *catalog* is #f until the first access. Therefore we call
821 require:provided? for a random feature if *catalog* is #f.
823 Wed Jul 23 20:13:04 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
825 * boot-9.scm: If using emacs interface, enable backtraces
828 Mon Jul 21 06:45:45 1997 Gary Houston <ghouston@actrix.gen.nz>
830 * boot-9.scm (dup->port, dup->inport, dup->outport, dup->fdes,
831 dup, fdes->inport, fdes->outport, port->fdes): new procedures.
832 (duplicate-port): was a C primitive, now it's here.
833 (move->fdes): allow the first argument to be a file descriptor.
834 Return the modified port or file descriptor (was unspecified.)
836 Fri Jul 11 00:13:43 1997 Jim Blandy <jimb@floss.red-bean.com>
838 Changes to compile under gnu-win32, from Marcus Daniels:
839 * boot-9.scm (load-user-init): If HOME is unset, provide
842 * boot-9.scm (define-public): Changed to accomodate Hobbit.
844 Tue Jun 24 00:31:47 1997 Jim Blandy <jimb@floss.red-bean.com>
846 * boot-9.scm, debug.scm, hcons.scm, lineio.scm, mapping.scm,
847 poe.scm, slib.scm, tags.scm, threads.scm: Use normal list
848 notation, instead of #/ notation.
850 * expect.scm (expect-strings): Pass regexp/newline flag to
853 Mon Jun 23 16:13:38 1997 Jim Blandy <jimb@floss.red-bean.com>
855 Fix inconsistencies in parsing of #/ style lists.
856 * boot-9.scm (read-path-list-notation): New function.
857 (parse-path-symbol): Deleted. Replaced by above.
858 Plug in read-path-list-notation as the parser for #/ lists,
859 instead of the anonymous lambda form calling parse-path-symbol.
860 (Thanks to Maurizio Vitale.)
862 * boot-9.scm (make-list): Remove the definition of this function
863 from the (ice-9 common-list) module; make the `init' argument
864 optional in the scm module's definition, to match the deleted
865 definition. Harmony reigneth? (Thanks to Bernard URBAN.)
867 Sun Jun 22 18:33:17 1997 Jim Blandy <jimb@floss.red-bean.com>
869 Try to detect when people are using one version of libguile and a
870 different version of ice-9. People have been skewing things and
871 sending in bug reports.
872 * version.scm.in: New file, which the configure script munges to
873 produce version.scm, which contains the ice-9 config stamp.
874 * boot-9.scm: Compare the libguile and ice-9 config stamps;
875 display a warning if the two are different.
876 * Makefile.am: Install version.scm, but don't distribute it.
877 Distribute version.scm.in, but don't install it.
878 * Makefile.in: Regenerated.
880 Thu Jun 19 21:01:16 1997 Jim Blandy <jimb@floss.red-bean.com>
882 * slib.scm (slib:warn): Alias for WARN function.
884 Fri Jun 13 00:32:04 1997 Jim Blandy <jimb@floss.red-bean.com>
886 * boot-9.scm (struct-printer): Fix off-by-one error in range
887 check. Correctly check for struct printer tag.
889 * expect.scm: Turn this into a module, (ice-9 expect).
890 (expect-port, expect-timeout, expect-timeout-proc,
891 expect-eof-proc, expect-char-proc, expect, expect-strings,
892 expect-select): Make these public definitions.
893 (expect-strings): Use make-regexp and regexp-exec, instead of
894 regcomp and regexec. We've omitted the REG_NEWLINE flag; hope
897 * boot-9.scm (with-regexp-parts): Comment this out. It has no
898 users in the core, and relies on mildly hairy details of the old
901 * test.scm: Re-enable tests asserting that '() is true, and not a
902 boolean. This stuff has been true for a while.
904 * boot-9.scm (ipow-by-squaring, butlast): Fix uses of outdated
907 * boot-9.scm (with-excursion-getter-and-setter, q-rear): Doc
910 Wed Jun 11 00:31:40 1997 Jim Blandy <jimb@floss.red-bean.com>
912 * Makefile.in: Regenerated after xtra_PLUGIN_guile_libs change in
915 Fri Jun 6 14:37:18 1997 Marius Vollmer <mvo@zagadka.ping.de>
917 * boot-9.scm (struct-printer): Bugfix: Check the layout of the
918 vtable and not the one of the struct.
920 Wed Jun 4 23:27:16 1997 Marius Vollmer <mvo@zagadka.ping.de>
922 * boot-9.scm (struct-layout, %struct-printer-tag, struct-printer,
923 make-struct-printer, set-struct-printer-in-vtable!): New bindings
924 to support printing of structures.
925 (record-type-vtable, make-record-type): Add slot to hold printing
926 function and initialize it with something appropriate. Removed
927 commented out printing code.
928 (record-type-name, record-type-fields): Adjusted slot offsets.
929 (%print-module): Reduce argument list to "mod" and "port".
931 Tue Jun 3 17:04:18 1997 Jim Blandy <jimb@totoro.cyclic.com>
933 * slib.scm (identity): New function, used by SLIB.
935 Sat May 31 18:57:12 1997 Gary Houston <ghouston@actrix.gen.nz>
937 * boot-9.scm: signal-handler, alarm-thunk: removed.
938 don't define ticks-interrupt etc.
939 top-repl: install signal handlers for SIGINT, SIGFPE, SIGSEGV, SIGBUS
940 during call to scm-style-repl.
942 Fri May 30 18:08:10 1997 Jim Blandy <jimb@floss.cyclic.com>
944 * slib.scm (slib:load): Use primitive-load-path instead of
945 basic-load. This is probably wrong, but hopefully the entire
946 source access system will be revised soon anyway, and this will
947 make require behave more like Emacs Lisp's require. If this
948 breaks something, please let me know. Maybe this is real dumb.
950 Thu May 29 02:36:48 1997 Jim Blandy <jimb@floss.cyclic.com>
952 * regex.scm: Add a module declaration. Use DEFINE-PUBLIC everywhere.
953 * boot-9.scm: If the `regex' feature is present, use the module
956 Tue May 27 22:48:14 1997 Tim Pierce <twp@twp.tezcat.com>
958 * regex.scm: New file.
959 * Makefile.am (subpkgdata_DATA): Add regex.scm.
960 * Makefile.in: Regenerated.
962 Mon May 26 17:24:48 1997 Jim Blandy <jimb@totoro.cyclic.com>
964 * COPYING, boot-9.scm, debug.scm, emacs.scm, expect.scm, gtcl.scm,
965 gwish.scm, hcons.scm, lineio.scm, mapping.scm, nonblocking.scm,
966 oldprint.scm, poe.scm, r4rs.scm, source.scm, tags.scm, test.scm,
967 threads.scm: New address for FSF.
969 Fri May 16 04:09:45 1997 Jim Blandy <jimb@floss.cyclic.com>
971 * debug.scm: Update copyright years; this file has been worked on
974 Thu May 15 07:56:08 1997 Gary Houston <ghouston@actrix.gen.nz>
976 * expect.scm: use gettimeofday instead of get-internal-real-time
977 and use a floating point timeout when calling select. Untested,
978 since the regex library is currently AWOL.
980 Wed May 14 21:00:30 1997 Jim Blandy <jimb@floss.cyclic.com>
982 * boot-9.scm (eval-string): Function deleted; it was already
983 implemented in C, so there's no point in making a divergable copy
986 Tue May 13 16:40:06 1997 Jim Blandy <jimb@floss.cyclic.com>
988 * Makefile.in: Regenerated, using automake-1.1p.
990 Tue May 13 16:40:06 1997 Jim Blandy <jimb@floss.cyclic.com>
992 * Makefile.in: Regenerated, using automake-1.1p.
994 Tue May 13 02:48:49 1997 Gary Houston <ghouston@actrix.gen.nz>
996 * boot-9.scm (error-catching-loop): don't read a line from
997 current input when quit is encountered, the previous change
1000 Mon May 12 19:00:21 1997 Jim Blandy <jimb@floss.cyclic.com>
1002 * boot-9.scm (scm-style-repl): After reading an expression,
1003 consume any trailing newline (perhaps preceded by whitespace), to
1004 avoid screwing up GDB. More detail in comments.
1006 Mon May 5 13:18:38 1997 Jim Blandy <jimb@floss.cyclic.com>
1008 * Makefile.am (ETAGS_ARGS): New variable, since we're not treating
1009 the Scheme code like code yet.
1010 * Makefile.in: Resrac,husrched.
1012 Wed Apr 30 15:25:15 1997 Marius Vollmer <mvo@zagadka.ping.de>
1014 * boot-9.scm (link-dynamic-module): Do not catch errors from
1015 dynamic-link and dynamic-call. When the shared library exists it
1016 is now assumed to be suitable for a dynamic C module.
1018 Fri Apr 25 21:21:35 1997 Marius Vollmer <mvo@zagadka.ping.de>
1020 * boot-9.scm (process-use-modules): New function to support the
1022 (use-modules): throw an error iff one of the requested modules
1025 Tue Apr 29 06:54:46 1997 Gary Houston <ghouston@actrix.gen.nz>
1027 * boot-9.scm: don't define timer-thunk or gc-thunk.
1029 Sun Apr 27 17:56:09 1997 Jim Blandy <jimb@floss.cyclic.com>
1031 * aclocal.m4: Removed; unnecessary, given changes of Apr 24.
1033 * Makefile.am (subpkgdatadir): Use "ice-9" instead of "@module@";
1034 we're not using AM_INIT_GUILE_MODULE any more.
1035 * Makefile.in: Regeneratitetedrerd.
1037 Thu Apr 24 01:33:33 1997 Jim Blandy <jimb@floss.cyclic.com>
1039 Get 'make dist' to work again.
1040 * Makefile.am (EXTRA_DIST): Remove PLUGIN files.
1041 * Makefile.in: Regenerated, like two tons of fleas.
1043 Changes for reduced Guile distribution: one configure script,
1045 * configure.in, configure: Removed.
1046 * Makefile.in: Regenerated.
1048 Sat Apr 19 08:03:50 1997 Jim Blandy <jimb@floss.cyclic.com>
1050 * boot-9.scm (eval-string, command-line, load-user-init): New
1053 Sat Apr 12 08:27:05 1997 Gary Houston <ghouston@actrix.gen.nz>
1055 * boot-9.scm (log10): defined.
1057 Tue Apr 1 17:46:49 1997 Gary Houston <ghouston@actrix.gen.nz>
1059 * expect.scm (expect-select): correct the millisecond timeout
1060 arithmetic (from Marko.Kohtala@ntc.nokia.com).
1062 Mon Mar 31 03:23:19 1997 Gary Houston <ghouston@actrix.gen.nz>
1064 * boot-9.scm (open-input-pipe, open-output-pipe): defined here
1065 instead of in libguile.
1066 (tm:sec etc.) new accessors for broken-down time.
1067 (set-tm:sec etc.) new setters for broken-down time.
1069 Thu Mar 27 05:06:00 1997 Gary Houston <ghouston@actrix.gen.nz>
1071 * boot-9.scm (netent:addrtype, servent:port): added missing
1073 (netent:net, servent:proto): repaired.
1074 (utsname:sysname etc.): new accessors for uname.
1076 Tue Mar 25 03:04:03 1997 Gary Houston <ghouston@actrix.gen.nz>
1078 * boot-9.scm (sockaddr:fam, sockaddr:path, sockaddr:addr,
1079 sockaddr:port): new functions.
1081 Wed Mar 19 04:50:34 1997 Gary Houston <ghouston@actrix.gen.nz>
1083 * boot-9.scm: define accessor procedures for the objects returned
1084 by getpw, getgr, gethost, getnet, getproto, getserv (e.g.,
1085 passwd:name, where the first component is the name of the C structure
1086 and the second is the unprefixed C member name.)
1088 Tue Mar 18 18:39:31 1997 Gary Houston <ghouston@actrix.gen.nz>
1090 * boot-9.scm (setpwent, setgrent, sethostent, setnetent, setprotoent,
1091 setservent): no longer take an argument, it was bogus.
1093 Thu Mar 13 00:13:41 1997 Gary Houston <ghouston@actrix.gen.nz>
1095 * boot-9.scm (scm-error): deleted, reimplemented in C.
1097 Mon Mar 10 15:48:31 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1099 * boot-9.scm (process-define-module): Modified to handle both
1100 keywords and symbols.
1102 Sat Mar 8 04:32:44 1997 Gary Houston <ghouston@actrix.gen.nz>
1104 * slib.scm: update read usage.
1106 * r4rs.scm: update primitive-load usage.
1107 Don't define read-sharp.
1109 * boot-9.scm: use read-hash-extend to install extra read syntax.
1110 (read-sharp): removed.
1111 Adjust usage of primitive-load-path, read, which no longer take
1112 case_i or read-sharp arguments.
1114 Sat Mar 8 00:07:54 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1116 * boot-9.scm: Added loading of session support module.
1118 * debug.scm: Removed `display-application'. (Replaced by
1119 primitive procedure.)
1121 * boot-9.scm (beautify-user-module!): Don't add the root module
1122 interface to the end of the use-list of the root module.
1124 Thu Mar 6 07:26:34 1997 Gary Houston <ghouston@actrix.gen.nz>
1126 * boot-9.scm: repl-quit, repl-abort: obsolete variables deleted.
1128 Wed Mar 5 20:30:24 1997 Gary Houston <ghouston@actrix.gen.nz>
1130 * boot-9.scm: check use-emacs-interface for emacs support.
1132 Sun Mar 2 19:47:14 1997 Gary Houston <ghouston@actrix.gen.nz>
1134 * boot-9.scm (scm-style-repl): call repl-report-start-timing if
1136 * (exit): alias for quit.
1138 Sun Mar 2 05:25:11 1997 Gary Houston <ghouston@actrix.gen.nz>
1140 * boot-9.scm (error-catching-loop thunk): use a status variable to
1141 return the quit args.
1142 (scm-style-repl): call -quit, passing return value from
1143 error-catching-repl. Make -quit return its args.
1144 stand-alone-repl: comment out, since it seems unused.
1146 (error-catching-loop thunk): discard trailing junk after a (quit).
1148 Sat Mar 1 15:24:39 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1150 * boot-9.scm: Removed the old printer code.
1152 * r4rs.scm (apply, call-with-current-continuation): Added comment
1153 explaining why apply and call/cc need to be closures.
1155 * boot-9.scm (apply, call-with-current-continuation): Bugfix:
1156 Removed. These definitions are already present in r4rs.scm.
1158 * debug.scm (trace-entry, trace-exit): Check that we're on a repl
1159 stack before printing traced frames; Re-enable trace flag at end
1162 Sat Mar 1 00:10:38 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1164 * debug.scm: Add hook for reset of trace level at abort.
1166 * boot-9.scm (run-hooks): New procedure.
1167 (add-hooks!): New macro.
1168 Change hooks to use these functions.
1170 * debug.scm: *Warning* This feature is a bit premature. I add
1171 it anyway because 1. it is very useful, and, 2. you can start
1172 making it less premature by complaining to me and by modifying
1174 (trace): Given one or more procedure objects, trace each one.
1175 Given no arguments, show all traced procedures.
1176 (untrace): Given one or more procedure objects, untrace each one.
1177 Given no arguments, untrace all traced procedures. The tracing in
1178 Guile have an advantage to most other systems: We don't create new
1179 procedure objects, but mark the procedure objects themselves.
1180 This means that also anonymous and internal procedures can be
1183 * boot-9.scm (error-catching-loop): Added handling of apply-frame
1184 and exit-frame exceptions.
1186 * boot-9.scm (assert-repl-prompt, the-prompt-string): Removed.
1187 (set-repl-prompt!): Setter for repl prompt.
1188 (scm-style-repl): If prompt is #f, don't prompt; if prompt is a
1189 string, display it; if prompt is a thunk, call it and display its
1190 result; otherwise display "> ".
1191 (Change suggested by Roland Orre <orre@nada.kth.se>.)
1193 * r4rs.scm (%load-verbosely): Reverted change to
1194 `module-defined?', since the module system isn't bootstrapped when
1195 we load r4rs.scm. This is just a temporary fix to make the
1196 repository version runnable.
1198 Thu Feb 27 23:25:47 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1200 * boot-9.scm: Removed the enabling of debug evaluator and
1201 recording of source code positions. This was placed there for our
1202 convenience, but it has already sneaked into the distribution
1203 once... so we'd better add this in our local copies instead when
1204 we need it. (These options are normally enabled at the end of
1205 boot-9.scm when loading the debug module.)
1207 Thu Feb 27 16:04:45 1997 Marius Vollmer <mvo@zagadka.ping.de>
1209 * boot-9.scm (module-defined?): New function.
1210 (macroexpand-1, macroexpand): Use local-ref instead of defined?
1212 * r4rs.scm (%load-verbosely): Use "module-defined?" instead of
1214 * slib.scm (defined?): New function to take the place of the
1215 builtin "defined?". It allways examines the slib module.
1217 Mon Feb 24 21:46:15 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1219 * configure.in: Added AM_MAINTAINER_MODE
1221 Sat Feb 15 04:51:20 1997 Gary Houston <ghouston@actrix.gen.nz>
1223 * boot-9.scm (read-sharp): define directly, don't go through a
1226 Tue Feb 11 08:45:48 1997 Gary Houston <ghouston@actrix.gen.nz>
1228 * boot-9.scm (uniform-vector-set!): use uniform-array-set1!, not
1229 uniform-vector-set1! which doesn't exist.
1231 Mon Feb 10 03:01:48 1997 Mikael Djurfeldt <mdj@kenneth>
1233 * boot-9.scm (backtrace): Removed. (A C version now exists in
1236 Fri Jan 24 06:05:36 1997 Gary Houston <ghouston@actrix.gen.nz>
1238 * boot-9.scm (read-line!, read-delimited!, read-delimited,
1239 read-line): new procedures, see libguile/ChangeLog.
1241 Thu Jan 16 17:07:03 1997 Marius Vollmer <mvo@zagadka.ping.de>
1243 Added dynamic linking of modules. See libguile/DYNAMIC-LINKING.
1245 * boot-9.scm (split-c-module-name, convert-c-registered-modules,
1246 init-dynamic-module, dynamic-maybe-call,
1247 find-and-link-dynamic-module, link-dynamic-module,
1248 try-module-dynamic-link, registered-modules): New definitions for
1249 dynamic linking of modules.
1250 (resolve-module): Try to dynamically link the requested module
1251 after failing to load it as Scheme code.
1253 Wed Jan 8 05:50:14 1997 Gary Houston <ghouston@actrix.gen.nz>
1255 * boot-9.scm (getservbyport, getservbyname): remove stray %.
1257 Tue Jan 7 20:02:24 1997 Jim Blandy <jimb@floss.cyclic.com>
1259 * boot-9.scm (and=>): Rename THUNK argument to PROCEDURE, 'cos
1262 * lineio.scm (make-line-buffering-input-port): Properly test for
1263 the case of an empty buffer list. The old code assumed that '()
1266 Mon Jan 6 01:13:53 1997 Mikael Djurfeldt <mdj@kenneth>
1268 * boot-9.scm (use-modules): New macro (from Marius Vollmer).
1269 (use-modules <module name> ...) Put the the modules named by
1270 <module name> ... on the use list of the current module.
1272 Sun Jan 5 15:52:59 1997 Jim Blandy <jimb@floss.cyclic.com>
1274 * boot-9.scm (error-catching-loop): Remove message saying that
1275 typing "$" will put you in the debugger. This isn't implemented
1278 Sun Dec 22 23:27:25 1996 Jim Blandy <jimb@floss.cyclic.com>
1280 * boot-9.scm (delq-all!): Function deleted; delq!'s semantics have
1281 been fixed, so this function is superfluous.
1282 (transform-usage-lambda): Use delq!, not delq-all!.
1284 Tue Dec 17 20:36:45 1996 Marius Vollmer <mvo@zagadka.ping.de>
1286 * boot-9.scm (resolve-module): New optional parameter that
1287 controls whether autoloading is attempted or not. Default is #t.
1288 (process-define-module): Don't autoload the defined module.
1289 (try-module-autoload): Don't autoload the directory modules.
1291 * boot-9.scm (process-define-module): Ensure that the-scm-module
1292 is last in the `uses' list to allow shadowing builtin
1293 bindings. All :use-module options are added in the order they
1294 appear in the arguments but before anything already on the list
1295 (such as the-scm-module).
1297 Wed Dec 11 21:06:05 1996 Gary Houston <ghouston@actrix.gen.nz>
1299 * slib.scm (slib-parent-dir): throw error if #f returned from
1302 Sat Nov 30 23:57:28 1996 Tom Tromey <tromey@cygnus.com>
1304 * PLUGIN/greet, PLUGIN/split.sed, PLUGIN/this.configure: Removed.
1305 * Makefile.am, aclocal.m4: New files.
1306 * configure.in: Updated for Automake.
1308 Wed Nov 27 14:16:14 1996 Marius Vollmer <mvo@zagadka.ping.de>
1310 * boot-9.scm (macroexpand-1, macroexpand), slib.scm
1311 (slib:features), r4rs.scm (%load-verbosely): "defined?" is now a
1312 function, use it accordingly.
1314 Thu Nov 21 11:12:10 1996 Jim Blandy <jimb@floss.cyclic.com>
1316 It's an "eval closure", not an "eval thunk." A thunk is a
1317 function of no arguments.
1318 * boot-9.scm (module-type): Rename module field.
1319 (make-module, eval-in-module, make-root-module,
1320 set-current-module): Uses changed.
1321 (module-eval-closure, set-module-eval-closure!,
1322 root-module-closure): Renamed from module-eval-thunk,
1323 set-module-eval-thunk!, root-module-thunk.
1324 (set-current-module): Change uses of *top-level-lookup-thunk* to
1325 *top-level-eval-closure*.
1327 Wed Nov 20 14:45:27 1996 Jim Blandy <jimb@totoro.cyclic.com>
1329 * slib.scm (slib-parent-dir): Use string-length, not length.
1330 (Thanks to Bernard Urban.)
1332 Sat Nov 2 20:00:42 1996 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1334 * boot-9.scm: The debugging evaluator and recording of positions
1335 aren't enabled by default any longer (they are switched on in
1336 debug.scm). But during development we want to have them also
1337 *inside* boot-9.scm. Therefore, two lines are added at the
1338 beginning of boot-9.scm to enable these.
1340 Call `provide' so that `records' are included among the
1343 The scheme for saving the stack has been adjusted: save-stack is
1344 now commonly available for saving the stack. Calling `save-stack'
1345 sets a flag `stack-saved?' which prevents overwriting the stack.
1346 `stack-saved?' is reset at `abort'.
1348 Spelling correction: seperate --> separate.
1350 Removed `:'s that had creeped into some comments.
1352 The repl now doesn't print #<unspecified> results any longer
1353 If the user wants to see this, he can do
1354 (assert-repl-print-unspecified #t) in his startup file.
1356 The user now gets a friendly message instead of a backtrace at
1359 Added `before-read-hook'.
1361 Load module (ice-9 emacs) if option `-e' was specified.
1363 (provide): New function.
1365 (error): Save stack at entry, so that Guile entrails won't show up
1368 (backtrace): New function.
1370 (save-stack): Can now take arbitrary number of stack narrowing
1371 specifier pairs. The first specifier in a pair controls inner
1372 border, the second the outer border. A number means cut that
1373 number of frames, a procedure object means cut until that object
1374 is found in operator position in a frame.
1376 * debug.scm: Enable debugging evaluator and recording of positions
1379 * slib.scm (slib:load): Adapt to the new behavior of
1380 primitive-load: It doesn't any longer try both with and without
1381 ".scm" extension. (We don't want to use %search-load-path here.)
1383 (implementation-vicinity): New function. slib requires it
1385 (library-vicinity): Updated.
1387 Load "require.scm" in the library-vicinity.
1389 (install-require-vicinity, install-require-module): New functions.
1391 Mon Oct 28 17:56:29 1996 Jim Blandy <jimb@floss.cyclic.com>
1393 * boot-9.scm (load-from-path): New function.
1395 * boot-9.scm (try-load, basic-try-load, try-load-module,
1396 try-load): Deleted. I don't think they're being used.
1398 * Makefile.in (scm_files): Add r4rs.scm and test.scm to this list,
1399 so they'll get distributed.
1401 Get Guile to be a little less chatty by default. The new user
1402 should see as little clutter as possible.
1403 * r4rs.scm (%load-verbosely): Make this #f by default.
1404 * boot-9.scm (scm-repl-verbose): Make this #f by default.
1405 (scm-style-repl): Don't run 'pk' on the value passed to quit.
1407 * r4rs.scm: New file.
1408 * boot-9.scm: Load r4rs.scm, first thing.
1409 (OPEN_READ, OPEN_WRITE, OPEN_BOTH, *null-device*, open-input-file,
1410 open-output-file, open-io-file, close-input-port,
1411 close-output-port, close-io-port, call-with-input-file,
1412 call-with-output-file, with-input-from-port, with-output-to-port,
1413 with-error-to-port, with-input-from-file, with-output-to-file,
1414 with-error-to-file, with-input-from-string, with-output-to-string,
1415 with-error-to-string, the-eof-object): Definitions moved to
1416 r4rs.scm. Not all of them are R4RS, but those that are use those
1418 (load, %load-verbosely, %load-announce): Moved, along with code to
1419 set %load-hook, to r4rs.scm.
1421 * test.scm: New file.
1423 * boot-9.scm (integer?): Definition deleted, in favor of the one
1424 present in libguile (which used to be called int?). I have no
1425 idea why integer? didn't just call int? to begin with.
1427 * boot-9.scm (<, <=, =, >, >=): Definitions in terms of <?, <=?,
1428 =?, >?, and >=? deleted; they're defined that way by libguile now.
1430 * boot-9.scm (load): Simplified; primitive-load does most of this
1432 (%load-announce-win): Removed; no longer used. Set %load-hook to
1433 call %load-announce.
1435 Sun Oct 27 07:47:03 1996 Gary Houston <ghouston@actrix.gen.nz>
1437 * boot-9.scm (stat:dev, stat:ino, stat:mode, stat:nlink, stat:uid,
1438 stat:gid, stat:rdev, stat:size, stat:atime, stat:mtime,
1439 stat:ctime, stat:blksize, stat:blocks) accessor functions for stat
1441 (file-is-directory?): use stat:type.
1443 Fri Oct 25 03:34:47 1996 Jim Blandy <jimb@floss.cyclic.com>
1445 * boot-9.scm (%read-sharp): Don't recognize the `#!' syntax here;
1446 that's now taken care of in libguile, and in a way compatible with
1447 SCSH (which this isn't).
1449 Mon Oct 21 18:52:36 1996 Jim Blandy <jimb@totoro.cyclic.com>
1451 * boot-9.scm: Formatting tweaks.
1453 Fri Oct 18 01:03:08 1996 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1455 * boot-9.scm (handle-system-error): Added hooks before-error-hook,
1456 after-error-hook, before-backtrace-hook and after-backtrace-hook
1457 to the error handler. E.g.: fancy emacs support could plug into
1459 (save-stack): New function. The stack is now made differently
1460 depending on the stack id. (The motivation is to make a better
1461 choice regarding what stack frames to present to the user.)
1462 (error-catching-loop): Stack handling code moved outside into
1465 Thu Oct 17 20:33:08 1996 Gary Houston <ghouston@actrix.gen.nz>
1467 * Makefile.in (scm_files): add expect.scm.
1469 * expect.scm: new file ported from guile-iii.
1471 * boot-9.scm: remove handle-system-error, after moving the code into
1472 error-catching-loop.
1473 Don't set 'throw-handler-default property on error keys.
1474 Just interpret (almost) any throw with 4 args as an error throw.
1475 Delete some try-load stuff that was already commented out.
1477 Second thoughts, keep handle-system-error but call it from
1478 error-catching-loop.
1480 Tue Oct 15 17:07:20 1996 Jim Blandy <jimb@floss.cyclic.com>
1482 * boot-9.scm: Doc fixes.
1483 (make-module): Rework for readability.
1484 (make-root-module, make-scm-module): USES argument to make-module
1485 should be '(), not #f.
1487 * boot-9.scm (try-load): %sys-load-path has been renamed to
1488 primitive-load-path; adjust call here.
1490 Tue Oct 15 14:25:01 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1492 * boot-9.scm (signal-handler): Bugfix: Moved the recording of
1493 the stack to the correct place: when it is decided to generate an
1496 Mon Oct 14 22:20:30 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1498 * boot-9.scm (error-catching-loop, signal-handler,
1499 handle-system-error): Backtracing now works for signals aswell;
1500 Backtracing mechanism can now identify the stack root created by
1501 start-stack so that the user isn't exposed to system stack frames.
1503 Mon Oct 14 06:05:42 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1505 * Makefile.in: Added threads.scm.
1507 Mon Oct 14 04:21:51 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1509 * debug.scm (make-enable, make-disable): Simplified.
1511 * boot-9.scm: Renamed %%throw-handler-default -->
1512 throw-handler-default.
1513 ((handle-system-error key . arg-list)): Changed the way errors are
1515 ((scm-style-repl)): Wrap up the call to eval in a start-stack
1517 ((error-catching-loop thunk)): Introduce a lazy-catch into
1518 error-catching-loop so that the stack can be captured.
1520 Thu Oct 10 22:27:32 1996 Jim Blandy <jimb@totoro.cyclic.com>
1522 * mapping.scm (hash-table-mapping): Explicitly request that
1523 make-vector fill new vectors with '(); this will make it easier to
1524 port Guile Scheme code to other Schemes.
1525 * boot-9.scm (make-print-style, make-print-table): Same.
1527 Sun Oct 6 03:54:59 1996 Gary Houston <ghouston@actrix.gen.nz>
1529 * boot-9.scm (load): rewritten again.
1530 Append "." to the default %load-path.
1531 (feature?): new function: checks for a symbol in the features list.
1532 (module-local-variable): remove apparently useless (caddr (list m v
1534 (%load-announce): minor formatting change.
1535 (file-exists?): use access? if posix is featured.
1536 (file-is-directory?): use stat if i/o-extensions is featured.
1537 (try-module-autoload module-name): use file-exists? before
1540 Sat Oct 5 18:54:03 1996 Mikael Djurfeldt <mdj@kenneth>
1542 * boot-9.scm: Added conditional loading of threads.scm.
1544 * threads.scm: New file. Modified from the Cygnus-r0.3
1547 * boot-9.scm (error-catching-loop): Added handling of key
1550 * boot-9.scm: Name change %%bad-throw --> bad-throw.
1552 Wed Oct 2 23:38:44 1996 Jim Blandy <jimb@totoro.cyclic.com>
1554 * boot-9.scm (make-record-type, record-constructor): Don't assume
1555 the empty list is false when parsing the argument list.
1557 Mon Sep 30 22:15:50 1996 Jim Blandy <jimb@totoro.cyclic.com>
1559 * boot-9.scm (signal-handler): Clean up logic.
1561 * boot-9.scm (load): Assume %load-path is always bound.
1563 Sat Sep 28 00:15:37 1996 Gary Houston <ghouston@actrix.gen.nz>
1565 * boot-9.scm (error): replace another throw with scm-error. Throw
1566 to 'misc-error instead of 'error (no need to distinguish these.)
1567 Don't set up 'error as a key.
1568 Set up regex-error as a key, if regex is available.
1569 (signal-handler): use scm-error, not throw.
1571 (%try-load, try-load-with-path, %load, load-with-path,
1572 basic-try-load-with-path, basic-load-with-path,
1573 try-load-module-with-path,load-module-with-path): deleted, since
1574 they seem redundant.
1575 (try-load): define using %try-load, not try-load-with-path.
1576 (load): rewritten. load tries to open the file directly and
1577 with a .scm extension before searching the library directories
1578 (should "." be added to %load-path? then load could still open
1579 directly files starting with "/").
1580 (try-module-autoload): use load, not load-with-path.
1581 (%load-indent): deleted, -2 was causing errors.
1583 (%read-sharp): use port-line, not line-number.
1585 Fri Sep 27 16:23:51 1996 Jim Blandy <jimb@totoro.cyclic.com>
1587 * boot-9.scm (%%bad-throw): Delete definition. 1) It's very
1588 straightforward to provide the equivalent functionality using
1589 (catch #t ...), so there's no need for the extra complexity. 2)
1590 Outside the context of a read-eval-print loop (which Guile should
1591 not require) it's not clear we should do anything more complicated
1592 than print an error and exit; the user or REPL can establish
1593 something better if it wants. 3) In that case, it's much more
1594 robust to just do it in the C code.
1596 Tue Sep 24 06:53:04 1996 Gary Houston <ghouston@actrix.gen.nz>
1598 * boot-9.scm (%try-load): define using primitive-load. Previously
1599 %try-load itself was the primitive.
1600 (load-with-path): use scm-error instead of %load-announce-lossage.
1601 Errors are thrown to 'misc-error instead of 'could-not-load.
1602 (%load-announce-lossage): deleted.
1604 Mon Sep 23 00:16:31 1996 Mikael Djurfeldt <mdj@kenneth>
1606 * boot-9.scm (warn, scm-style-repl): Use C printer instead of `print'.
1607 (make-record-type type-name fields): Temporarily remove support
1608 for printing of records (not possible yet with C printer).
1610 Fri Sep 20 00:24:27 1996 Gary Houston <ghouston@actrix.gen.nz>
1612 * boot-9.scm (file-exists?, file-is-directory): catch only
1613 system-error, not every kind of error.
1614 (scm-error): new procedure.
1616 Thu Sep 19 16:02:46 1996 Jim Blandy <jimb@totoro.cyclic.com>
1618 * boot-9.scm: Formatting tweaks.
1620 Wed Sep 18 09:07:37 1996 Gary Houston <ghouston@actrix.gen.nz>
1622 * boot-9.scm (%%handle-system-error key): remove the code for
1623 SCM-style errors. handle the case that an unexpected number
1624 of args are supplied.
1625 (%%system-errors): removed.
1626 (error): redefine using a throw with key and 4 args.
1627 ('error): associate 'error, 'error-signal keys with
1628 %%handle-system-error.
1629 (%%default-error-handler): removed.
1630 (signal-handler): throw with 4 args and use the error-signal key.
1631 Create an error message instead of using numerical codes.
1632 (%%bad-throw): call error instead of throw if key not found.
1634 Tue Sep 17 04:11:28 1996 Gary Houston <ghouston@actrix.gen.nz>
1636 * boot-9.scm: initialize new error keys (see libguile/ChangeLog).
1637 (%%handle-system-error key): check subr is not #f before printing.
1638 Recognize %s (embed an argument using "display") and
1639 %S (embed an argument using "write").
1641 Sun Sep 15 03:55:35 1996 Gary Houston <ghouston@actrix.gen.nz>
1643 * boot-9.scm (%%handle-system-error key): set args and rest to
1644 the empty list if they are #f.
1645 Initialize out-of-range as an error key.
1647 Sat Sep 14 03:41:15 1996 Gary Houston <ghouston@actrix.gen.nz>
1649 * PLUGIN/REQ: remove the "ice-9 lgh" line which causes a cycle.
1651 * boot-9.scm: remove leading %% from references to '%%system-error.
1652 (%%handle-system-error): don't pass all the thrown arguments when
1653 aborting, just the key and subr.
1654 Remove the code to "Install default handlers for built-in errors."
1655 Remove the definition of the syserror procedure.
1656 Associate 'numerical-overflow with default handler.
1658 Fri Sep 13 04:58:11 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1660 * boot-9.scm: Name change: value-ref --> local-ref
1661 resolved-ref --> nested-ref Motivation: conformance to the other
1662 dictionary operators: list-ref operates on list, vector-ref
1663 operates on vector, nested-ref operates on nested namespace,
1664 local-ref operates on the local nested namespace.
1666 Sat Sep 7 06:44:47 1996 Gary Houston <ghouston@actrix.gen.nz>
1668 * boot-9.scm (%%handle-system-error): recognise errors thrown
1669 by lgh-error (fill-message etc.)
1670 (fill-message): check first whether args is null.
1671 (fill-message): bug fix and check that args is a list.
1673 Thu Sep 5 11:33:41 1996 Jim Blandy <jimb@floss.cyclic.com>
1675 * boot-9.scm: %load-path is initialized in C code now.
1676 (implementation-vicinity, parse-path): Deleted, along with code to
1677 initialize %load-path.
1679 * boot-9.scm (in-vicinity): If the vicinity doesn't end with a
1680 "/", use one to separate it from the file.
1682 Thu Aug 29 23:05:11 1996 Thomas Morgan <tmorgan@gnu.ai.mit.edu>
1684 * boot-9.scm (%load-path): Add the site directory.
1685 Add the directory named after the version number.
1686 Prepend the version number to the other directories in the path.
1687 Simplify by mapping the common prefix onto each item.
1688 * Makefile.in (datadir, pkgdatadir, pkgverdatadir, subpkgdatadir,
1689 sitedatadir): New definitions.
1690 (libparent, libdir, install_path): Replaced by above.
1691 (install): Create the above directories.
1692 Put the source files into subpkgdatadir.
1693 (uninstall): Remove the above directories.
1695 Thu Aug 29 21:48:47 1996 Jim Blandy <jimb@floss.cyclic.com>
1697 Don't use the PLUGIN system to gather information for the
1698 Makefile's distribution and installation targets; just put it all
1699 in the Makefile directly.
1700 * PLUGIN/this.configure (scm_files, aux_files): Remove sections
1702 * configure.in: Remove code that gets and substitutes scm_files and
1704 * Makefile.in (scm_files, aux_files): Write out the list of files
1705 here, where people expect to find them.
1707 Fri Aug 23 06:44:36 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1709 * boot-9.scm: Preliminary solution: optionally load the debug
1710 module. Changed "gls" to "guile1.0b3".
1712 * debug.scm: New file: debug extensions.
1714 Wed Aug 21 13:06:56 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1716 * boot-9.scm (print-vector): Renamed weak-hash-table? -->
1717 weak-key-hash-table?. (Again!)
1719 Tue Aug 20 07:31:39 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1721 * boot-9.scm (print-vector, macro-table, xformer-table):
1722 Renamed weak-hash-table --> weak-key-hash-table.
1724 * poe.scm (funcq-memo): Renamed weak-hash-table -->
1725 weak-key-hash-table.
1727 Sat Aug 3 06:16:35 1996 Gary Houston <ghouston@actrix.gen.nz>
1729 * boot-9.scm (*null-device*): global constant from goonix.
1730 (move->fdes): adjusted for boolean primitive-move->fdes. return
1731 the modified port, always set revealed count to 1 (SCSH compatible).
1732 (release-port-handle port): from goonix (SCSH compatible).
1733 (%open-file): removed.
1734 (open-input-file, open-output-file, file-exists?, file-is-directory?):
1735 modified for open-file change (does not return #f).
1737 Thu Aug 1 02:52:42 1996 Jim Blandy <jimb@totoro.cyclic.com>
1739 * Makefile.in (dist-dir): New target for new dist system.
1740 (manifest): Deleted.
1741 * PLUGIN/this.configure (aux_files): Removed PLUGIN; it's a
1742 directory, and needs special treatment in the dist-dir target.
1744 Thu Aug 1 09:00:21 1996 Gary Houston <ghouston@actrix.gen.nz>
1746 * boot-9.scm: remove the wrappers for '%' system primitives,
1747 now that they throw errors directly.
1748 remove make-simple-wrapper and similar functions.
1749 protect a call to getenv which may now throw an exception.
1751 Wed Jul 31 23:44:42 1996 Gary Houston <ghouston@actrix.gen.nz>
1753 * boot-9.scm (false-if-exception): new macro.
1755 Fri Apr 19 13:53:08 1996 Tom Lord <lord@beehive>
1757 * The more things change...