*** empty log message ***
[bpt/guile.git] / ice-9 / ChangeLog
1 2002-10-04 Rob Browning <rlb@defaultvalue.org>
2
3 * boot-9.scm (expt): switch if sense and use negative? rather than
4 >= 0.
5
6 2002-10-04 Marius Vollmer <mvo@zagadka.ping.de>
7
8 * boot-9.scm (top-repl): Use "1" instead of "%deliver-signals" to
9 limit the signal stack.
10
11 2002-09-15 Marius Vollmer <mvo@zagadka.ping.de>
12
13 * boot-9.scm (feature?): Added deprecation message.
14
15 2002-09-14 Rob Browning <rlb@defaultvalue.org>
16
17 * boot-9.scm (sqrt): minor indentation fix.
18
19 2002-09-05 Marius Vollmer <mvo@zagadka.ping.de>
20
21 * syncase.scm: Set the module transformer of the-syncase-module so
22 that we can use define-syntax.
23 (define-syntax-public): New and exported.
24
25 2002-09-04 Marius Vollmer <mvo@zagadka.ping.de>
26
27 * syncase.scm (expansion-eval-closure, env->eval-closure): New.
28 (sc-macro): Set the expansion-eval-closure expanding the form.
29 (putprop, getprop): Use the expansion-eval-closure to find
30 variables instead of the current module.
31
32 2002-07-08 Marius Vollmer <mvo@zagadka.ping.de>
33
34 * slib.scm (make-exchanger): Added. Thanks to Clinton Ebadi!
35
36 2002-07-07 Dirk Herrmann <D.Herrmann@tu-bs.de>
37
38 * boot-9.scm (define-option-interface): Replaced "macro" by
39 mmacro.
40
41 2002-06-01 Gary Houston <ghouston@arglist.com>
42
43 * boot-9.scm (file-set-position): Make third argument optional,
44 for SCM compatibility.
45 (file-position): simplify definition.
46
47 2002-06-01 Marius Vollmer <mvo@zagadka.ping.de>
48
49 * boot-9.scm (file-set-position): Use seek instead of fseek.
50
51 2002-05-09 Marius Vollmer <mvo@zagadka.ping.de>
52
53 * format.scm (format:out-inf-nan): New.
54 (format:out-fixed, format:out-expon, format:out-general): Use it
55 to print infs and nans.
56
57 * boot-9.scm (unsetenv): New, for completeness.
58
59 2002-05-08 Marius Vollmer <mvo@zagadka.ping.de>
60
61 * format.scm (format:fn-max): Increase to 400 so ~f and ~g can
62 print long real numbers with large positive and negative
63 exponents.
64
65 2002-05-06 Marius Vollmer <mvo@zagadka.ping.de>
66
67 * syncase.scm: Use (ice-9 threads) so that with-mutex is defined.
68
69 2002-04-30 Thien-Thi Nguyen <ttn@giblet.glug.org>
70
71 * gap-buffer.scm: New file.
72
73 * Makefile.am (ice9_sources): Add gap-buffer.scm.
74
75 2002-03-12 Rob Browning <rlb@defaultvalue.org>
76
77 * syncase.scm: fix bad let.
78 (gensym): fix failure on non-threaded
79
80 2002-03-05 Thien-Thi Nguyen <ttn@giblet.glug.org>
81
82 * ftw.scm: New file.
83
84 * Makefile.am (ice9_sources): Add ftw.scm.
85
86 2002-02-26 Thien-Thi Nguyen <ttn@giblet.glug.org>
87
88 * Makefile.am: Update path to pre-inst-guile automake frag.
89
90 * boot-9.scm: Comment grammar fixes; nfc.
91 Thanks to Christopher Cramer.
92
93 2002-02-24 Rob Browning <rlb@defaultvalue.org>
94
95 * syncase.scm (gensym): redefine locally so we can control it's
96 properties. This is in preparation for changing the future public
97 gensym to produce unreadable symbols.
98
99 * psyntax.pp: updated to reflect new syncase.scm.
100
101 2002-02-07 Thien-Thi Nguyen <ttn@giblet.glug.org>
102
103 * regex.scm: Add commentary; nfc.
104
105 2002-02-05 Thien-Thi Nguyen <ttn@giblet.glug.org>
106
107 * Makefile.am: Include $(top_srcdir)/pre-inst-guile.am.
108
109 (psyntax.pp): Use $(preinstguile).
110
111 2002-01-14 Marius Vollmer <mvo@zagadka.ping.de>
112
113 * psyntax.ss (datum->syntax-object): Removed assertion in
114 datum->syntax-object that checked if the first argument, a
115 syntax-object, is an identifier. This was a unconvenient and
116 unnecessary restriction. Thanks to Dorai Sitaram!
117
118 2002-01-12 Marius Vollmer <mvo@zagadka.ping.de>
119
120 More options for pretty-print. Thanks to Matthias Köppe!
121
122 * pretty-print.scm (generic-write): New per-line-prefix argument.
123 (pretty-print): Check whether the new keyword argument style is
124 used and dispatch to pretty-print-with-keys accordingly.
125
126 2001-11-27 Marius Vollmer <mvo@zagadka.ping.de>
127
128 * format.scm (string-index, list-head): Removed, we already have
129 these in the core.
130
131 2001-11-06 Marius Vollmer <mvo@zagadka.ping.de>
132
133 * boot-9.scm (turn-on-debugging): New function, to be used by
134 scm_compile_shell_switches.
135
136 * debug.scm: Do not enable debugging and recording of source
137 positions.
138
139 2001-10-21 Mikael Djurfeldt <mdj@linnaeus>
140
141 * slib.scm (array-indexes): New procedure.
142 (*features*): Extend. (Probably some of these options should be
143 set elsewhere.) (Thanks to Aubrey Jaffer.)
144
145 * and-let-star-compat.scm, and-let-star.scm, calling.scm,
146 channel.scm, common-list.scm, debug.scm, debugger.scm,
147 expect.scm, hcons.scm, lineio.scm, ls.scm, mapping.scm,
148 null.scm, optargs.scm, poe.scm, popen.scm, pretty-print.scm,
149 q.scm, r5rs.scm, rdelim.scm, regex.scm, runq.scm, safe-r5rs.scm,
150 safe.scm, session.scm, slib.scm, streams.scm, string-fun.scm,
151 syncase.scm, threads.scm: Move module the system directives
152 `export', `export-syntax', `re-export' and `re-export-syntax'
153 into the `define-module' form. This is the recommended way of
154 exporting bindings.
155
156 2001-10-17 Mikael Djurfeldt <mdj@linnaeus>
157
158 * boot-9.scm (process-define-module): New options: :export-syntax,
159 :re-export-syntax
160
161 2001-10-14 Mikael Djurfeldt <mdj@linnaeus>
162
163 * arrays.scm (read:uniform-vector): Return *unspecified* instead
164 of raising an exception if hash extend character isn't followed by
165 the array list. (This prevents parsing of uniform vectors from
166 interfering with parsing of numbers.)
167
168 2001-10-08 Mikael Djurfeldt <mdj@linnaeus>
169
170 * emacs.scm (%%load-port, %%emacs-load, %%emacs-eval-request,
171 %%emacs-select-frame, %%emacs-frame-eval, %%emacs-symdoc,
172 %%apropos-internal): Use module-define! instead of
173 builtin-variable.
174
175 2001-09-24 Mikael Djurfeldt <mdj@linnaeus>
176
177 * boot-9.scm (process-define-module): Added :re-export.
178
179 2001-09-19 Thien-Thi Nguyen <ttn@glug.org>
180
181 * expect.scm: Commentary fix; nfc.
182
183 * boot-9.scm (process-use-modules): Fix typo.
184
185 2001-09-18 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
186
187 * Makefile.am (psyntax.pp): Reference compile-psyntax.scm in
188 $(srcdir) in order to support separate build trees.
189
190 2001-09-08 Thien-Thi Nguyen <ttn@revel.glug.org>
191
192 * optargs.scm (lambda*): Record the broken-down argument list in
193 the `arglist' procedure property.
194 * session.scm (arity): Use new `arglist' procedure property to
195 present a more detailed argument list.
196
197 Thanks to Matthias Köppe!
198
199 2001-09-07 Thien-Thi Nguyen <ttn@revel.glug.org>
200
201 * getopt-long.scm (process-options, getopt-long): Fix omission
202 bug: Handle multiple occurrances of an option. Thanks to Daniel
203 Skarda.
204
205 2001-08-31 Dirk Herrmann <D.Herrmann@tu-bs.de>
206
207 * boot-9.scm: Don't load module (ice-9 rdelim).
208
209 (feature?): Deprecated.
210
211 (id, -1+, return-it, string-character-length, flags,
212 eval-in-module, split-c-module-name,
213 (convert-c-registered-modules, registered-modules,
214 register-modules, warn-autoload-deprecation, init-dynamic-module,
215 dynamic-maybe-call, dynamic-maybe-link,
216 find-and-link-dynamic-module, try-using-libtool-name,
217 try-using-sharlib-name, link-dynamic-module, try-module-linked,
218 try-module-dynamic-link): Removed.
219
220 (module-make-local-var!, module-ensure-local-variable!,
221 module-define!): Eliminate call to `variable-set-name-hint!´.
222
223 (try-load-module, use-syntax, module-export!): Remove deprecated
224 functionality.
225
226 * format.scm: Remove deprecated definition of format that was
227 needed to trick export.
228
229 2001-08-31 Dirk Herrmann <D.Herrmann@tu-bs.de>
230
231 * optargs.scm: Remove #& reader extension.
232
233 2001-08-31 Dirk Herrmann <D.Herrmann@tu-bs.de>
234
235 * and-let-star-compat.scm: Deleted.
236
237 * Makefile.am: Remove references to and-let-star-compat.scm.
238
239 2001-08-30 Thien-Thi Nguyen <ttn@revel.glug.org>
240
241 * boot-9.scm (resolve-interface): When returning a custom
242 interface, also consult source module's entire binding set,
243 not just its exported bindings, before throwing error.
244
245 2001-08-25 Marius Vollmer <mvo@zagadka.ping.de>
246
247 * boot-9.scm (resolve-interface): Get variables from the public
248 interface of a module instead of from the module itselfs.
249
250 2001-08-25 Marius Vollmer <mvo@zagadka.ping.de>
251
252 * Makefile.am (AUTOMAKE_OPTIONS): Change "foreign" to "gnu".
253
254 2001-08-12 Thien-Thi Nguyen <ttn@revel.glug.org>
255
256 * getopt-long.scm: Rewrite.
257 Touch up docstrings.
258 Augment commentary.
259
260 2001-08-02 Neil Jerram <neil@ossau.uklinux.net>
261
262 * debugger.scm (run-last-command): Return current state if
263 last-command fluid is not yet set.
264
265 2001-08-02 Thien-Thi Nguyen <ttn@revel.glug.org>
266
267 * getopt-long.scm: Refill to fit in 80 columns.
268
269 (process-long-option): Fix bug: Keep track of `optional'
270 value-required info and use this to determine whether or not the
271 next element is to be taken as the option arg.
272
273 2001-07-31 Keisuke Nishida <knishida@nurs.or.jp>
274
275 * boot-9.scm (process-define-module): Fixed a bug that did not
276 handle :use-syntax correctly.
277
278 2001-07-24 Marius Vollmer <mvo@zagadka.ping.de>
279
280 * syncase.scm (psyncomp): Removed, it is now in
281 compile-psyntax.scm.
282
283 2001-07-23 Marius Vollmer <mvo@zagadka.ping.de>
284
285 * Makefile.am (psyntax.pp): Enable rule for psyntax.pp only in
286 maintainer mode. Use compile-psyntax.scm for actual compilation.
287 Make sure the uninstalled guile is used.
288 (EXTRA_DIST): Distribute compile-psyntax.scm
289 * compile-psyntax.scm: New file.
290
291 2001-07-18 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
292
293 * and-let-star.scm, debug.scm, debugger.scm, history.scm,
294 lineio.scm, null.scm, optargs.scm, r4rs.scm, r5rs.scm,
295 receive.scm, safe-r5rs.scm, streams.scm: Updated copyright notice.
296
297 2001-07-17 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
298
299 * r5rs.scm: Use `re-export' instead of `export' for re-exported
300 primitives. Thanks Neil!
301
302 2001-07-13 Marius Vollmer <mvo@zagadka.ping.de>
303
304 * safe-r5rs.scm: Use `re-export' instead of `export' for
305 re-exported core bindings. Do not re-export `numerator',
306 `denominator' and `rationalize' since Guile does not have them.
307 Continue to use `export' for `null-environment'.
308
309 * null.scm: Use `re-export' instead of `export' for re-exported
310 core bindings. Do not export `unquote' and `unquote-splicing'
311 since there aren't definitions for them.
312
313 * boot-9.scm (compile-interface-spec): Bug fix: the keyword
314 argument is "renamer" not "rename".
315
316 2001-07-09 Rob Browning <rlb@defaultvalue.org>
317
318 * boot-9.scm: Fixed the sense of the error message when read-eval?
319 is #f. Thanks to Matthias for catching this.
320
321 2001-07-06 Rob Browning <rlb@defaultvalue.org>
322
323 * boot-9.scm: added fix suggested by Matthias for #. read
324 extension -- now only works if read-eval? is not #f.
325
326 2001-06-30 Dirk Herrmann <D.Herrmann@tu-bs.de>
327
328 * arrays.scm: Don't install a read-hash-extension for 'b': #b
329 is already defined by R5RS. Further, there is already a working
330 read syntax for bitvectors, starting with #*.
331
332 2001-06-30 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
333
334 * Makefile.am (ice9_sources): Removed tags.scm.
335
336 * tags.scm: Removed file.
337
338 2001-06-29 Neil Jerram <neil@ossau.uklinux.net>
339
340 Changes to support tracing other than inside the repl-stack that
341 is set up by the REPL code in boot-9.scm.
342
343 * debug.scm (trace-entry, trace-exit): Conditionalize tracing on
344 whether the current stack id is in `traced-stack-ids'.
345 (traced-stack-ids, trace-all-stacks?, trace-stack, untrace-stack):
346 New.
347
348 2001-06-27 Marius Vollmer <mvo@zagadka.ping.de>
349
350 * common-list.scm (member-if): Put in docstring for member-if, it
351 was a cut-n-paste error previously.
352
353 2001-06-26 Neil Jerram <neil@ossau.uklinux.net>
354
355 * debug.scm (trace): Set evaluator trap options to handle tracing.
356 Don't reset trace-level to 0.
357
358 * boot-9.scm (lazy-handler-dispatch): Remove enter-frame-handler,
359 apply-frame-handler and exit-frame-handler. (They're replaced by
360 evaluator trap options.)
361
362 2001-06-25 Michael Livshin <mlivshin@bigfoot.com>
363
364 * streams.scm (stream-for-each-many): typo fix.
365
366 2001-06-25 Marius Vollmer <mvo@zagadka.ping.de>
367
368 * boot-9.scm (re-export-syntax): New.
369
370 2001-06-16 Marius Vollmer <mvo@zagadka.ping.de>
371
372 * boot-9.scm (system-error-errno): New.
373
374 2001-06-14 Marius Vollmer <mvo@zagadka.ping.de>
375
376 * common-list.scm (remove-if, remove-if-not): Fix typo: use
377 `pred', not `pred?', in the body.
378
379 2001-06-13 Thien-Thi Nguyen <ttn@revel.glug.org>
380
381 * match.scm:
382 No longer use module `(ice-9 slib)'.
383 Use module `(ice-9 pretty-print)'.
384 No longer require `pretty-print'.
385
386 (slib:error): Delete.
387 (match:error, match:syntax-err): Rewrite.
388
389 Thanks to Dale P. Smith.
390
391 * README: New file.
392
393 * common-list.scm:
394 Clean up some docstrings; nfc.
395 Add Commentary.
396 Update copyright.
397
398 2001-06-11 Marius Vollmer <mvo@zagadka.ping.de>
399
400 * boot-9.scm: Use `begin-deprecated' instead of testing
401 `include-deprecated-features' when conditionally using the (ice-9
402 rdelim) module. See below.
403
404 2001-06-10 Gary Houston <ghouston@arglist.com>
405
406 * boot-9.scm: use the (ice-9 rdelim) module if
407 include-deprecated-features is true.
408
409 2001-06-09 Marius Vollmer <mvo@zagadka.ping.de>
410
411 * pretty-print.scm (generic-write): Use `object->string' to print
412 unknown objects.
413
414 * optargs.scm (lambda*): Make sure that BODY is always put into a
415 real body context so that it can contain internal definitions.
416 Thanks to Matthias Köppe!
417
418 * format.scm: Use (ice-9 and-let-star).
419 (format:out): Initialize format:output-col with current column of
420 `port', if it has one. Else leave it alone. Thanks to Matthias
421 Köppe!
422
423 2001-06-05 Marius Vollmer <mvo@zagadka.ping.de>
424
425 * boot-9.scm (module-ensure-local-variable!): Renamed from
426 `module-ensure-variable!'. Make sure that there really is a local
427 variable, not just a visible one.
428 (module-ensure-variable!): See above.
429 (module-export!): Behave like always when deprecated features are
430 enabled, but issue a warning when re-exporting a variable. When
431 deprecated features are disabled, only export local variables,
432 creating them uninitialized when they don't yet exist.
433 (module-re-export!): New. Use this for re-exporting imported
434 variables.
435 (re-export): New, to go with `module-re-export!'.
436
437 * format.scm: Added kluge at top that keeps `export' from
438 re-exporting the `format' variable of the `(guile)' module.
439
440 2001-06-04 Marius Vollmer <mvo@zagadka.ping.de>
441
442 * boot-9.scm (named-module-use!, top-repl): Use resolve-interface
443 instead of resolve-module to get at the used module.
444
445 2001-06-04 Gary Houston <ghouston@arglist.com>
446
447 * rw.scm: export write-string/partial.
448
449 2001-06-04 Marius Vollmer <mvo@zagadka.ping.de>
450
451 Added exception notice to all files.
452
453 * boot-9.scm (module-export!): Revert 2001-06-02 change. It
454 caused more problems than it solved by accidentally re-exporting
455 importing bindings once in a while.
456
457 2001-06-03 Marius Vollmer <mvo@zagadka.ping.de>
458
459 * boot-9.scm (try-load-module): Bracket calls to try-module-linked
460 and try-module-dynamic-link with `begin-deprecated'.
461 (split-c-module-name, convert-c-registered-modules,
462 registered-modules, register-modules, warn-autoload-deprecation,
463 init-dynamic-module, dynamic-maybe-call, dynamic-maybe-link,
464 find-and-link-dynamic-module, try-using-libtool-name,
465 try-using-sharlib-name, link-dynamic-module, try-module-linked,
466 try-module-dynamic-link): Deprecated. Activate deprecation
467 message.
468 (define-public): Define binding before exporting it. This is to
469 avoid accidentally re-exporting a imported binding.
470
471 2001-06-02 Marius Vollmer <mvo@zagadka.ping.de>
472
473 * Makefile.am (psyntax.pp): Make it dependent on psyntax.ss and
474 fix command so that it works.
475
476 * session.scm (apropos-fold, submodules, apropos): Be careful not
477 to access unbound variables.
478
479 * boot-9.scm (module-ensure-variable!): New.
480 (module-export!): Use it to ensure that there is a variable to
481 export. Previously, we would always create a new variable, copy
482 the value over, and export the new variable. This confused
483 syncase since it keys important properties on variables.
484
485 2001-06-01 Marius Vollmer <mvo@zagadka.ping.de>
486
487 * boot-9.scm (top-repl): Revert part of the 2001-05-19 change.
488 When defining the guile-user module, do not use any modules. Add
489 them to guile-user when `top-repl' is called.
490 (resolve-interface): Expect keyword arguments instead of a `spec'.
491 (compile-interface-spec, compile-define-module-args): New.
492 (define-module): Use compile-define-module-args to construct
493 argument for process-define-module.
494 (use-modules, use-syntax): Use compile-interface-spec to construct
495 arguments for process-use-modules.
496 (process-define-module): Expect keywords in argument list.
497
498 2001-05-25 Marius Vollmer <mvo@zagadka.ping.de>
499
500 * boot-9.scm (cond-expand): Define using
501 `procedure->memoizing-macro' to get at the lexical environment.
502 Use `env-module' instead of `current-module' to get the right
503 module.
504
505 * Makefile.am (ice9_sources): Added "pretty-print.scm".
506 * pretty-print.scm: New file, copied from SLIB.
507 (generic-write): Return the `unspecified' value.
508
509 * format.scm: Autoload `pretty-print'.
510
511 2001-05-23 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
512
513 * boot-9.scm (%cond-expand-table): New hash table mapping modules
514 to feature lists.
515 (cond-expand): Use feature information associated with modules.
516
517 2001-05-21 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
518
519 * boot-9.scm (use-srfis): Do not extend the srfi-0 feature list.
520 (cond-expand-provide): New procedure.
521
522 2001-05-22 Marius Vollmer <mvo@zagadka.ping.de>
523
524 * boot-9.scm (define-module): Return the new module.
525 (process-define-module): Use `spec' instead of `module-name' when
526 getting the syntax transformer. Thanks to Matthias Köppe!
527
528 2001-05-21 Marius Vollmer <mvo@zagadka.ping.de>
529
530 * boot-9.scm (use-syntax): Do not set scm:eval-transformer when
531 deprecated features have been removed. Thanks to Dale P. Smith!
532
533 * optargs.scm (#\&): Use `issue-deprecation-warning' instead of
534 `display'.
535
536 2001-05-19 Marius Vollmer <mvo@zagadka.ping.de>
537
538 * psyntax.ss (build-lexical-var): Use gensym instead of gentemp.
539 * match.scm: Likewise.
540 * expect.scm: Likewise.
541 * psyntax.pp: Regenerated.
542
543 * rdelim.scm: Call `%init-rdelim-builtins'.
544
545 * rw.scm: Call `%init-rw-builtins'.
546
547 * boot-9.scm (process-define-module): Do not call
548 set-current-module.
549 (define-module): Do it here, in the expansion.
550 (top-repl): Do not define '(guile-user)' module and conditionally
551 load `(ice-9 threads)' and/or `(ice-9 regex)' here. Do it on
552 top-level as the last thing in boot-9.scm instead.
553 (%load-path): Use `list' instead of `cons' to create a single
554 element list when adding "." to it.
555 (process-define-module, process-use-modules, module-export!): Add
556 dummy definitions prior to booting the mdule system.
557
558 2001-05-18 Thien-Thi Nguyen <ttn@revel.glug.org>
559
560 * boot-9.scm: (resolve-interface, use-srfis): Small
561 cleanup; nfc.
562 (process-define-module): Internal proc `unrecognized'
563 now accepts arg; update callers.
564 Reverse order of interfaces added to module to be
565 consistent with that specified in `define-module' form.
566
567 * session.scm: (help): Use `provided?' instead of `feature?'.
568 Factor "TYPE not found for X" output into internal proc.
569 Support `(quote SYMBOL)'; call `search-documentation-files'.
570 (help-doc): If initial search fails, try using
571 `search-documentation-files'.
572 (apropos-fold-accessible, apropos-fold-all): Use `identity'
573 instead of `(lambda (x) x)'. "An identity edit", ha ha.
574 (help-usage): Mention support for "(help 'NAME)".
575
576 * documentation.scm: Fix documentation for Guile Documentation
577 Format Version 2: Mention required terminating newlines.
578
579 (find-documentation): Delete.
580 (search-documentation-files): New proc, exported.
581 (object-documentation): Use `search-documentation-files'.
582
583 2001-05-15 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
584
585 * boot-9.scm (cond-expand-features): Made the feature list public,
586 so it can be manipulated by `use-srfis'.
587 (use-srfis): New procedure.
588
589 2001-05-15 Thien-Thi Nguyen <ttn@revel.glug.org>
590
591 * boot-9.scm (resolve-interface): Signal error now also if
592 used module's public interface is not available.
593 No longer call `beautify-user-module!'.
594 Signal error now also if selected binding not found.
595
596 2001-05-10 Marius Vollmer <mvo@zagadka.ping.de>
597
598 Merge from mvo-vcell-clenaup-1-branch.
599
600 * session.scm (apropos): Do not use `builtin-bindings', always use
601 the module obarray.
602 (apropos-fold): Likewise.
603
604 * optargs.scm (bound?): Removed. We should not play games with
605 the magical undefined value.
606 (let-o-k-template): Use `#f' instead of the undefined value as
607 the default default for bindings.
608
609 * boot-9.scm (module-make-local-var!): Do not pass name hint to
610 make-undefined-variable, use `variable-set-name-hint!' instead.
611 (root-module-closure): Removed.
612 (make-root-module): Set the obarray of the module to the
613 `pre-modules-obarray'. Do not use a lazy binder.
614 (scm-module-closure): Removed.
615 (make-root-module): Set the obarray of the module to the
616 `pre-modules-obarray'. Do not use a lazy binder. Set the
617 eval-closure to a `standard-interface-eval-closure'.
618 (module-define!): Do not pass name hint to make-variable, use
619 `variable-set-name-hint!' instead.
620 (make-modules-in, beautify-user-module, resolve-module): Moved
621 towards the beginning of boot-9.scm, across the call to
622 set-current-module that boots the module system. These
623 definitions need to be visible at the time of the first
624 `set-current-module' call.
625 (try-module-autoload): Define a `#f' before the call to
626 set-current-module. It is redefined later.
627
628 * debug.scm: Use `module-set!' instead of `variable-set!' to set
629 insert `debug-options' into the-root-module.
630 * format.scm: Likewise, for `format'.
631
632 2001-05-15 Marius Vollmer <mvo@zagadka.ping.de>
633
634 * boot-9.scm (error-catching-repl): Call the E
635 ("eval'er") procedure via call-with-values and call the P
636 ("printer") for each produced value. Thanks to Matthias Köppe!
637
638 2001-05-14 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
639
640 * boot-9.scm (cond-expand): Reduce feature list to built-in
641 features.
642
643 2001-05-14 Dirk Herrmann <D.Herrmann@tu-bs.de>
644
645 * boot-9.scm (-1+, return-it, string-character-length, flags):
646 Deprecated.
647
648 2001-05-11 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
649
650 * boot-9.scm: Added `cond-expand' (SRFI-0) for portable feature
651 checking.
652
653 2001-05-10 Thien-Thi Nguyen <ttn@revel.glug.org>
654
655 * boot-9.scm (resolve-module): Abstraction maintenance: Use
656 `module-public-interface'.
657 (resolve-interface): Extend to handle selection and renaming in spec.
658 Arg is now `spec' which can be a simple module name (list of symbols)
659 or a interface spec.
660 (symbol-prefix-proc): New proc.
661 (%autoloader-developer-mode): Delete.
662 (process-define-module): Use "define-module" in error messages
663 instead of "defmodule". Factor error into internal proc.
664 Rewrite `use-module' and `use-syntax' handlers.
665 Replace some single-arm `if-not' constructs w/ `or'.
666 (process-use-modules): Arg is now `module-interface-specs',
667 which is passed through to `resolve-interface' as before; nfc.
668 (named-module-use!, top-repl): Abstraction maintenance: Use
669 `provided?'.
670
671 2001-05-06 Thien-Thi Nguyen <ttn@revel.glug.org>
672
673 * q.scm, runq.scm, getopt-long.scm: Update copyright.
674 Surround commentary w/ standard markers; nfc.
675
676 * expect.scm: Update copyright.
677 Fix commentary typo; nfc.
678
679 2001-05-05 Rob Browning <rlb@cs.utexas.edu>
680
681 * psyntax.ss: make sure emacs knows it's scheme code.
682
683 2001-05-05 Neil Jerram <neil@ossau.uklinux.net>
684
685 * boot-9.scm (use-syntax): Change error message to say
686 `use-syntax' rather than `use-modules'.
687
688 2001-05-02 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
689
690 * safe-r5rs.scm: Fix typo: make-rectangualr => make-rectangular.
691
692 2001-05-02 Marius Vollmer <mvo@zagadka.ping.de>
693
694 * boot-9.scm (begin-deprecated): New.
695 (call-with-deprecation): Removed.
696 (id): Use `issue-deprecation-warning' instead of
697 `call-with-deprecation'. Wrap definition in `begin-deprecated'.
698 (eval-in-module): Manifest deprecation via `begin-deprecation' and
699 `issue-deprecation-warning'.
700 (warn-autoload-deprecation): Deactivated.
701
702 2001-04-26 Marius Vollmer <mvo@zagadka.ping.de>
703
704 * boot-9.scm (the-module, set-current-module, current-module):
705 Removed, they are now defined in libguile.
706
707 2001-04-29 Gary Houston <ghouston@arglist.com>
708
709 * rw.scm: new file, for module (ice-9 rw).
710 * Makefile.am: add rw.scm.
711
712 2001-04-28 Thien-Thi Nguyen <ttn@revel.glug.org>
713
714 * boot-9.scm, optargs.scm:
715 Surround commentary w/ standard markers; nfc.
716
717 * threads.scm, time.scm, channel.scm, expect.scm:
718 Add commentary; nfc.
719
720 2001-04-27 Thien-Thi Nguyen <ttn@revel.glug.org>
721
722 * documentation.scm: Update copyright.
723 Add commentary.
724 Use `define-module' `:export' clause instead of `define-public'.
725 Autoload (ice-9 regex) on `match:suffix'.
726
727 (default-in-line-re, default-after-line-re): New vars.
728 (default-scrub): New proc.
729 (file-commentary): New proc, exported.
730 (object-documentation): Expand docstring; nfc.
731
732 * session.scm: Update copyright.
733 Use (ice-9 rdelim).
734
735 (help): Consider a list of symbols that does not start with
736 `quote' as a module name and call `module-commentary' on it.
737 (module-filename, module-commentary): New procs.
738 (id): Delete.
739 (apropos): Use `identity' instead of deprecated `id'.
740 (help-usage): Add blurb about "(help (my module))" support.
741
742 2001-04-27 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
743
744 * Makefile.am (ice9_sources): Remove srfi-8.scm.
745
746 2001-04-26 Rob Browning <rlb@cs.utexas.edu>
747
748 * srfi-8.scm: removed in favor of srfi/srfi-8.scm - (wasn't ever
749 in a production release).
750
751 2001-04-25 Keisuke Nishida <kxn30@po.cwru.edu>
752
753 * channel.scm: New file.
754 * Makefile.am (ice9_sources): Include channel.scm.
755
756 2001-04-19 Keisuke Nishida <kxn30@po.cwru.edu>
757
758 * receive.scm (receive): Use `define-macro'.
759
760 2001-04-15 Keisuke Nishida <kxn30@po.cwru.edu>
761
762 * boot-9.scm (load-compiled): New variable, initialized in the VM.
763 (try-module-autoload): Try loading compiled modules if applicable.
764
765 2001-04-15 Keisuke Nishida <kxn30@po.cwru.edu>
766
767 * boot-9.scm (call-with-deprecation): New procedure.
768 (identity): New procedure.
769 (id): Deprecated.
770
771 2001-04-15 Keisuke Nishida <kxn30@po.cwru.edu>
772
773 * boot-9.scm (defmacro, define-macro, define-syntax-macro):
774 Define only at the top level.
775
776 2001-04-06 Thien-Thi Nguyen <ttn@revel.glug.org>
777
778 * threads.scm: Update copyright.
779
780 Use `export' and `export-syntax' instead of
781 `define-public' and `defmacro-public'.
782
783 (make-thread): Rename first arg to `proc'; nfc.
784 (begin-thread, monitor): Rename second arg to `rest'; nfc.
785 (with-mutex): Rename second arg to `body'; nfc.
786
787 2001-04-06 Neil Jerram <neil@ossau.uklinux.net>
788
789 * boot-9.scm (warn-autoload-deprecation): Close parenthesis in
790 "You just tried to autoload ..." message.
791
792 2001-04-05 Keisuke Nishida <kxn30@po.cwru.edu>
793
794 * Makefile.am (ice9_sources): Add history.scm.
795 * history.scm: Create the module (value-history) at the beginning.
796
797 2001-03-29 Marius Vollmer <mvo@zagadka.ping.de>
798
799 * boot-9.scm (init-dynamic-module): Fix typo in call to
800 warn-autoload-deprecation. I feel silly.
801
802 2001-03-27 Marius Vollmer <mvo@zagadka.ping.de>
803
804 * r4rs.scm (call-with-values): New definition, defers to
805 @call-with-values.
806
807 2001-03-26 Marius Vollmer <mvo@zagadka.ping.de>
808
809 * boot-9.scm (warn-autoload-deprecation): New function.
810 (init-dynamic-module): Use it here to print warning. Only give
811 warning when a module has actually been found.
812
813 2001-03-25 Marius Vollmer <mvo@zagadka.ping.de>
814
815 * boot-9.scm (init-dynamic-module): Issue warning about
816 auto-loading of compiled code modules being deprecated.
817
818 * Makefile.am (ice9_sources): Added "time.scm".
819
820 2001-03-20 Keisuke Nishida <kxn30@po.cwru.edu>
821
822 * time.scm (time): Reimplemented as a procedure call.
823 (Thanks to Marius Vollmer)
824
825 2001-03-20 Keisuke Nishida <kxn30@po.cwru.edu>
826
827 * safe-r5rs.scm (list): Export.
828
829 2001-03-17 Keisuke Nishida <kxn30@po.cwru.edu>
830
831 * boot-9.scm (before-eval-hook, after-eval-hook,
832 before-print-hook, after-print-hook): New hooks.
833 (scm-style-repl): Call these hooks.
834
835 * history.scm: New file.
836
837 2001-03-17 Keisuke Nishida <kxn30@po.cwru.edu>
838
839 * time.scm: New file.
840
841 2001-03-17 Dirk Herrmann <D.Herrmann@tu-bs.de>
842
843 * oldprint.scm: Removed.
844
845 2001-03-12 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
846
847 * arrays.scm (make-array): Added quote in front of ().
848
849 2001-03-12 Keisuke Nishida <kxn30@po.cwru.edu>
850
851 * common-list.scm (count-if): New procedure.
852
853 2001-03-10 Neil Jerram <neil@ossau.uklinux.net>
854
855 * buffered-input.scm (make-buffered-input-port): New, more general
856 buffered input procedure. Does not assume that a newline
857 character should be interpolated between chunks of input returned
858 by the reader proc.
859 (make-line-buffered-input-port): Redefine in terms of
860 make-buffered-input-port.
861
862 2001-03-09 Keisuke Nishida <kxn30@po.cwru.edu>
863
864 * match.scm: Don't export defstruct. Use (unquote defstruct) instead.
865
866 2001-03-09 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
867
868 * Makefile.am (psyntax.pp): Added rule for producing psyntax.pp.
869
870 2001-03-09 Keisuke Nishida <kxn30@po.cwru.edu>
871
872 * match.scm: export defstruct.
873
874 2001-03-08 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
875
876 * psyntax.ss: Added FSF copyright notice. Added a notice of
877 changes in order to comply with paragraph 2a of the GPL. (Thanks
878 to Keith Wright.)
879
880 2001-03-07 Neil Jerram <neil@ossau.uklinux.net>
881
882 * buffered-input.scm (make-line-buffered-input-port): Don't set
883 the continuation flag for leading whitespace. Thanks to Dirk
884 Herrmann for the suggestion.
885
886 2001-03-05 Neil Jerram <neil@ossau.uklinux.net>
887
888 * optargs.scm (rest-arg->keyword-binding-list): Use "'()" instead
889 of "()".
890
891 * buffered-input.scm: New file, with guts of line buffered input
892 port implementation extracted from guile-readline/readline.scm.
893
894 2001-03-03 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
895
896 * stack-catch.scm: New file.
897
898 * Makefile.am (ice9_sources): Added stack-catch.scm.
899
900 2001-03-03 Marius Vollmer <mvo@zagadka.ping.de>
901
902 * boot-9.scm, rdelim.scm: Use "'()" instead of "()" in all places
903 where the empty list is meant.
904
905 2001-02-26 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
906
907 * boot-9.scm (save-stack): Use `primitive-eval' for stack
908 cutting. Makes backtraces work again! Also added a reference to
909 save-stack from the place in the repl where the primitive-eval
910 frame is invoked.
911
912 2001-02-25 Keisuke Nishida <kxn30@po.cwru.edu>
913
914 * match.scm: New file, including Andrew K. Wright's pattern matcher.
915 * Makefile.am (ice9_sources): Added match.scm.
916
917 2001-02-16 Marius Vollmer <mvo@zagadka.ping.de>
918
919 * boot-9.scm (eval-when, eval-case): Renamed `eval-when' to
920 `eval-case', everywhere.
921
922 2001-02-13 Marius Vollmer <mvo@zagadka.ping.de>
923
924 * boot-9.scm (define-public): Removed spurious call to
925 `interaction-evironment'.
926 (define-public, defmacro-public): Use `export' instead of explicit
927 module magic.
928 (eval-when): New macro.
929 (define-module, use-modules, use-syntax, export): Use it to
930 restrict the use of these forms to the top level.
931 (define-public, defmacro-public): Only export binding when on
932 top-level.
933 (process-define-module): Call `set-current-module' with the
934 defined module.
935 (define-module): Simply call `process-define-module' without any
936 fuss (but only on top-level).
937 (named-module-use!): New function.
938 (top-repl): Do not use `define-module'. Use equivalent low-level
939 means instead.
940
941 2001-02-11 Marius Vollmer <mvo@zagadka.ping.de>
942
943 * boot-9.scm (scm-style-repl): Use `primitive-eval' instead of
944 `eval'.
945 (define-public): Do not use `eval'.
946
947 2001-02-08 Marius Vollmer <marius.vollmer@uni-dortmund.de>
948
949 * and-let-star-compat.scm: Display the warning to the
950 `current-error-port'.
951
952 2001-02-04 Marius Vollmer <mvo@zagadka.ping.de>
953
954 Avoid the use of "*" in file names for the benefit of lesser
955 operating systems.
956
957 * and-let-star.scm, and-let*.scm: Renamed `and-let*.scm' to
958 `and-let-star.scm'. Updated module name as well.
959 * and-let-star-compat.scm: New file, installed as `and-let*.scm'.
960 * Makefile.am (ice9_sources): Replaced "and-let*.scm" with
961 "and-let-star.scm".
962 (install-data-local): Install "and-let-star-compat.scm" as
963 "and-let*.scm", ignoring errors.
964 (EXTRA_DIST): Distribute `and-let-star-compat.scm'.
965
966 2001-01-26 Dirk Herrmann <D.Herrmann@tu-bs.de>
967
968 This patch fixes a problem reported by Martin Grabmueller about
969 the impossibility to access readline's run-time options.
970
971 * boot-9.scm (define-option-interface): New macro. Allows to
972 conveniently define a group of option interface functions.
973
974 (readline-options readline-enable readline-disable,
975 readline-set!): Moved to guile-readline/readline.scm.
976
977 2001-01-24 Gary Houston <ghouston@arglist.com>
978
979 * boot-9.scm: don't import (ice-9 rdelim) here. it's done
980 in C for now.
981 * rdelim.scm: export the C primitives too.
982 * documentation.scm: use (ice-9 rdelim).
983
984 2001-01-21 Gary Houston <ghouston@arglist.com>
985
986 * rdelim.scm: new file implementing module (ice-9 rdelim).
987 * ice-9.scm (scm-line-incrementors read-line! read-delimited!
988 read-delimited read-line): moved to rdelim.scm.
989 scm-line-incrementors is not exported.
990 * boot-9.scm: import (ice-9 rdelim) for backwards compatibility,
991 for now.
992 * lineio.scm: use module (ice-9 rdelim).
993 * Makefile.am (ice9_sources): add rdelim.scm.
994
995 2000-12-29 Dirk Herrmann <D.Herrmann@tu-bs.de>
996
997 * boot-9.scm (root-module-closure, scm-module-closure): Remove
998 calls '(symbol-interned? #f s)'. Formerly, these calls were
999 basically no-ops, guaranteed to return #t if 's' was a symbol.
1000 After the separation of symbols and bindings, a call to
1001 '(symbol-interned? #f s)' will only return #t if there really is a
1002 binding for 's' in the scm_symhash table. Thanks to Dale P. Smith
1003 for providing a test case that helped finding this bug.
1004
1005 2000-12-13 Dirk Herrmann <D.Herrmann@tu-bs.de>
1006
1007 * session.scm (apropos): Completed the last patch, which did only
1008 half the job. Thanks to Dale P. Smith.
1009
1010 2000-12-12 Dirk Herrmann <D.Herrmann@tu-bs.de>
1011
1012 * session.scm (apropos, apropos-fold): There are no weak bindings
1013 any more.
1014
1015 2000-12-12 Dirk Herrmann <D.Herrmann@tu-bs.de>
1016
1017 * boot-9.scm (top-repl): Lookup 'use-emacs-interface in
1018 the-root-module.
1019
1020 2000-12-07 Neil Jerram <neil@ossau.uklinux.net>
1021
1022 * emacs.scm (flush-whitespace): Fix spelling typo ("recieving").
1023
1024 2000-11-28 Dirk Herrmann <D.Herrmann@tu-bs.de>
1025
1026 * boot-9.scm (read-delimited), lineio.scm
1027 (make-line-buffering-input-port), regex.scm (match:prefix,
1028 match:suffix, match:substring, regexp-substitute/global), slib.scm
1029 (slib-parent-dir), string-fun.scm (split-after-char,
1030 split-before-char, split-discarding-char, split-after-char-last,
1031 split-before-char-last, split-discarding-char-last,
1032 split-before-predicate, split-after-predicate,
1033 split-discarding-predicate, separate-fields-discarding-char,
1034 separate-fields-after-char, separate-fields-before-char,
1035 string-prefix-predicate, sans-surrounding-whitespace,
1036 sans-trailing-whitespace, sans-leading-whitespace,
1037 sans-final-newline): Use substring instead of
1038 make-shared-substring.
1039
1040 2000-11-26 Gary Houston <ghouston@arglist.com>
1041
1042 * boot-9.scm: values?, get-values, values, call-with-values:
1043 removed. values and call-with-values are now primitives and
1044 the other two were only exported by accident. don't define
1045 *values-rtd* record type or handle multiple values in
1046 scm-style-repl.
1047
1048 2000-11-07 Gary Houston <ghouston@arglist.com>
1049
1050 * popen.scm (open-output-pipe): added docstrings for open-input-pipe
1051 and open-output-pipe.
1052
1053 2000-11-06 Gary Houston <ghouston@arglist.com>
1054
1055 * popen.scm (open-process): bug fix: don't use
1056 close-all-ports-except to close ports in the child process, since
1057 it causes port buffers to be flushed. they may be flushed again
1058 in the parent, causing duplicate output. use a more elaborate
1059 method for setting up the child descriptors (thanks to David
1060 Pirotte for the bug report).
1061 standard file descriptors 0, 1, 2 in the child process
1062 are now set up from current-input-port etc., where possible.
1063
1064 2000-10-10 Dirk Herrmann <D.Herrmann@tu-bs.de>
1065
1066 * syncase.scm (eval): string=? requires a string argument.
1067 Thanks to Dale P. Smith for the patch.
1068
1069 2000-10-15 Neil Jerram <neil@ossau.uklinux.net>
1070
1071 * optargs.scm: Fix typos in commentary for bound? and lambda*.
1072
1073 2000-10-10 Dirk Herrmann <D.Herrmann@tu-bs.de>
1074
1075 * session.scm (apropos, apropos-fold): regexp-exec does not
1076 accept symbol arguments any more. Thanks to Dale P. Smith for the
1077 patch.
1078
1079 2000-09-30 Gary Houston <ghouston@arglist.com>
1080
1081 * posix.scm (setgrent): pass #t, not #f. thanks to
1082 Jacques A. Vidrine.
1083
1084 2000-09-29 Neil Jerram <neil@ossau.uklinux.net>
1085
1086 * documentation.scm (find-documentation-in-file): Modified
1087 according to changed format of guile-procedures.txt caused by my
1088 snarfing/makeinfo changes in libguile.
1089
1090 * session.scm (help-doc): Improvements to (help) output: (i) a
1091 friendlier Emacs-style introduction line; (ii) where the help arg
1092 matches multiple documented entries, print an initial list of the
1093 entries for which documentation is found, before printing the
1094 actual documentation entries themselves.
1095
1096 2000-09-20 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1097
1098 * boot-9.scm: Removed comment. (Thanks to Brad Knotwell.)
1099
1100 2000-09-12 Dirk Herrmann <D.Herrmann@tu-bs.de>
1101
1102 * syncase.scm (putprop): Use the high-level property interface.
1103
1104 2000-09-12 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
1105
1106 * psyntax.ss (build-lexical-var): Use gentemp instead of gensym;
1107 Convert first argument to a string.
1108
1109 * calling.scm (excursion-function-syntax,
1110 getter-and-setter-syntax,
1111 delegating-getter-and-setter-syntax): Call gensym with string
1112 argument. (Thanks to Dale P. Smith.)
1113
1114 * oldprint.scm (print-table-add!): Ditto.
1115
1116 * boot-9.scm (gentemp): Moved to symbols.c.
1117
1118 2000-08-27 Marius Vollmer <mvo@zagadka.ping.de>
1119
1120 * boot-9.scm (make-object-property): New function.
1121
1122 2000-08-26 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
1123
1124 * boot-9.scm (make-record-type): Use `string-append' instead of
1125 `symbol-append'.
1126 (symbol-append): Map `symbol->string' on
1127 args.
1128 (obarray-symbol-append, obarray-gensym): Simply removed. I don't
1129 think I'll announce this in NEWS even. One of the functions never
1130 even worked... /mdj.
1131 (find-and-link-dynamic-module, keyword->symbol): Use
1132 `symbol->string'.
1133 (try-module-autoload, process-define-module): Rewrote using R5RS
1134 semantics.
1135
1136 2000-08-24 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1137
1138 * psyntax.ss (set!): Added generalized set! support to core syntax
1139 form set!.
1140
1141 2000-08-19 Marius Vollmer <mvo@zagadka.ping.de>
1142
1143 * optargs.scm (#\&): Changed #:allow-other-keys-value to
1144 #:allow-other-keys. Thanks to Bill Schottstaedt!
1145
1146 2000-08-17 Marius Vollmer <mvo@zagadka.ping.de>
1147
1148 * optargs.scm (#\&): Emit warning about `#&' being deprecated.
1149
1150 2000-08-16 Marius Vollmer <mvo@zagadka.ping.de>
1151
1152 * optargs.scm: Replaced `#&' reader syntax with keywords.
1153
1154 2000-08-14 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1155
1156 * format.scm (format:obj->str): Made tail-recursive. (Thanks to
1157 Matthias Köppe.)
1158
1159 2000-08-13 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
1160
1161 * psyntax.ss (top-level-eval-hook, local-eval-hook): Pass
1162 `(interaction-environment)' as second arg to `eval'. This is
1163 completely equivalent with the state before the change to eval of
1164 2000-08-11, but we should extend psyntax.ss to be module aware.
1165 (Thanks to Ian Bicking.)
1166
1167 * emacs.scm (emacs-symdoc): Parenthesis fix.
1168
1169 2000-08-11 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
1170
1171 * r5rs.scm (interaction-environment): Removed definition. (Is now
1172 provided by libguile/modules.c.)
1173
1174 * safe-r5rs.scm (null-environment): Bugfix: Should include
1175 syntactic bindings.
1176
1177 * boot-9.scm (record-constructor, record-accessor,
1178 record-modifier, scm-style-repl): Add second arg to eval.
1179 (read-hash-extend #\.): Ditto. (This is actually a bugfix!)
1180 (eval-in-module): Redefined to be eval and deprecated.
1181
1182 * syncase.scm (eval): Add second arg both in definition and use.
1183
1184 * slib.scm (slib:eval): Use eval instead of eval-in-module.
1185 (defmacro:eval): Eval in (interaction-environment).
1186
1187 * safe-r5rs.scm (eval): Removed definition.
1188
1189 * emacs.scm (emacs-eval-request):
1190 (emacs-symdoc): (This procedure needs updating!)
1191
1192 2000-08-10 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
1193
1194 * boot-9.scm: Added note about dependency in modules.h to
1195 definition of module-type.
1196
1197 * Makefile.am (ice9_sources): Added receive.scm, srfi-8.scm.
1198
1199 * receive.scm, srfi-8.scm: New files.
1200
1201 * boot-9.scm (scm-style-repl): Print multiple values on successive
1202 lines.
1203 (process-define-module): Bugfix: Make sure that exports are done
1204 *after* all used interfaces has been added.
1205
1206 2000-07-24 Marius Vollmer <mvo@zagadka.ping.de>
1207
1208 * common-list.scm (uniq): Made tail-recursive. Thanks to thi!
1209
1210 2000-07-13 Dirk Herrmann <D.Herrmann@tu-bs.de>
1211
1212 * boot-9.scm (expt): In case of negative integer exponents return
1213 an exact result if the input paramters were exact. Thanks to
1214 Mikael for the suggestion.
1215
1216 2000-07-12 Dirk Herrmann <D.Herrmann@tu-bs.de>
1217
1218 * boot-9.scm (expt): Make sure that integer-expt is only called
1219 if the exponent is a non-negative integer.
1220
1221 2000-07-01 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
1222
1223 * boot-9.scm (process-define-module): Bugfix: Only check the CDR
1224 for export args.
1225
1226 2000-06-27 Dirk Herrmann <D.Herrmann@tu-bs.de>
1227
1228 * popen.scm: gc-thunk is deprecated. Use after-gc-hook instead.
1229
1230 2000-06-16 Dirk Herrmann <D.Herrmann@tu-bs.de>
1231
1232 * common-list.scm (intersection, set-difference, remove-if,
1233 remove-if-not): Made tail-recursive. Thanks to William Webber
1234 for the hint.
1235
1236 (delete-if!, delete-if-not!): Renamed parameter from `list' to
1237 `l' in order to avoid confusion. Note: These functions are not
1238 tail recursive yet.
1239
1240 2000-06-21 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
1241
1242 * boot-9.scm: Turned `the-module', `*top-level-lookup-closure*',
1243 and `scm:eval-transformer' into fluids.
1244
1245 * boot-9.scm (purify-module!, module-export!): New procedures.
1246 (export): Rewritten using `module-export!'.
1247 (process-define-module): New define-module options: pure, export.
1248 See NEWS.
1249 (scm-style-repl): Added optional module argument.
1250
1251 * null.scm, r5rs.scm, safe-r5rs.scm, safe.scm: New modules.
1252
1253 2000-06-20 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1254
1255 * session.scm (make-fold-modules): Detect circular references in
1256 module graph. (Thanks to Matthias Köppe.)
1257
1258 2000-06-20 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
1259
1260 * session.scm: Use module (ice-9 regex).
1261 (help): Regexp-quote a name given as a symbol.
1262
1263 2000-06-16 Dirk Herrmann <D.Herrmann@tu-bs.de>
1264
1265 * common-list.scm (list*): Removed, since this function is
1266 implemented as a primitive in libguile/list.c.
1267
1268 2000-06-12 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
1269
1270 * session.scm (help): Warn user if 'regex isn't provided.
1271
1272 * Makefile.am (ice9_sources): Removed getopt-gnu-style.scm.
1273
1274 * getopt-gnu-style.scm: Removed deprecated module.
1275
1276 2000-06-11 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
1277
1278 * boot-9.scm (make-autoload-interface): Set init value for uses to
1279 '() instead of #f.
1280 (make-modules-in): Name modules with their real (= full) names.
1281 (the-root-module, the-scm-module): Named `(guile)' instead of
1282 `the-root-module'.
1283 (the-scm-module): Set kind to 'interface.
1284
1285 * Makefile.am (ice9_sources): Replaced doc.scm with
1286 documentation.scm.
1287
1288 * session.scm (ice-9): Use module (ice-9 documentation).
1289 (name): Use the name property if everything else fails.
1290 (apropos-fold): New procedure.
1291 (apropos-internal): Re-implement in terms of `apropos-fold'.
1292 (help): Rewritten.
1293
1294 * doc.scm: Removed module (ice-9 doc).
1295
1296 * documentation.scm: New module (ice-9 documentation).
1297
1298 2000-06-08 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
1299
1300 * doc.scm (documentation-files): Renamed from `doc-files'.
1301 (write-all): Removed.
1302 (find-documentation): Renamed from `documentation'. Return
1303 documentation string instead of printing it. Not exported.
1304
1305 Tue Jun 6 09:21:28 2000 Greg J. Badros <gregb@go2net.com>
1306
1307 * session.scm: Update references to `proc-doc' to be
1308 `proc-documentation'
1309
1310 * doc.scm: Cleaned up a great deal. Put variables at the top of
1311 the file, eliminated `object-documentation' that was broken
1312 (referencing Scwm), drop `help' as session.scm has a better
1313 supported version of that procedure. Rename `proc-doc' to
1314 `proc-documentation' -- `procedure-documentation' is a primitive
1315 getter function, so I use the shorter name for this more useful
1316 function. (Alternatively, we could rename the primitive
1317 getter...)
1318
1319 2000-06-05 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1320
1321 * boot-9.scm (error-catching-loop): Inform about debugger on error.
1322
1323 2000-06-04 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
1324
1325 * boot-9.scm (scm-module-closure): New procedure: Was previously
1326 anonymous. Now needed in modules.c.
1327 (make-module): Use `standard-eval-closure' to create the eval
1328 closure.
1329
1330 2000-05-14 Gary Houston <ghouston@arglist.com>
1331
1332 * boot-9.scm (load-user-init): rewritten. first work out the home
1333 directory and then try to open the file (previously it could try
1334 to open a file in more than one place). catch exceptions when
1335 trying to get a directory from the user database. don't check
1336 that ~/.guile is not a directory before trying to load it (a lack
1337 of ~/.guile is not a crime, but if the file is not valid for any
1338 reason then primitive-load will raise an error).
1339
1340 2000-05-11 Dirk Herrmann <D.Herrmann@tu-bs.de>
1341
1342 * boot-9.scm (abs): Don't set to magnitude. abs now does not
1343 accept complex numbers as parameter.
1344
1345 2000-05-09 Marius Vollmer <mvo@zagadka.ping.de>
1346
1347 * common-list.scm (delete-if-not!): Bug fix of bug fix: change
1348 label of named let to `delete-if-not'. Sorry.
1349
1350 2000-05-08 Marius Vollmer <mvo@zagadka.ping.de>
1351
1352 * common-list.scm (doc fixes): Talk about `true values' instead of
1353 `#t' when a function treats all non-#f valuers the same.
1354 (remove-if-not): Bug fix: call remove-if-not
1355 instead of remove-if when iterating.
1356 (delete-if-not!): Bug fix: call delete-if-not! instead of
1357 delete-if! when iterating.
1358
1359 2000-04-16 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
1360
1361 * r4rs.scm (close-input-port, close-output-port): Removed.
1362
1363 2000-04-13 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
1364
1365 * session.scm (help): New macro. Prints helpful information.
1366
1367 2000-04-10 Gary Houston <ghouston@arglist.com>
1368
1369 * popen.scm (open-process): after forking, close all ports except
1370 the end of the pipe to the parent. otherwise move->fdes and
1371 the exec'd program and the exit handlers can interfere with file
1372 descriptors still in use in parent ports.
1373
1374 2000-04-09 Gary Houston <ghouston@arglist.com>
1375
1376 * popen.scm (close-process-quietly): new procedure. use it from
1377 reap-pipes to avoid errors or hanging during background cleanup.
1378
1379 2000-04-04 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1380
1381 * format.scm (format:obj->str): Handle circular references. Also,
1382 print improper lists with (x y . z) syntax rather than as
1383 individual pairs. (This code should probably be integrated into C
1384 level facilities. It is currently terribly slow.)
1385
1386 2000-04-03 Michael Livshin <mlivshin@bigfoot.com>
1387
1388 * streams.scm (stream-fold, stream-for-each): don't use named let,
1389 because it prevents the gc from junking the stream argument.
1390
1391 Thu Mar 9 08:05:08 2000 Greg J. Badros <gjb@cs.washington.edu>
1392
1393 * slib.scm: Back-out change to software-type -- renamed
1394 slib:software-type to software-type, and leave it non-public.
1395
1396 Thu Mar 2 12:20:52 2000 Greg J. Badros <gjb@cs.washington.edu>
1397
1398 * boot-9.scm: Drop unused definition of sfx function -- thanks
1399 Dirk Hermann!
1400
1401 Wed Mar 1 12:21:02 2000 Greg J. Badros <gjb@cs.washington.edu>
1402
1403 * streams.scm: Doc patch from Richard Kim, using MIT Scheme as
1404 source of the numerous very short changes.
1405
1406 Sun Feb 13 18:03:19 2000 Greg J. Badros <gjb@cs.washington.edu>
1407
1408 * slib.scm: Rename software-type to slib:software-type and make it
1409 public.
1410
1411 * r4rs.scm: Added documentation; largely cut and pasted from R4RS
1412 info pages.
1413
1414 Sun Feb 13 17:49:29 2000 Greg J. Badros <gjb@cs.washington.edu>
1415
1416 * common-list.scm: Added documentation; largely cut and pasted
1417 from slib docs.
1418
1419 2000-02-11 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1420
1421 * format.scm (format): Reintroduce (define format format:format)
1422 so that the binding in the public interface of the module will be OK.
1423
1424 2000-01-30 Gary Houston <ghouston@arglist.com>
1425
1426 * boot-9.scm (find-and-link-dynamic-module): pass strings, not symbols,
1427 to string-append.
1428
1429 2000-01-29 Gary Houston <ghouston@arglist.com>
1430
1431 * expect.scm (expect): don't call char-ready? before expect-select,
1432 since select now checks port buffers itself. don't bother to check
1433 the time first either, since expect-select does it.
1434
1435 Thu Jan 20 12:57:36 2000 Greg J. Badros <gjb@cs.washington.edu>
1436
1437 * format.scm: Use (variable-set! (builtin-variable 'format)) to
1438 re-define format to be format:format (instead of just define,
1439 which interacts poorly with the module system). Thanks to Shuji
1440 Narazaki for this change.
1441
1442 Tue Jan 11 10:49:22 2000 Greg J. Badros <gjb@cs.washington.edu>
1443
1444 * boot-9.scm expect.scm, syncase.scm: Switch to new style
1445 `simple-format' message strings: substitute ~A for %s, and ~S for
1446 %S.
1447
1448 * boot-9.scm: Added (define format simple-format) to expose that
1449 primitive via the simpler name until format.scm is loaded.
1450
1451 2000-01-09 Marius Vollmer <mvo@zagadka.ping.de>
1452
1453 * boot-9.scm (try-using-libtool-name): Do not bother to look
1454 inside libtool ".la" file, dynamic-link does this for us now.
1455
1456 1999-12-15 Gary Houston <ghouston@freewire.co.uk>
1457
1458 * slib.scm (library-vicinity, home-vicinity,
1459 scheme-implementation-type, scheme-implemenation-version):
1460 use define-public to export from the module.
1461
1462 Wed Dec 15 08:32:09 1999 Greg J. Badros <gjb@cs.washington.edu>
1463
1464 * doc.scm: Use `%library-dir' and the other system directories,
1465 not the quickly defuncted `library-dir' that I added before
1466 realizing the former existed. Thanks Brad Knotwell!
1467
1468 Sun Dec 12 19:18:52 1999 Greg J. Badros <gjb@cs.washington.edu>
1469
1470 * Makefile.am, doc.scm: Added doc.scm.
1471
1472 1999-12-12 18:54:06 1999 Greg J. Badros <gjb@cs.washington.edu>
1473
1474 * popen.scm, slib.scm: Added some docstrings for procedures that
1475 were primitives that I encountered in posix.texi.
1476
1477 1999-11-19 Gary Houston <ghouston@freewire.co.uk>
1478
1479 * Makefile.am (ice9_sources): add arrays.scm.
1480
1481 * boot-9.scm: load arrays.scm if 'array is provided.
1482
1483 * arrays.scm: new file with stuff from boot-9.scm.
1484
1485 1999-11-18 Gary Houston <ghouston@freewire.co.uk>
1486
1487 * boot-9.scm (read-hash-extend to set up arrays): add 'l' for
1488 long_long uniform vectors.
1489
1490 1999-11-17 Gary Houston <ghouston@freewire.co.uk>
1491
1492 * networking.scm (sethostent, setnetent, setprotoent, setservent):
1493 take an optional argument STAYOPEN. default is #f.
1494
1495 1999-10-05 Jim Blandy <jimb@savonarola.red-bean.com>
1496
1497 * Makefile.in: Deleted from CVS repository. Run the autogen.sh
1498 script to create generated files like this one.
1499
1500 1999-09-23 Gary Houston <ghouston@freewire.co.uk>
1501
1502 * boot-9.scm (load-user-init): check that the posix feature is
1503 available before using getpw and getuid.
1504 (top-repl): don't install handlers for SIGINT etc., without posix.
1505 (file-is-directory?): use 'posix instead of i/o-extensions to
1506 check for stat.
1507 (load-user-init): use file-exists? and file-is-directory? to
1508 check for .guile, instead of stat.
1509 (file-is-directory?): don't display the file name if posix not
1510 available.
1511 (feature?): I guess this is deprecated. redefined using "provided?"
1512 and changed users in boot-9.scm to "provided?".
1513 Conditionally load posix.scm and networking.scm.
1514
1515 posix.scm, networking.scm: new files. Move definitions from
1516 boot-9.scm if they are only useful with posix/networking available.
1517
1518 * Makefile.am (ice9_sources): add posix.scm, networking.scm.
1519
1520 1999-09-17 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
1521
1522 * debugger.scm (read-and-dispatch-commands): Handle other throws
1523 than 'exit-debugger.
1524
1525 * boot-9.scm (before-signal-stack): New fluid.
1526 (top-repl): Set before-signal-stack in the signal handler.
1527
1528 * debugger.scm (eval-handler): Handle unhandled exceptions.
1529
1530 1999-09-16 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
1531
1532 * debugger.scm ("p"): New alias for "evaluate";
1533 Mark module with :no-backtrace.
1534 ("position"): New command.
1535 (source-position, display-position): New procedures.
1536 (display-source): Display position of expression, if available.
1537 (catch-user-errors): Return #f on error. (Commands are expected
1538 to return a valid state.)
1539 (read-and-dispatch-command): Bugfix: Return old state on error.
1540
1541 1999-09-16 Jim Blandy <jimb@savonarola.red-bean.com>
1542
1543 * regex.scm (regexp-substitute/global): Handle the end of the
1544 match list and an empty match list identically. (Thanks to Greg
1545 Badros.)
1546
1547 1999-09-15 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
1548
1549 * debugger.scm ("evaluate"): Replaced `write-line' with calls to
1550 `write' and `newline' since write-line doesn't write but displays.
1551
1552 1999-09-12 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
1553
1554 * debugger.scm ("evaluate"): Newline after no env announcement.
1555
1556 * debug.scm, emacs.scm: Updated copyright notices.
1557
1558 * boot-9.scm (make-autoload-interface): Bugfix.
1559 (top-repl): Autoload debugger.
1560
1561 * debugger.scm ("backtrace"): Don't pass length param to
1562 display-backtrace if it wasn't explicitly given by the user.
1563 (write-frame-long/application): Also print corresponding source
1564 expression.
1565 ("evaluate"): Evaluate in local environment frame, if existent;
1566 Handle errors.
1567
1568 1999-09-11 Jim Blandy <jimb@savonarola.red-bean.com>
1569
1570 * format.scm (format:format-work): Use #\tab and #\page instead of
1571 slib:form-feed and slib:tab. (Thanks to Ceri Storey.)
1572
1573 * format.scm (format:abort): Call error, not slib:error.
1574
1575 1999-09-11 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
1576
1577 * boot-9.scm (using-readline?): New procedure: Returns #t if
1578 readline is used by the repl run by this thread.
1579 (handle-system-error): Print "Backtrace:" before backtrace since
1580 this is no longer done by display-backtrace.
1581
1582 * debug.scm (frame-number->index): Optionally take stack as
1583 argument.
1584
1585 * debugger.scm: Use the frame number abstraction which allows for
1586 both forward and backward views of the stack
1587 (write-frame-index-short, write-frame-index-long):
1588 Use selector `frame-number';
1589 (select-frame-absolute): Use frame-number->index.
1590 ("backtrace"): Use builtin backtrace printing.
1591 Use (ice-9 debug).
1592 Use readline conditionally.
1593
1594 1999-09-11 Jim Blandy <jimb@savonarola.red-bean.com>
1595
1596 * regex.scm (fold-matches, list-matches): New functions.
1597 (regexp-substitute/global): Rewritten again in terms of
1598 list-matches, to get null match behavior correct.
1599
1600 * regex.scm (regexp-substitute/global): Rewrite so that 'post at
1601 the end of the item list actually causes a tail call. (Thanks to
1602 Jan Nieuwenhuizen.)
1603
1604 1999-09-11 Marius Vollmer <mvo@zagadka.ping.de>
1605
1606 * readline.scm: Moved to ../guile-readline.
1607
1608 * boot-9.scm (top-repl): Removed code for activating readline.
1609
1610 * Makefile.am: Removed mention of readline.scm.
1611
1612 * Makefile.in: Regenerated.
1613
1614 1999-09-11 Jim Blandy <jimb@savonarola.red-bean.com>
1615
1616 Delete the test which compares the configuration date of libguile
1617 with the configuration date of ice-9. This test yields too many
1618 false positives to be helpful. For example, if you build Guile
1619 for several architectures but have them all share a "share"
1620 directory (which is supposed to work), then all but one
1621 architecture's Guile will complain that the configuration dates
1622 don't match. Which is true, but indicates nothing wrong.
1623 * boot-9.scm: Delete code which compares ice-9-config-stamp with
1624 libguile-config-stamp.
1625 * version.scm.in: Delete.
1626 * Makefile.am (ice9_generated): Delete.
1627 (subpkgdata_DATA): Remove ice9_generated.
1628 (EXTRA_DIST): Remove version.scm.in.
1629 * Makefile.in: Regenerate.
1630
1631 1999-09-11 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
1632
1633 * debugger.scm: New file: Initial version of the Guile debugger
1634 written by Chris Hanson. (The debugger isn't finished, but is
1635 included in Guile anyway since it is already quite useful.)
1636
1637 * boot-9.scm (top-repl): Use (ice-9 debug) (ice-9 debugger) (ice-9
1638 session) (ice-9 threads) (ice-9 regex) from guile-user only if
1639 top-repl is called. This makes startup time for scripts 30% of
1640 what it was before... Removed redundant code for loading of
1641 readline.
1642
1643 * Makefile.am (ice9_sources): Added debugger.scm.
1644
1645 1999-08-29 Keisuke Nishida <kxn30@po.cwru.edu>
1646
1647 * boot-9.scm (try-module-autoload): Use %search-load-path.
1648
1649 1999-08-24 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
1650
1651 * boot-9.scm: Removed old style hooks.
1652 (inherit-print-state): Rwwritten to use port-with-print-state.
1653
1654 1999-08-20 James Blandy <jimb@mule.m17n.org>
1655
1656 Remove support for the #/ path list syntax entirely.
1657 * boot-9.scm (read-path-list-notation,
1658 read-path-list-notation-warning): Deleted.
1659 Don't register read-path-list-notation-warning as a reader for
1660 objects starting with '#/'.
1661
1662 1999-08-05 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
1663
1664 GOOPS needs the observer protocol specified for the new module
1665 system. Here's a simple version for the old module system:
1666 * boot-9.scm (module-observers, module-weak-observers,
1667 module-observer-id, set-module-observers!,
1668 set-module-observer-id!): New accessors.
1669 (module-type): Added slots `observers', `weak-observers' and
1670 `observer-id'.
1671 (module-observe, module-observe-weak, module-unobserve,
1672 module-modified): New procedures.
1673 (module-make-local-var!, module-add!, module-remove!,
1674 module-clear!, module-define!, module-use!): Call module-modified.
1675
1676 1999-07-29 Marius Vollmer <mvo@zagadka.ping.de>
1677
1678 * boot-9.scm (error-catching-loop): Correct non-RnRS usage of internal
1679 defines.
1680
1681 1999-07-19 Jim Blandy <jimb@savonarola.red-bean.com>
1682
1683 * streams.scm: New module, contributed by Michael Livshin.
1684 * Makefile.am (ice9_sources): List it.
1685 * Makefile.in: Regenerated.
1686
1687 * boot-9.scm (read-delimited!): Put the terminator in the correct
1688 position.
1689
1690 1999-06-29 Mikael Djurfeldt <mdj@mdj-pc.nada.kth.se>
1691
1692 * readline.scm: Bugfix: Avoid getting the continued-lines prompt
1693 at multiple calls to read.
1694 (promtp2): Variable for continued-lines prompt.
1695 (make-readline-port): Use prompt2.
1696 (set-readline-prompt!): New optional arg which sets
1697 continued-lines prompt.
1698
1699 * boot-9.scm (top-repl): Set/clear readline prompts before/after
1700 reading expressions.
1701
1702 1999-06-18 Jim Blandy <jimb@savonarola.red-bean.com>
1703
1704 * ls.scm (ls, lls): Handle no arguments as meaning to look in
1705 `(current-module)'. (Patch from Thien-Thi Nguyen.)
1706
1707 1999-06-14 Jim Blandy <jimb@savonarola.red-bean.com>
1708
1709 * string-fun.scm (split-before-predicate, split-after-predicate,
1710 split-discarding-predicate): Make these public. (Thanks to
1711 Thien-Thi Nguyen.)
1712
1713 1999-06-13 Gary Houston <ghouston@easynet.co.uk>
1714
1715 * more changes to expect.scm, to avoid the one-character lookhead
1716 that was introduced to fix the $ problem:
1717
1718 * expect.scm (expect): call the match proc an extra time at end
1719 of file and set the eof? argument appropriately. call
1720 expect-eof-proc only if the last call didn't match.
1721 * expect.scm (expect-strings): change port to eof? in match proc.
1722 * expect.scm (expect-regexec): take an eof indicator as an argument
1723 instead of a port.
1724
1725 1999-06-09 Jim Blandy <jimb@savonarola.red-bean.com>
1726
1727 * Makefile.am (ice9_sources): Add popen.scm to list.
1728 * Makefile.in: Regenerated.
1729
1730 Fixes for expect from Gary Houston <ghouston@easynet.co.uk>:
1731
1732 * expect.scm (expect-regexec): define 'eof-next?'. I don't
1733 know why it was missing. also don't peek for end of lines
1734 unless expect-strings-exec-flags contains regexp/noteol.
1735 (expect-strings-exec-flags): initialise to regexp/noteol.
1736
1737 Gary Houston's open-buffer port patches:
1738
1739 1999-04-01 Gary Houston <ghouston@easynet.co.uk>
1740
1741 * popen.scm: applied fixes from Greg Harvey. use a guardian
1742 and a gc-thunk so that cleanup is done if a pipe is garbage
1743 collected or closed with close-port. use a weak hash-table instead of
1744 an alist.
1745
1746 1999-03-20 Gary Houston <ghouston@easynet.co.uk>
1747
1748 * expect.scm (expect): call the match proc with the port instead.
1749 (expect-strings): use peek-char to get the next char. this has
1750 the advantage of getting the handling of $ "correct", but the
1751 disadvantage of needing to get (and maybe block for) an extra character
1752 from the port when it may not be needed. hence:
1753 (expect-strings-exec-flags): new variable/parameter, supplies
1754 flags for regexp-exec. if this includes regexp/noteol, then
1755 automatic regexp/noteol handling (requiring an extra peeked char)
1756 is enabled. default is regexp/noteol.
1757 (expect-strings-compile-flags): new variable/parameter, supplies
1758 flags for make-regexp. default is regexp/newline.
1759
1760 1999-03-15 Gary Houston <ghouston@easynet.co.uk>
1761
1762 * expect.scm (expect): call the match proc with an extra char,
1763 peeked from the stream.
1764 (expect-strings): build a match proc which takes the extra char.
1765 (expect-regexec): take an extra arg "eof-next?" and use it
1766 to decide whether the regexp/noteol flag should be added.
1767
1768 1999-02-26 Gary Houston <ghouston@easynet.co.uk>
1769
1770 * boot-9.scm (top-repl): don't flush all ports at exit.
1771 (error-catching-loop): likewise.
1772
1773 1998-12-23 Gary Houston <ghouston@easynet.co.uk>
1774
1775 * boot-9.scm (scm-style-repl): -read: don't call
1776 consume-trailing-whitespace if val is eof object. Allows
1777 exiting repl with single control-D.
1778
1779 1998-12-06 Gary Houston <ghouston@easynet.co.uk>
1780
1781 * boot-9.scm (error-catching-loop): don't force output within
1782 error catching loop after quit received.
1783 (top-repl): flush all ports when the repl terminates.
1784
1785 * boot-9.scm (error-catching-loop): flush all ports before
1786 primitive exit if non-interactive.
1787 force-output on current-error-port if interactive.
1788
1789 * boot-9.scm (reopen-file): deleted.
1790 * popen.scm (open-output-pipe, open-input-pipe): moved from
1791 boot-9.scm.
1792 * popen.scm: new file.
1793
1794 1999-06-04 Dirk Herrmann <D.Herrmann@tu-bs.de>
1795
1796 * boot-9.scm (iota): replaced by a tail recursive version.
1797 (reverse-iota): removed.
1798
1799 1999-06-03 Mikael Djurfeldt <mdj@mdj-pc.nada.kth.se>
1800
1801 * optargs.scm (lambda*): Bugfix: Replaced ARGLIST -->
1802 non-optional-args. (Thanks to David Lutterkort.)
1803
1804 1999-05-09 Jim Blandy <jimb@savonarola.red-bean.com>
1805
1806 * string-case.scm: Removed; functions moved to libguile/strop.c
1807 (which could be dynamically linked in the future anyway).
1808 * Makefile.am (ice9_sources): Don't list string-case.scm.
1809 * Makefile.in: Regenerated.
1810 * format.scm: Don't bother importing (ice-9 string-case).
1811
1812 1999-05-02 Jim Blandy <jimb@savonarola.red-bean.com>
1813
1814 * boot-9.scm (provided?): New function.
1815
1816 * Makefile.am: Add string-case.scm and format.scm to ice9_sources.
1817 * Makefile.in: Regenerated.
1818
1819 * string-case.scm: New file, brought in from SLIB, and adapted to
1820 Guile's module system.
1821
1822 * format.scm: New file, brought in from SLIB, with the following
1823 changes:
1824 (format:format): If the first argument is the format string, stick
1825 a #f on the front of it, so it is now a valid CL format argument
1826 list. This is easier than changing everyplace else (like the
1827 error formatter) that expects it to be in CL form. The other
1828 clause which explicitly tests for this case is now dead code.
1829 (format:format-work): Allow `@' and `:' in either order, as per
1830 modern CL behavior.
1831 (format:num->cardinal): Don't assume that an elseless if returns
1832 '() when the condition is false.
1833
1834 1999-04-17 Jim Blandy <jimb@savonarola.red-bean.com>
1835
1836 * Makefile.in: Regenerated.
1837
1838 1999-04-08 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1839
1840 * boot-9.scm: Provide 'values.
1841
1842 1999-03-21 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
1843
1844 * boot-9.scm (process-define-module, use-syntax): Bugfix:
1845 :use-syntax should add syntax to using module, not current module.
1846 (internal-use-syntax): Removed.
1847
1848 1999-03-21 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1849
1850 * session.scm (apropos-internal): Modified to comply with new
1851 argument order for hash-fold.
1852
1853 1999-03-19 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
1854
1855 * boot-9.scm (try-load-module): New procedure. Broken out from
1856 resolve-module.
1857 (resolve-module): Bugfix: Make it possible for a module at a
1858 deeper level (x y z) to depend on a module on a higher (x y).
1859
1860 This also has the desired side-effect that multiple attempts to
1861 load a module (e.g. with `use-modules') work until source is
1862 actually found for the module (e.g. because the correct catalog
1863 has been added to the load path).
1864
1865 Use try-load-module.
1866
1867 1999-03-18 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1868
1869 * session.scm (system-module): New procedure. Used to switch a
1870 module between system and user state.
1871
1872 1999-03-16 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1873
1874 * session.scm (apropos-internal): Rewritten using hash-fold.
1875
1876 * emacs.scm, session.scm, slib.scm): Added :no-backtrace in module
1877 definition.
1878
1879 1999-03-14 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
1880
1881 * boot-9.scm (make-record-type): Use `set-struct-vtable-name!' to
1882 associate a name to the record type descriptor so that the object
1883 system can create a wrapper class for it.
1884
1885 1999-03-12 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1886
1887 Improvement of backtraces: Introduces a new stack narrowing
1888 specifier, #t, for the inner cut. If the inner cut is specified
1889 by #t, `make-stack' will throw away inner stack frames (most
1890 recent calls on call chain) up to but excluding the first user
1891 stack frame encountered.
1892
1893 This specifier is now used in `save-stack' so that the call
1894 `(save-stack)' will get the new behaviour. [It is recommended that
1895 any error reporting functions written by the user have this call
1896 on the outermost expression level (i.e. as a member of the lambda
1897 list).]
1898
1899 Modules are partitioned into "user" and "system" modules. [I know
1900 that some names used here are silly, but I don't have more time to
1901 spend on a better solution, especially considering that the module
1902 system will be replaced. But if people have better ideas, then
1903 please tell me!]
1904
1905 System modules are created by adding :no-backtrace among the
1906 define-module switches:
1907
1908 (define-module (foo)
1909 :no-backtrace)
1910
1911 Modules which doesn't have the :no-backtrace specifier are user
1912 modules.
1913
1914 A stack frame is classified as a user frame if it has source code
1915 associated with it and if this source code can be proven to come
1916 from a user module. If it can be proven to come from a system
1917 module it is a system frame.
1918
1919 Frames which can't be classified, e.g. application frames, are cut
1920 away if they occur between system frames, but are left on the
1921 stack if they occur between the last system frame and the first
1922 user frame encountered. (Note that the first user frame
1923 encountered is the last user code being evaluated!)
1924
1925 In some cases the system part of the call chain is introduced by
1926 frames which should but can't be proven to be system frames. The
1927 following workaround has been implemented: The cutting proceeds
1928 over application frames where the operator is marked by the
1929 `system-procedure' property. (This has been used to cut away
1930 generic function dispatch code in the object system.)
1931
1932 * boot-9.scm (set-system-module!): New procedure: Set system/user
1933 status of a module.;
1934 Mark `the-root-module' and `the-scm-module' as system modules.
1935 (process-define-module): Add new keyword :no-backtrace.
1936
1937 * boot-9.scm (environment-module): Bugfixed.
1938 (set-module-eval-closure!): Add a pointer back from the eval
1939 closure to the module.
1940
1941 * emacs.scm (emacs-load): Reset port filename after transfer.
1942
1943 1999-03-03 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1944
1945 * slib.scm (make-random-state): Added for compatibility.
1946
1947 1999-02-16 Maciej Stachowiak <mstachow@alum.mit.edu>
1948
1949 * optargs.scm (lambda*): Handle empty argument lists properly.
1950
1951 1999-02-15 Jim Blandy <jimb@savonarola.red-bean.com>
1952
1953 Fix from Russ McManus:
1954 * getopt-long.scm (parse-option-spec): Store 'optional as the
1955 value-required? field for options that take optional values.
1956 (process-short-option): Grab a value for the option when it takes
1957 either an optional or required value.
1958
1959 1999-02-12 Jim Blandy <jimb@savonarola.red-bean.com>
1960
1961 * getopt-long.scm: Remove debugging calls to `pk'.
1962
1963 * getopt-long.scm: Return list of ordinary arguments as the value
1964 of the '() key, not `rest'.
1965
1966 A new argument-processing package from Russ McManus.
1967 * getopt-long.scm: New file.
1968 * Makefile.am (ice9_sources): Added getopt-long.scm.
1969 * Makefile.in: Regenerated.
1970
1971 1999-02-09 Maciej Stachowiak <mstachow@alum.mit.edu>
1972
1973 * optargs.scm: New file.
1974 * Makefile.am (ice9_sources): Add optargs.scm here. Makefile.in
1975 not regenerated because I don't have the right version of Automake.
1976
1977 1999-02-06 Jim Blandy <jimb@zwingli.cygnus.com>
1978
1979 * and-let*.scm: New file, from Michael Livshin.
1980 * Makefile.am (ice9_sources): Add and-let* here.
1981 * Makefile.in: Regenerated.
1982
1983 1999-01-11 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1984
1985 * slib.scm (install-require-module): Fixed the kludge which loads
1986 the slib catalog: Doesn't anylonger assume that the feature tested
1987 for isn't loaded.
1988
1989 1998-12-14 Jim Blandy <jimb@zwingli.cygnus.com>
1990
1991 * Makefile.in: Regenerated.
1992
1993 1998-12-14 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1994
1995 * boot-9.scm (process-define-module): Reverted the change of
1996 1998-11-23 which caused loading of object code if :use-module was
1997 applied to the module itself.
1998
1999 1998-12-11 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2000
2001 * Makefile.am: Removed setf.scm.
2002
2003 * setf.scm: Removed. 1. It was buggy. 2. It was unschemey.
2004 (These shortcomings were my fault.)
2005
2006 1998-12-10 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2007
2008 * boot-9.scm (environment-module): New procedure.
2009
2010 1998-12-07 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2011
2012 * Makefile.am: Added setf.scm.
2013
2014 1998-12-05 Christian Lynbech <chl@tbit.dk>
2015
2016 * setf.scm: New file. Adds the new forms `setf!' and `setter'
2017 which implements generalized references a la Common LISP.
2018
2019 1998-12-02 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2020
2021 * boot-9.scm (process-define-module): Added new specifier
2022 :autoload MODULENAME BINDINGS to the define-module form.
2023 The autoload specifier tells the module system to load the module
2024 MODULENAME at the first occasion that any variable with its name
2025 among BINDINGS is referenced.
2026 (make-autoload-interface): New procedure: Constructs a stand-in
2027 for the public interface for the module to be autoloaded.
2028
2029 1998-12-01 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2030
2031 * boot-9.scm (*suppress-old-style-hook-warning*): Set this to #t
2032 if you don't want the old style hook warnings.
2033
2034 1998-12-01 Christian Lynbech <chl@tbit.dk>
2035
2036 * boot-9.scm (try-using-libtool-name): Fix check on dlname to make
2037 sure that it isn't empty, as it is when we are only buidling
2038 static libraries.
2039
2040 1998-11-27 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2041
2042 * session.scm (arity): New procedure.
2043
2044 1998-11-26 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2045
2046 * boot-9.scm: Use run-hook instead of run-hooks everywhere.
2047
2048 1998-11-26 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2049
2050 * boot-9.scm (run-hooks, add-hook!, remove-hook!): Added temporary
2051 code for backward compatibility until people have had time to
2052 adapt to the new hooks.
2053
2054 1998-11-23 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2055
2056 * boot-9.scm (beautify-user-module!): Beautify also if public
2057 interface is set to the module itself. In this way we can use
2058 beautify-user-module! to beautify a module prepared for object
2059 code.
2060 (process-define-module): Special case: Try to load object code as
2061 well if a module does :use-module on itself.
2062
2063 * boot-9.scm: Bugfix: Since boot-9.scm is now loaded from
2064 invoke_main_func, we can no longer be sure that all modules have
2065 been registered when boot-9.scm is loaded.
2066 (register-modules): New function: Register and tag modules
2067 registered by scm_register_module_xxx since last call to this
2068 function. Modules are tagged with the dynamic object passed as
2069 argument. (Already linked modules should be tagged with #f.)
2070 (init-dynamic-module, link-dynamic-module): Call register-modules
2071 first to register linked modules.
2072
2073 * boot-9.scm (init-dynamic-module): Remove module from
2074 registered-modules as soon as possible in case we are recursively
2075 invoked; Set public interface before doing the dynamic-call.
2076
2077 * boot-9.scm (map-in-order): Removed (replaced by scm_serial_map).
2078 (abort-hook, before-error-hook, after-error-hook,
2079 before-backtrace-hook, after-backtrace-hook, before-read-hook,
2080 after-read-hook, exit-hook): Make hooks with `make-hook'.
2081
2082 * boot-9.scm: Make hooks first class citizens and make them easier
2083 to use from C:
2084 (make-hook, add-hook!, remove-hook!, run-hooks): Moved to
2085 libguile/feature.c.
2086
2087 * boot-9.scm: Added warnings about bindings used in
2088 libguile/modules.c: the-module, set-current-module,
2089 make-modules-in, beautify-user-module!, module-eval-closure.
2090
2091 1998-11-21 Mikael Djurfeldt <mdj@kenneth>
2092
2093 * boot-9.scm (the-environment): New special form: Returns an
2094 object representing the current local evaluation environment.
2095 This object can be used in `local-eval' and `defined?'.
2096
2097 1998-11-13 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2098
2099 * boot-9.scm (collect): New syntax. Similar to begin but returns
2100 a list of the results of all forms in the sequence instead of the
2101 result of the last form.
2102
2103 1998-11-10 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2104
2105 * boot-9.scm (values, call-with-values): Moved here from
2106 syncase.scm.
2107
2108 * syncase.scm (values, call-with-values): Moved to boot-9.scm.
2109
2110 * boot-9.scm (readline-options, readline-enable, readline.disable,
2111 readline-set!: New options interface.
2112
2113 * readline.scm (readline-port): Use readline-options-interface.
2114
2115 1998-11-05 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2116
2117 * boot-9.scm: Set the repl start module in `top-repl' instead of
2118 at the end of boot-9.scm.
2119
2120 1998-11-01 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2121
2122 * emacs.scm (format): Bugfix: Handle multiple arguments
2123 correctly. (Thanks to Thien-Thi Nguyen.)
2124
2125 1998-11-01 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2126
2127 * boot-9.scm (exit-hook): New hook: Is run at the very end of an
2128 interactive session.
2129 (top-repl): Run exit-hook on exit.
2130
2131 * readline.scm (readline-port): Maybe read history; Maybe write
2132 history at exit (add to exit-hook).
2133
2134 Fri Oct 30 15:15:37 1998 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2135
2136 * readline.scm (make-readline-port): Bugfixed last change...
2137
2138 1998-10-28 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2139
2140 * readline.scm (make-readline-port): Don't set prompt to "... " if
2141 read line was empty.
2142
2143 1998-10-19 Jim Blandy <jimb@zwingli.cygnus.com>
2144
2145 * boot-9.scm, debug.scm, expect.scm, hcons.scm, lineio.scm,
2146 r4rs.scm, slib.scm, threads.scm: Update copyright years.
2147
2148 * getopt-gnu-style.scm, slib.scm: Add copyright notice.
2149
2150 Talked to Stallman. Actually, the syntax-case copyright is no
2151 problem. Duh.
2152 * Makefile.am (ice9_sources): Revert last change.
2153 * syncase.scm, psyntax.pp, psyntax.ss: Added again.
2154 * Makefile.in: Regeneretade.
2155
2156 * boot-9.scm: Don't assume that this file is loaded just before
2157 entering a read-eval-print loop. Turn code to load (ice-9 emacs)
2158 into...
2159 (load-emacs-interface): New function.
2160 (top-repl): Call it, if use-emacs-interface is defined and true.
2161 At this point, we *do* know we're about to enter a REPL.
2162
2163 We can't include Kent Dybvig's syntax-case macro expander in the
2164 core Guile distribution, because we don't have copyright
2165 assignments for this code. We can certainly distribute them as a
2166 separate package, but Guile should be FSF code.
2167 * syncase.scm, psyntax.pp, psyntax.ss: Removed.
2168 * Makefile.am (ice9_sources): Removed syncase.scm, psyntax.pp, and
2169 psyntax.ss.
2170 * Makefile.in: Regenerated.
2171
2172 * Makefile.am (ice9_sources): Add getopt-gnu-style.scm.
2173 * Makefile.in: Regenerated.
2174
2175 1998-10-18 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2176
2177 * boot-9.scm: Added extended read syntax for byte vectors #y(...)
2178 and short vectors #h(...).
2179
2180 1998-10-14 Jim Blandy <jimb@zwingli.cygnus.com>
2181
2182 * calling.scm (excursion-function-syntax): Use a sequence of
2183 set!'s, not a single multi-variable set!; we removed support for
2184 that syntax a long time ago. (Thanks to Shuji Narazaki.)
2185
2186 1998-10-12 Jim Blandy <jimb@zwingli.cygnus.com>
2187
2188 * r4rs.scm (OPEN_READ, OPEN_WRITE, OPEN_BOTH): Don't bother
2189 testing software-type here. That's the least of our Windows
2190 porting issues, and it's done wrong anyway.
2191
2192 1998-10-09 Jim Blandy <jimb@zwingli.cygnus.com>
2193
2194 * boot-9.scm (read-path-list-notation-warning): New function:
2195 print a warning the first time we see `#/' notation.
2196
2197 * q.scm (sync-q!, q?, q-remove!, q-push!, enq!): Lots of bugs, and
2198 (eq? #f '()) assumptions. Make functions that aren't documented
2199 to return anything else return the queue itself. (Bug report from
2200 Michael Livshin --- thanks!)
2201
2202 1998-08-21 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2203
2204 * debug.scm (trace-entry, trace-exit): Removed re-enabling of
2205 trace flag.
2206
2207 * boot-9.scm (make-options): Bugfix: Changed pair? --> list? in
2208 order to allow the empty list as arg.
2209 (error-catching-loop): Use `with-traps' to create a dynamic
2210 context with traps enabled.
2211
2212 1998-08-19 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2213
2214 * boot-9.scm: Removed (ice-9 regex) from use-list of (guile)
2215 module.
2216 (try-using-libtool-name): Removed dependency on (ice-9 regex).
2217
2218 1998-08-15 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2219
2220 * boot-9.scm: Make the root module use (ice-9 regex) if
2221 available. The dynamic linking facilities in boot-9.scm are
2222 currently dependent upon regular expressions. My change of
2223 1998-07-14 removed (ice-9 regex) from the use-list of the root
2224 module and thereby destroyed dynamic linking.
2225
2226 1998-07-29 Jim Blandy <jimb@zwingli.cygnus.com>
2227
2228 * Makefile.in: Regenerated using the last public version of
2229 automake, not the hacked Cygnus version.
2230
2231 1998-07-28 Jim Blandy <jimb@zwingli.cygnus.com>
2232
2233 * Makefile.in: Regenerated, after removing Totoro kludge.
2234
2235 1998-07-28 Jim Blandy <jimb@totoro.red-bean.com>
2236
2237 * getopt-gnu-style.scm: New file. (Thanks to Russ McManus.)
2238
2239 1998-07-26 Jim Blandy <jimb@zwingli.cygnus.com>
2240
2241 * Makefile.in Rebuilt, for config changes in parent dir.
2242
2243 1998-07-21 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2244
2245 * readline.scm (make-readline-port): Set prompt string to "... "
2246 after first read line. (Thanks to Richard Polton.)
2247
2248 1998-07-19 Jim Blandy <jimb@zwingli.cygnus.com>
2249
2250 * lineio.scm (make-line-buffering-input-port): Don't use
2251 ungetc-char-ready?, since we don't provide that function any
2252 more. The unread-string function doesn't interact properly with
2253 any of the standard I/O functions anyway. (Thanks to Andrew
2254 Archibald.)
2255
2256 * hcons.scm (hashq-cons-assoc): Don't assume the empty list is
2257 false. Return false when we cannot find a matching entry in the
2258 list. (Thanks to Andrew Archibald.)
2259
2260 1998-07-16 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2261
2262 * boot-9.scm (export, export-syntax): New special forms: Export
2263 bindings from a module. `(export name1 name2 ...)' can be used at
2264 the top of a module (after `define-module') to specify which names
2265 should be exported. It can be used as an alternative to
2266 `define-public'. `export-syntax' works equivalently to `export'
2267 but is intended for export of syntactic keywords.
2268 (Thanks to Thien-Thi Nguyen.)
2269
2270 1998-07-15 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2271
2272 * boot-9.scm: Renamed module `(guile-repl)' --> `(guile-user)'.
2273
2274 1998-07-14 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2275
2276 * boot-9.scm: Let the user start in module `(guile-repl)' instead
2277 of module `(guile)'. Also make sure that `(guile-repl)' uses
2278 suitable modules. This change improves Guile stability
2279 substantially since bindings will only be copied from the root
2280 module: If the user redefines builtins in `(guile-repl)' it won't
2281 affect the internal operation of Guile itself.
2282
2283 1998-06-19 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2284
2285 * boot-9.scm (load-module): When loading files from within files
2286 themselves being loaded: Use the directory path of the file being
2287 loaded as root for relative filenames. (After suggestion by
2288 Steven G. Johnson.)
2289
2290 1998-06-15 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2291
2292 * emacs.scm (emacs-load): New feature: Eval in specified module.
2293
2294 1998-06-14 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2295
2296 * readline.scm: Typo in regex module name.
2297
2298 1998-06-13 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2299
2300 * readline.scm (apropos-completion-function): regexp-quote text to
2301 be completed.
2302
2303 1998-06-11 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2304
2305 * debug.scm, emacs.scm: Bugfix: Treat `the-last-stack' as a fluid.
2306
2307 1998-06-09 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2308
2309 * boot-9.scm: Check that (current-input-port) is a tty before
2310 enabling readline. (Thanks to Michael N. Livshin.)
2311
2312 1998-06-07 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2313
2314 * boot-9.scm (use-syntax): Turned into a macro inorder to be
2315 similar in use to `use-modules'.
2316 Example: (use-syntax (ice-9 syncase)) will 1. load the module
2317 (ice-9 syncase), and, 2. install the procedure `syncase' as eval
2318 transformer.
2319 (internal-use-syntax): New procedure.
2320 (process-define-module): Use `internal-use-syntax'.
2321
2322 1998-05-19 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2323
2324 * Makefile.am (ice9_sources): Add emacs.scm.
2325
2326 1998-05-13 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2327
2328 * readline.scm: Use the new readline facilities: Add the
2329 possibility to control input and output ports; Add apropos
2330 completion.
2331
2332 * boot-9.scm: Antirevert Jim's readline code which he reverted
2333 19971027 and adapt it to the current readline interface.
2334
2335 * boot-9.scm (top-repl): Only enable readline if not using the
2336 Emacs interface; Only use repl prompt when using the readline port
2337 from repl-read. (We don't want to see it when calling `read'.)
2338
2339 * boot-9.scm (remove-hook!): Parenthesis bug.
2340
2341 1998-05-11 Mikael Djurfeldt <mdj@kenneth>
2342
2343 * boot-9.scm: Load readline module if readline is present.
2344
2345 * readline.scm (apropos-completion-function): New procedure:
2346 Symbolic completion. (Thanks to Andrew Archibald!)
2347
2348 1998-04-22 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2349
2350 * boot-9.scm (process-define-module): Added keyword use-syntax.
2351
2352 1998-04-19 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2353
2354 * nonblocking.scm: Removed. libguile is now inherently
2355 nonblocking through the use of scm_internal_select.
2356
2357 * emacs.scm: Removed use of nonblocking.scm.
2358
2359 * gwish.scm, gtcl.scm: Removed. tcltk.scm has made these
2360 obsolete.
2361
2362 1998-04-15 Mikael Djurfeldt <mdj@nada.kth.se>
2363
2364 * runq.scm (runq-control): Corrected spelling of enqueue!.
2365 (Thanks to Karl M. Hegbloom.)
2366
2367 1998-03-30 Mikael Djurfeldt <mdj@nada.kth.se>
2368
2369 * boot-9.scm: Added new run-time option interface eval-options.
2370
2371 1998-03-28 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2372
2373 * boot-9.scm (remove-hook!): New macro. (Thanks to Maciej
2374 Stachowiak.)
2375
2376 1998-01-30 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2377
2378 * threads.scm: Added simple error and signal handler.
2379 (make-thread, begin-handler): Use this handler. The most
2380 important effect of this is that signals get unmasked.
2381 Previously, when a signal was thrown signals remained masked
2382 (signals get masked when a signal is taken) which influenced other
2383 threads.
2384
2385 1998-01-01 Tim Pierce <twp@skepsis.com>
2386
2387 A better fix to the SLIB identity problem -- thanks to Marius Vollmer.
2388 * slib.scm (identity): Unmake public.
2389 (slib:eval): Evaluate inside `slib-module'.
2390
2391 1997-12-24 Tim Pierce <twp@skepsis.com>
2392
2393 * boot-9.scm: Doc fix.
2394
2395 * slib.scm (identity): Made public.
2396 (home-vicinity): New function (from SLIB/Template.scm).
2397
2398 1997-12-13 Tim Pierce <twp@skepsis.com>
2399
2400 * boot-9.scm (read-line): Rewritten to call %read-line for
2401 improved speed. Minor user-visible changes: the new functions are
2402 hardwired to treat the LFD character as signifying end-of-line, so
2403 changing `scm-line-incrementors' will no longer affect the
2404 behavior of read-line. On platforms which do not represent
2405 end-of-line with a LFD character, read-line should behave more
2406 like native line-processing facilities, but there is still a ways
2407 to go here.
2408
2409 Sat Nov 29 01:24:46 1997 Mikael Djurfeldt <mdj@kenneth>
2410
2411 * boot-9.scm (error-catching-loop, save-stack): `the-last-stack'
2412 is now a fluid.
2413
2414 1997-11-28 Tim Pierce <twp@skepsis.com>
2415
2416 * boot-9.scm (find-and-link-dynamic-module): If a module directory
2417 contains a .la file (a libtool support file), attempt to extract
2418 the shared library name from that file. If the .la file does not
2419 exist, try to link against a .so file. Libtool-generated compiled
2420 modules should load more cleanly in Guile now.
2421 (try-using-libtool-name, try-using-sharlib-name): New functions.
2422
2423 Sun Nov 9 06:10:59 1997 Gary Houston <ghouston@actrix.gen.nz>
2424
2425 * boot-9.scm (set-batch-mode?!, batch-mode?): initialize more
2426 usefully so they will work from a script.
2427
2428 1997-10-31 Marius Vollmer <mvo@zagadka.ping.de>
2429
2430 * boot-9.scm (inherit-print-state): Moved definition to the
2431 neighborhood of the record code.
2432
2433 Mon Oct 27 02:05:49 1997 Jim Blandy <jimb@totoro.red-bean.com>
2434
2435 * boot-9.scm: Revert changes to this file from Oct 23. It turns
2436 out to interact badly with the Emacs support and the Tcl/Tk
2437 support. It's not a high enough priority at the moment to be
2438 worth fixing. I'm leaving the other readline support in, though.
2439
2440 Sat Oct 25 14:23:22 1997 Jim Blandy <jimb@totoro.red-bean.com>
2441
2442 * Makefile.am: Include readline.scm in the list of files to be
2443 installed, so Guile can find it for interactive use.
2444 * Makefile.in: Regenerated.
2445
2446 Thu Oct 23 01:00:33 1997 Jim Blandy <jimb@totoro.red-bean.com>
2447
2448 Add support for readline function.
2449 * readline.scm: New module.
2450 * boot-9.scm (repl-reader): New function.
2451 (scm-style-repl): Call repl-reader, instead of doing the reading
2452 ourselves. Remove repl-report-reset; it was never used for
2453 anything.
2454 (top-repl): If we've got the readline primitives, then redefine
2455 repl-reader to use them.
2456 If we've got the readline primitives, import the readline module.
2457
2458 * ls.scm (ls, lls): Don't assume (eq? #f '()).
2459
2460 Wed Oct 22 18:26:57 1997 Jim Blandy <jimb@totoro.red-bean.com>
2461
2462 * calling.scm, common-list.scm, ls.scm, q.scm, runq.scm,
2463 string-fun.scm: Added copyright notices; reformatted.
2464
2465 Thu Oct 9 05:44:00 1997 Gary Houston <ghouston@actrix.gen.nz>
2466
2467 * expect.scm: (expect-regexec): new procedure, use it in
2468 expect-strings to fix the => syntax under the new regex system.
2469 (top): include regex module in define-module statement.
2470
2471 Wed Oct 8 03:16:01 1997 Gary Houston <ghouston@actrix.gen.nz>
2472
2473 * (error-catching-loop): new local variable "interactive". if
2474 #f, abort terminates the process.
2475 (set-batch-mode?!, batch-mode?): new closures, defined in
2476 error-catching-loop. the names are from scsh.
2477
2478 1997-10-06 Marius Vollmer <mvo@zagadka.ping.de>
2479
2480 * boot-9.scm (inherit-print-state): If NEW-PORT contains a
2481 print-state, throw it away.
2482
2483 Fri Oct 3 12:00:00 Mikael Djurfeldt <mdj@nada.kth.se>
2484
2485 * boot-9.scm (struct-layout): Use `vtable-index-layout' instead of
2486 `0'.
2487
2488 Thu Oct 2 12:00:00 Mikael Djurfeldt <mdj@nada.kth.se>
2489
2490 * boot-9.scm (struct-printer, make-struct-printer,
2491 set-struct-printer-in-vtable!, *struct-printer*): Removed.
2492 (record-type-vtable, make-record-type): Don't use make-struct-printer.
2493 (record-type-vtable): User fields "prpr" (printer is no longer a
2494 user field).
2495 (record-type-name, record-type-fields): Decreased slot index by
2496 one; Use `vtable-offset-user'.
2497
2498 Thu Oct 2 12:00:00 Marius Vollmer <mvo@zagadka.ping.de>
2499
2500 * boot-9.scm (inherit-print-state): New experimental function.
2501
2502 Tue Sep 30 13:12:48 1997 Jim Blandy <jimb@totoro.red-bean.com>
2503
2504 Suggestion and script from Maciej Stachowiak:
2505 * boot-9.scm: Split off modules into separate, autoloadable files.
2506 This reduces startup time from 10.5s to 5.5s (user cpu).
2507 * calling.scm, common-list.scm, ls.scm, q.scm, runq.scm,
2508 string-fun.scm: New files, containing stuff that used to be in
2509 boot-9.scm.
2510 * Makefile.am (ice9_sources): List new files here, for
2511 distribution and installation.
2512 * Makefile.in: Regenerated.
2513
2514 Mon Sep 29 23:53:55 1997 Jim Blandy <jimb@totoro.red-bean.com>
2515
2516 * Makefile.in: Regenerated with automake 1.2c.
2517
2518 Mon Sep 29 03:21:24 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2519
2520 * slib.scm (slib:load): slib:load first tries to load the file
2521 named NAME, then NAME.scm. On error, report the error occuring at
2522 the first attempt (NAME) rather than the second (NAME.scm).
2523
2524 * boot-9.scm: Bugfix: Hard-solder the print-option procedure into
2525 the make-options macro so that we needn't refer to a global
2526 symbol.
2527
2528 Sun Sep 28 21:40:24 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2529
2530 * debug.scm: Moved options interface procedures to boot-9.scm.
2531
2532 * boot-9.scm: Define options interface procedures here instead.
2533
2534 Sat Sep 27 20:19:20 1997 Jim Blandy <jimb@totoro.red-bean.com>
2535
2536 * boot-9.scm (separate-fields-discarding-char,
2537 separate-fields-after-char, separate-fields-before-char): Call
2538 continuation function, RET, as advertised: with each separated
2539 field a separate argument.
2540
2541 * Makefile.in: Regenerated with automake 1.2a.
2542
2543 Sat Sep 20 14:23:53 1997 Mikael Djurfeldt <mdj@kenneth>
2544
2545 * slib.scm (slib:load): Export.
2546
2547 * boot-9.scm (in-vicinity): Bugfix: Don't add "/" to an empty
2548 vicinity;
2549 Provide defmacro.
2550
2551 Thu Sep 18 01:24:31 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2552
2553 * r4rs.scm (apply): Set name property to 'apply.
2554
2555 Tue Sep 16 22:09:50 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2556
2557 * boot-9.scm (keyword->symbol, display-usage-report): Changed
2558 length --> string-length. (Thanks to Aleksandar Bakic.)
2559 (separate-fields-discarding-char, separate-fields-after-char,
2560 separate-fields-before-char): Bugfix from Maciej Stachowiak
2561 <mstachow@mit.edu>. Thanks!
2562 (try-module-linked): Try to find module among those already
2563 registered.
2564 (try-module-dynamic-link): Removed the first test which
2565 corresponds to a call to `try-module-linked'.
2566 (resolve-module): Resolve modules in this order: 1. Already
2567 registered modules (for example those which have been statically
2568 linked), 2. Try to autoload an .scm-file, 3. Try to dynamically
2569 link a .so-file.
2570
2571 Mon Sep 15 23:39:54 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2572
2573 * boot-9.scm (iota): Renamed list-reverse! --> reverse!
2574
2575 Thu Sep 11 02:31:38 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2576
2577 * session.scm (name): New procedure: Gives name of object.
2578 (source): New procedure: Gives source of object.
2579
2580 Wed Sep 10 20:12:45 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2581
2582 * boot-9.scm (primitive-macro?): New procedure.
2583
2584 * slib.scm: Added hack which transfers syntactic information from
2585 the builtin variable `define' to the slib version if module (ice-9
2586 syncase) has been loaded. This is necessary to get correct
2587 expansion inside the slib module.
2588
2589 * psyntax.ss (build-let, build-named-let): New output
2590 constructors.
2591 (build-lexical-var): Seed gensym with symbolic name.
2592 (self-evaluating?): Add keywords among self-evaluating types.
2593 (let): New core form.
2594 (if): Removed from core language.
2595 (or, and, let, cond): Removed syntactic definitions.
2596 (sc-expand3): New procedure: Expander which takes optional mode
2597 and eval-syntactic-expanders-when arguments.
2598
2599 * syncase.scm (psyncomp): New procedure: Recompiles psyntax.pp.
2600 Should be used inside the (ice-9 syncase) module with (use-syntax
2601 syncase) and with the current directory containing the psyntax.ss
2602 source.
2603 Added hack to transfer syntactic information from the builtin
2604 variable `define' to the slib version if module (ice-9 slib) has
2605 been loaded.
2606
2607 Fri Sep 5 05:47:36 1997 Mikael Djurfeldt <mdj@faun.nada.kth.se>
2608
2609 * syncase.scm (sc-interface, sc-expand): Removed hook setup.
2610 (syncase): Publish syntax transformer to be used with
2611 `use-syntax'.
2612 (sc-macro): Use this as the value when publishing macros.
2613
2614 * boot-9.scm (module-type): Added `transformer'.
2615 (make-module): Modified initialization.
2616 (module-transformer, set-module-transformer!): Selector and
2617 mutator for module-associated transformer.
2618 (set-current-module): Use module-transformer to set
2619 `scm:eval-transformer'.
2620 (module-use!): Previous change reverted.
2621 (use-syntax): New function: Install a transformer in current
2622 module.
2623 (sc-interface, sc-expand): Removed! :)
2624
2625 Fri Sep 5 03:09:09 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2626
2627 * emacs.scm (emacs-load): Added new parameter `module'.
2628
2629 * syncase.scm (putprop, getprop): Modified to use the object
2630 properties of the variable object corresponding to the symbol;
2631 This way we can ride on the mechanisms of the module system.
2632 Changed `builtin-variable' calls to `define-public' calls.
2633 Setup the hooks sc-expand and sc-interface.
2634
2635 * boot-9.scm (sc-interface, sc-expand): New builtin variables.
2636 (set-current-module): Switch to and from sc-expand as
2637 scm:eval-transformer when going into and out of modules using
2638 syncase macros.
2639 (module-use!): Set scm:eval-transformer to sc-expand when adding
2640 the syncase interface.
2641
2642 Thu Sep 4 14:57:04 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2643
2644 * syncase.scm (putprop): Temporary fix which publishes new syntax
2645 globally (the old behaviour was complex and connected to the inner
2646 workings of the current module system).
2647
2648 Wed Sep 3 21:29:13 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2649
2650 * psyntax.ss: Updated.
2651 psyntax.pp: Bugfix: Previous version had some leading "t":s cut
2652 off!
2653
2654 Tue Sep 2 00:26:42 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2655
2656 * boot-9.scm (gensym): Removed (replaced by primitive).
2657 (obarray-gensym): Rewritten to use `gensym'.
2658 (gentemp): Rewritten to use `gensym'.
2659
2660 Mon Sep 1 20:08:32 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2661
2662 * gtcl.scm (make-tcl-binder): Rewritten to choose bindings
2663 according to the following priorities:
2664 1. tcl bindings which are present in override-scheme-list
2665 2. bindings from the-scm-module
2666 3. tcl bindings
2667 This way the gtcl module can occur first in the use-list without
2668 disabling the scheme interpreter.
2669 (new-interpreter): New function.
2670
2671 * gwish.scm: Moved initialization code for the-interpreter to
2672 gtcl.scm; Moved name space cleaning code to gtcl.scm and rewrote
2673 it; Call `new-interpreter'; Don't :use-module (guile).
2674
2675 Thu Aug 28 23:48:53 1997 Jim Blandy <jimb@totoro.red-bean.com>
2676
2677 * Makefile.in: Regenerated.
2678
2679 Wed Aug 27 11:35:09 1997 Jim Blandy <jimb@totoro.red-bean.com>
2680
2681 * Makefile.in: Regenerated, so it uses "tar", not "gtar".
2682
2683 Mon Aug 25 22:00:44 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2684
2685 * emacs.scm (object->string, format, error-args->string): New
2686 procedures.
2687 (emacs-frame-eval): Reworked.
2688
2689 Mon Aug 25 16:15:55 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2690
2691 * session.scm (apropos-internal): Musn't initialize symbol
2692 accumulator with a constant pair. That led to mutation of the
2693 source!
2694
2695 Sun Aug 24 01:03:10 1997 Mikael Djurfeldt <mdj@kenneth>
2696
2697 * session.scm (vector-for-each): Removed.
2698 (apropos): vector-for-each --> array-for-each.
2699 (apropos-internal): New function. Return list of accessible
2700 symbols matching regexp.
2701
2702 * debug.scm (frame-number->index): New function. Convert frame
2703 number (as displayed in the backtrace) to frame index (to be used
2704 in stack-ref).
2705
2706 * emacs.scm (emacs-load): New arguments: interactivep: when
2707 non-false, send back results to Emacs; colnum: Column number;
2708 Use modules (ice-9 debug) and (ice-9 session);
2709 (no-stack, no-source): New simple-actions;
2710 (result-to-emacs): New procedure. Sends data to Emacs via the
2711 result protocol;
2712 (get-frame-source, emacs-select-frame, emacs-frame-eval,
2713 emacs-symdoc): New procedures.
2714
2715 Wed Aug 20 13:21:11 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2716
2717 * emacs.scm (emacs-load): Adjust stack narrowing.
2718 (whitespace-chars): Include #\np.
2719
2720 * syncase.scm: Also turn off debugging evaluator and recording of
2721 procedure names during loading of psyntax.pp.
2722
2723 * psyntax.pp: Removed leading blanks => 800K -> 100K.
2724
2725 Tue Aug 19 02:39:41 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2726
2727 * syncase.scm: Don't tamper with debug mode setting when enabling
2728 macros. Instead cut the stack with start-stack.
2729 Load psyntax.pp with recording of positions turned off.
2730
2731 * psyntax.pp, psyntax.ss (quasiquote): Changed fx= --> =.
2732
2733 * syncase.scm: New file: Guile-adaption for syntax-case macros.
2734 * psyntax.pp, psyntax.ss: Syntax-case macros, portable version 2 by
2735 R. Kent Dybvig, Oscar Waddell, Bob Hieb and Carl Bruggeman
2736
2737 Mon Aug 18 21:58:25 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2738
2739 * session.scm: New file: Session support.
2740 (apropos): New procedure: List bindings given regexp.
2741
2742 Sat Aug 16 18:44:24 1997 Gary Houston <ghouston@actrix.gen.nz>
2743
2744 * boot-9.scm: define tms accessors: clock, utime, stime, cutime,
2745 cstime.
2746
2747 Thu Aug 14 19:55:37 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2748
2749 * emacs.scm (emacs-load): Something has changed in the reader so
2750 that we now should set the port line count to the specified value
2751 (linum) instead of (- linum 1).
2752
2753 * slib.scm (slib:load): Use load-from-path instead of
2754 primitive-load-path so that backtraces get narrowed properly at
2755 the top.
2756
2757 * boot-9.scm (top-repl): Save stack already in signal handler in
2758 order to narrow it correctly.
2759 (save-stack): Adjust narrowing tag for the top of load-stacks.
2760
2761 Tue Jul 29 01:18:08 1997 Gary Houston <ghouston@actrix.gen.nz>
2762
2763 * boot-9.scm (move->fdes, dup->port): use dup->fdes, not primitive-dup.
2764 (dup->fdes): deleted, now done in C.
2765
2766 Sat Jul 26 08:00:42 1997 Gary Houston <ghouston@actrix.gen.nz>
2767
2768 * boot-9.scm (setenv): new procedure, scsh compatible.
2769
2770 Sat Jul 26 21:30:10 1997 Marius Vollmer <mvo@zagadka.ping.de>
2771
2772 * boot-9.scm (with-fluids): New macro to go with the
2773 builtin `with-fluids*'.
2774
2775 Thu Jul 24 04:28:11 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2776
2777 * slib.scm (install-require-module): In newer versions of slib
2778 *catalog* is #f until the first access. Therefore we call
2779 require:provided? for a random feature if *catalog* is #f.
2780
2781 Wed Jul 23 20:13:04 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2782
2783 * boot-9.scm: If using emacs interface, enable backtraces
2784 automatically.
2785
2786 Mon Jul 21 06:45:45 1997 Gary Houston <ghouston@actrix.gen.nz>
2787
2788 * boot-9.scm (dup->port, dup->inport, dup->outport, dup->fdes,
2789 dup, fdes->inport, fdes->outport, port->fdes): new procedures.
2790 (duplicate-port): was a C primitive, now it's here.
2791 (move->fdes): allow the first argument to be a file descriptor.
2792 Return the modified port or file descriptor (was unspecified.)
2793
2794 Fri Jul 11 00:13:43 1997 Jim Blandy <jimb@floss.red-bean.com>
2795
2796 Changes to compile under gnu-win32, from Marcus Daniels:
2797 * boot-9.scm (load-user-init): If HOME is unset, provide
2798 a default of /.
2799
2800 * boot-9.scm (define-public): Changed to accomodate Hobbit.
2801
2802 Tue Jun 24 00:31:47 1997 Jim Blandy <jimb@floss.red-bean.com>
2803
2804 * boot-9.scm, debug.scm, hcons.scm, lineio.scm, mapping.scm,
2805 poe.scm, slib.scm, tags.scm, threads.scm: Use normal list
2806 notation, instead of #/ notation.
2807
2808 * expect.scm (expect-strings): Pass regexp/newline flag to
2809 make-regexp.
2810
2811 Mon Jun 23 16:13:38 1997 Jim Blandy <jimb@floss.red-bean.com>
2812
2813 Fix inconsistencies in parsing of #/ style lists.
2814 * boot-9.scm (read-path-list-notation): New function.
2815 (parse-path-symbol): Deleted. Replaced by above.
2816 Plug in read-path-list-notation as the parser for #/ lists,
2817 instead of the anonymous lambda form calling parse-path-symbol.
2818 (Thanks to Maurizio Vitale.)
2819
2820 * boot-9.scm (make-list): Remove the definition of this function
2821 from the (ice-9 common-list) module; make the `init' argument
2822 optional in the scm module's definition, to match the deleted
2823 definition. Harmony reigneth? (Thanks to Bernard URBAN.)
2824
2825 Sun Jun 22 18:33:17 1997 Jim Blandy <jimb@floss.red-bean.com>
2826
2827 Try to detect when people are using one version of libguile and a
2828 different version of ice-9. People have been skewing things and
2829 sending in bug reports.
2830 * version.scm.in: New file, which the configure script munges to
2831 produce version.scm, which contains the ice-9 config stamp.
2832 * boot-9.scm: Compare the libguile and ice-9 config stamps;
2833 display a warning if the two are different.
2834 * Makefile.am: Install version.scm, but don't distribute it.
2835 Distribute version.scm.in, but don't install it.
2836 * Makefile.in: Regenerated.
2837
2838 Thu Jun 19 21:01:16 1997 Jim Blandy <jimb@floss.red-bean.com>
2839
2840 * slib.scm (slib:warn): Alias for WARN function.
2841
2842 Fri Jun 13 00:32:04 1997 Jim Blandy <jimb@floss.red-bean.com>
2843
2844 * boot-9.scm (struct-printer): Fix off-by-one error in range
2845 check. Correctly check for struct printer tag.
2846
2847 * expect.scm: Turn this into a module, (ice-9 expect).
2848 (expect-port, expect-timeout, expect-timeout-proc,
2849 expect-eof-proc, expect-char-proc, expect, expect-strings,
2850 expect-select): Make these public definitions.
2851 (expect-strings): Use make-regexp and regexp-exec, instead of
2852 regcomp and regexec. We've omitted the REG_NEWLINE flag; hope
2853 that's okay.
2854
2855 * boot-9.scm (with-regexp-parts): Comment this out. It has no
2856 users in the core, and relies on mildly hairy details of the old
2857 regexp interface.
2858
2859 * test.scm: Re-enable tests asserting that '() is true, and not a
2860 boolean. This stuff has been true for a while.
2861
2862 * boot-9.scm (ipow-by-squaring, butlast): Fix uses of outdated
2863 function names.
2864
2865 * boot-9.scm (with-excursion-getter-and-setter, q-rear): Doc
2866 fixes.
2867
2868 Wed Jun 11 00:31:40 1997 Jim Blandy <jimb@floss.red-bean.com>
2869
2870 * Makefile.in: Regenerated after xtra_PLUGIN_guile_libs change in
2871 ../configure.in.
2872
2873 Fri Jun 6 14:37:18 1997 Marius Vollmer <mvo@zagadka.ping.de>
2874
2875 * boot-9.scm (struct-printer): Bugfix: Check the layout of the
2876 vtable and not the one of the struct.
2877
2878 Wed Jun 4 23:27:16 1997 Marius Vollmer <mvo@zagadka.ping.de>
2879
2880 * boot-9.scm (struct-layout, %struct-printer-tag, struct-printer,
2881 make-struct-printer, set-struct-printer-in-vtable!): New bindings
2882 to support printing of structures.
2883 (record-type-vtable, make-record-type): Add slot to hold printing
2884 function and initialize it with something appropriate. Removed
2885 commented out printing code.
2886 (record-type-name, record-type-fields): Adjusted slot offsets.
2887 (%print-module): Reduce argument list to "mod" and "port".
2888
2889 Tue Jun 3 17:04:18 1997 Jim Blandy <jimb@totoro.cyclic.com>
2890
2891 * slib.scm (identity): New function, used by SLIB.
2892
2893 Sat May 31 18:57:12 1997 Gary Houston <ghouston@actrix.gen.nz>
2894
2895 * boot-9.scm: signal-handler, alarm-thunk: removed.
2896 don't define ticks-interrupt etc.
2897 top-repl: install signal handlers for SIGINT, SIGFPE, SIGSEGV, SIGBUS
2898 during call to scm-style-repl.
2899
2900 Fri May 30 18:08:10 1997 Jim Blandy <jimb@floss.cyclic.com>
2901
2902 * slib.scm (slib:load): Use primitive-load-path instead of
2903 basic-load. This is probably wrong, but hopefully the entire
2904 source access system will be revised soon anyway, and this will
2905 make require behave more like Emacs Lisp's require. If this
2906 breaks something, please let me know. Maybe this is real dumb.
2907
2908 Thu May 29 02:36:48 1997 Jim Blandy <jimb@floss.cyclic.com>
2909
2910 * regex.scm: Add a module declaration. Use DEFINE-PUBLIC everywhere.
2911 * boot-9.scm: If the `regex' feature is present, use the module
2912 (ice-9 regex).
2913
2914 Tue May 27 22:48:14 1997 Tim Pierce <twp@twp.tezcat.com>
2915
2916 * regex.scm: New file.
2917 * Makefile.am (subpkgdata_DATA): Add regex.scm.
2918 * Makefile.in: Regenerated.
2919
2920 Mon May 26 17:24:48 1997 Jim Blandy <jimb@totoro.cyclic.com>
2921
2922 * COPYING, boot-9.scm, debug.scm, emacs.scm, expect.scm, gtcl.scm,
2923 gwish.scm, hcons.scm, lineio.scm, mapping.scm, nonblocking.scm,
2924 oldprint.scm, poe.scm, r4rs.scm, source.scm, tags.scm, test.scm,
2925 threads.scm: New address for FSF.
2926
2927 Fri May 16 04:09:45 1997 Jim Blandy <jimb@floss.cyclic.com>
2928
2929 * debug.scm: Update copyright years; this file has been worked on
2930 in 1997.
2931
2932 Thu May 15 07:56:08 1997 Gary Houston <ghouston@actrix.gen.nz>
2933
2934 * expect.scm: use gettimeofday instead of get-internal-real-time
2935 and use a floating point timeout when calling select. Untested,
2936 since the regex library is currently AWOL.
2937
2938 Wed May 14 21:00:30 1997 Jim Blandy <jimb@floss.cyclic.com>
2939
2940 * boot-9.scm (eval-string): Function deleted; it was already
2941 implemented in C, so there's no point in making a divergable copy
2942 here.
2943
2944 Tue May 13 16:40:06 1997 Jim Blandy <jimb@floss.cyclic.com>
2945
2946 * Makefile.in: Regenerated, using automake-1.1p.
2947
2948 Tue May 13 16:40:06 1997 Jim Blandy <jimb@floss.cyclic.com>
2949
2950 * Makefile.in: Regenerated, using automake-1.1p.
2951
2952 Tue May 13 02:48:49 1997 Gary Houston <ghouston@actrix.gen.nz>
2953
2954 * boot-9.scm (error-catching-loop): don't read a line from
2955 current input when quit is encountered, the previous change
2956 fixes this too.
2957
2958 Mon May 12 19:00:21 1997 Jim Blandy <jimb@floss.cyclic.com>
2959
2960 * boot-9.scm (scm-style-repl): After reading an expression,
2961 consume any trailing newline (perhaps preceded by whitespace), to
2962 avoid screwing up GDB. More detail in comments.
2963
2964 Mon May 5 13:18:38 1997 Jim Blandy <jimb@floss.cyclic.com>
2965
2966 * Makefile.am (ETAGS_ARGS): New variable, since we're not treating
2967 the Scheme code like code yet.
2968 * Makefile.in: Resrac,husrched.
2969
2970 Wed Apr 30 15:25:15 1997 Marius Vollmer <mvo@zagadka.ping.de>
2971
2972 * boot-9.scm (link-dynamic-module): Do not catch errors from
2973 dynamic-link and dynamic-call. When the shared library exists it
2974 is now assumed to be suitable for a dynamic C module.
2975
2976 Fri Apr 25 21:21:35 1997 Marius Vollmer <mvo@zagadka.ping.de>
2977
2978 * boot-9.scm (process-use-modules): New function to support the
2979 use-modules macro
2980 (use-modules): throw an error iff one of the requested modules
2981 can't be found.
2982
2983 Tue Apr 29 06:54:46 1997 Gary Houston <ghouston@actrix.gen.nz>
2984
2985 * boot-9.scm: don't define timer-thunk or gc-thunk.
2986
2987 Sun Apr 27 17:56:09 1997 Jim Blandy <jimb@floss.cyclic.com>
2988
2989 * aclocal.m4: Removed; unnecessary, given changes of Apr 24.
2990
2991 * Makefile.am (subpkgdatadir): Use "ice-9" instead of "@module@";
2992 we're not using AM_INIT_GUILE_MODULE any more.
2993 * Makefile.in: Regeneratitetedrerd.
2994
2995 Thu Apr 24 01:33:33 1997 Jim Blandy <jimb@floss.cyclic.com>
2996
2997 Get 'make dist' to work again.
2998 * Makefile.am (EXTRA_DIST): Remove PLUGIN files.
2999 * Makefile.in: Regenerated, like two tons of fleas.
3000
3001 Changes for reduced Guile distribution: one configure script,
3002 no plugins.
3003 * configure.in, configure: Removed.
3004 * Makefile.in: Regenerated.
3005
3006 Sat Apr 19 08:03:50 1997 Jim Blandy <jimb@floss.cyclic.com>
3007
3008 * boot-9.scm (eval-string, command-line, load-user-init): New
3009 functions.
3010
3011 Sat Apr 12 08:27:05 1997 Gary Houston <ghouston@actrix.gen.nz>
3012
3013 * boot-9.scm (log10): defined.
3014
3015 Tue Apr 1 17:46:49 1997 Gary Houston <ghouston@actrix.gen.nz>
3016
3017 * expect.scm (expect-select): correct the millisecond timeout
3018 arithmetic (from Marko.Kohtala@ntc.nokia.com).
3019
3020 Mon Mar 31 03:23:19 1997 Gary Houston <ghouston@actrix.gen.nz>
3021
3022 * boot-9.scm (open-input-pipe, open-output-pipe): defined here
3023 instead of in libguile.
3024 (tm:sec etc.) new accessors for broken-down time.
3025 (set-tm:sec etc.) new setters for broken-down time.
3026
3027 Thu Mar 27 05:06:00 1997 Gary Houston <ghouston@actrix.gen.nz>
3028
3029 * boot-9.scm (netent:addrtype, servent:port): added missing
3030 procedures.
3031 (netent:net, servent:proto): repaired.
3032 (utsname:sysname etc.): new accessors for uname.
3033
3034 Tue Mar 25 03:04:03 1997 Gary Houston <ghouston@actrix.gen.nz>
3035
3036 * boot-9.scm (sockaddr:fam, sockaddr:path, sockaddr:addr,
3037 sockaddr:port): new functions.
3038
3039 Wed Mar 19 04:50:34 1997 Gary Houston <ghouston@actrix.gen.nz>
3040
3041 * boot-9.scm: define accessor procedures for the objects returned
3042 by getpw, getgr, gethost, getnet, getproto, getserv (e.g.,
3043 passwd:name, where the first component is the name of the C structure
3044 and the second is the unprefixed C member name.)
3045
3046 Tue Mar 18 18:39:31 1997 Gary Houston <ghouston@actrix.gen.nz>
3047
3048 * boot-9.scm (setpwent, setgrent, sethostent, setnetent, setprotoent,
3049 setservent): no longer take an argument, it was bogus.
3050
3051 Thu Mar 13 00:13:41 1997 Gary Houston <ghouston@actrix.gen.nz>
3052
3053 * boot-9.scm (scm-error): deleted, reimplemented in C.
3054
3055 Mon Mar 10 15:48:31 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3056
3057 * boot-9.scm (process-define-module): Modified to handle both
3058 keywords and symbols.
3059
3060 Sat Mar 8 04:32:44 1997 Gary Houston <ghouston@actrix.gen.nz>
3061
3062 * slib.scm: update read usage.
3063
3064 * r4rs.scm: update primitive-load usage.
3065 Don't define read-sharp.
3066
3067 * boot-9.scm: use read-hash-extend to install extra read syntax.
3068 (read-sharp): removed.
3069 Adjust usage of primitive-load-path, read, which no longer take
3070 case_i or read-sharp arguments.
3071
3072 Sat Mar 8 00:07:54 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3073
3074 * boot-9.scm: Added loading of session support module.
3075
3076 * debug.scm: Removed `display-application'. (Replaced by
3077 primitive procedure.)
3078
3079 * boot-9.scm (beautify-user-module!): Don't add the root module
3080 interface to the end of the use-list of the root module.
3081
3082 Thu Mar 6 07:26:34 1997 Gary Houston <ghouston@actrix.gen.nz>
3083
3084 * boot-9.scm: repl-quit, repl-abort: obsolete variables deleted.
3085
3086 Wed Mar 5 20:30:24 1997 Gary Houston <ghouston@actrix.gen.nz>
3087
3088 * boot-9.scm: check use-emacs-interface for emacs support.
3089
3090 Sun Mar 2 19:47:14 1997 Gary Houston <ghouston@actrix.gen.nz>
3091
3092 * boot-9.scm (scm-style-repl): call repl-report-start-timing if
3093 read gets EOF.
3094 * (exit): alias for quit.
3095
3096 Sun Mar 2 05:25:11 1997 Gary Houston <ghouston@actrix.gen.nz>
3097
3098 * boot-9.scm (error-catching-loop thunk): use a status variable to
3099 return the quit args.
3100 (scm-style-repl): call -quit, passing return value from
3101 error-catching-repl. Make -quit return its args.
3102 stand-alone-repl: comment out, since it seems unused.
3103
3104 (error-catching-loop thunk): discard trailing junk after a (quit).
3105
3106 Sat Mar 1 15:24:39 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3107
3108 * boot-9.scm: Removed the old printer code.
3109
3110 * r4rs.scm (apply, call-with-current-continuation): Added comment
3111 explaining why apply and call/cc need to be closures.
3112
3113 * boot-9.scm (apply, call-with-current-continuation): Bugfix:
3114 Removed. These definitions are already present in r4rs.scm.
3115
3116 * debug.scm (trace-entry, trace-exit): Check that we're on a repl
3117 stack before printing traced frames; Re-enable trace flag at end
3118 of handlers.
3119
3120 Sat Mar 1 00:10:38 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3121
3122 * debug.scm: Add hook for reset of trace level at abort.
3123
3124 * boot-9.scm (run-hooks): New procedure.
3125 (add-hooks!): New macro.
3126 Change hooks to use these functions.
3127
3128 * debug.scm: *Warning* This feature is a bit premature. I add
3129 it anyway because 1. it is very useful, and, 2. you can start
3130 making it less premature by complaining to me and by modifying
3131 the source! :-)
3132 (trace): Given one or more procedure objects, trace each one.
3133 Given no arguments, show all traced procedures.
3134 (untrace): Given one or more procedure objects, untrace each one.
3135 Given no arguments, untrace all traced procedures. The tracing in
3136 Guile have an advantage to most other systems: We don't create new
3137 procedure objects, but mark the procedure objects themselves.
3138 This means that also anonymous and internal procedures can be
3139 traced.
3140
3141 * boot-9.scm (error-catching-loop): Added handling of apply-frame
3142 and exit-frame exceptions.
3143
3144 * boot-9.scm (assert-repl-prompt, the-prompt-string): Removed.
3145 (set-repl-prompt!): Setter for repl prompt.
3146 (scm-style-repl): If prompt is #f, don't prompt; if prompt is a
3147 string, display it; if prompt is a thunk, call it and display its
3148 result; otherwise display "> ".
3149 (Change suggested by Roland Orre <orre@nada.kth.se>.)
3150
3151 * r4rs.scm (%load-verbosely): Reverted change to
3152 `module-defined?', since the module system isn't bootstrapped when
3153 we load r4rs.scm. This is just a temporary fix to make the
3154 repository version runnable.
3155
3156 Thu Feb 27 23:25:47 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3157
3158 * boot-9.scm: Removed the enabling of debug evaluator and
3159 recording of source code positions. This was placed there for our
3160 convenience, but it has already sneaked into the distribution
3161 once... so we'd better add this in our local copies instead when
3162 we need it. (These options are normally enabled at the end of
3163 boot-9.scm when loading the debug module.)
3164
3165 Thu Feb 27 16:04:45 1997 Marius Vollmer <mvo@zagadka.ping.de>
3166
3167 * boot-9.scm (module-defined?): New function.
3168 (macroexpand-1, macroexpand): Use local-ref instead of defined?
3169 and eval.
3170 * r4rs.scm (%load-verbosely): Use "module-defined?" instead of
3171 "defined?".
3172 * slib.scm (defined?): New function to take the place of the
3173 builtin "defined?". It allways examines the slib module.
3174
3175 Mon Feb 24 21:46:15 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3176
3177 * configure.in: Added AM_MAINTAINER_MODE
3178
3179 Sat Feb 15 04:51:20 1997 Gary Houston <ghouston@actrix.gen.nz>
3180
3181 * boot-9.scm (read-sharp): define directly, don't go through a
3182 %read-sharp layer.
3183
3184 Tue Feb 11 08:45:48 1997 Gary Houston <ghouston@actrix.gen.nz>
3185
3186 * boot-9.scm (uniform-vector-set!): use uniform-array-set1!, not
3187 uniform-vector-set1! which doesn't exist.
3188
3189 Mon Feb 10 03:01:48 1997 Mikael Djurfeldt <mdj@kenneth>
3190
3191 * boot-9.scm (backtrace): Removed. (A C version now exists in
3192 backtrace.c.)
3193
3194 Fri Jan 24 06:05:36 1997 Gary Houston <ghouston@actrix.gen.nz>
3195
3196 * boot-9.scm (read-line!, read-delimited!, read-delimited,
3197 read-line): new procedures, see libguile/ChangeLog.
3198
3199 Thu Jan 16 17:07:03 1997 Marius Vollmer <mvo@zagadka.ping.de>
3200
3201 Added dynamic linking of modules. See libguile/DYNAMIC-LINKING.
3202
3203 * boot-9.scm (split-c-module-name, convert-c-registered-modules,
3204 init-dynamic-module, dynamic-maybe-call,
3205 find-and-link-dynamic-module, link-dynamic-module,
3206 try-module-dynamic-link, registered-modules): New definitions for
3207 dynamic linking of modules.
3208 (resolve-module): Try to dynamically link the requested module
3209 after failing to load it as Scheme code.
3210
3211 Wed Jan 8 05:50:14 1997 Gary Houston <ghouston@actrix.gen.nz>
3212
3213 * boot-9.scm (getservbyport, getservbyname): remove stray %.
3214
3215 Tue Jan 7 20:02:24 1997 Jim Blandy <jimb@floss.cyclic.com>
3216
3217 * boot-9.scm (and=>): Rename THUNK argument to PROCEDURE, 'cos
3218 that's what it is.
3219
3220 * lineio.scm (make-line-buffering-input-port): Properly test for
3221 the case of an empty buffer list. The old code assumed that '()
3222 was false.
3223
3224 Mon Jan 6 01:13:53 1997 Mikael Djurfeldt <mdj@kenneth>
3225
3226 * boot-9.scm (use-modules): New macro (from Marius Vollmer).
3227 (use-modules <module name> ...) Put the the modules named by
3228 <module name> ... on the use list of the current module.
3229
3230 Sun Jan 5 15:52:59 1997 Jim Blandy <jimb@floss.cyclic.com>
3231
3232 * boot-9.scm (error-catching-loop): Remove message saying that
3233 typing "$" will put you in the debugger. This isn't implemented
3234 yet.
3235
3236 Sun Dec 22 23:27:25 1996 Jim Blandy <jimb@floss.cyclic.com>
3237
3238 * boot-9.scm (delq-all!): Function deleted; delq!'s semantics have
3239 been fixed, so this function is superfluous.
3240 (transform-usage-lambda): Use delq!, not delq-all!.
3241
3242 Tue Dec 17 20:36:45 1996 Marius Vollmer <mvo@zagadka.ping.de>
3243
3244 * boot-9.scm (resolve-module): New optional parameter that
3245 controls whether autoloading is attempted or not. Default is #t.
3246 (process-define-module): Don't autoload the defined module.
3247 (try-module-autoload): Don't autoload the directory modules.
3248
3249 * boot-9.scm (process-define-module): Ensure that the-scm-module
3250 is last in the `uses' list to allow shadowing builtin
3251 bindings. All :use-module options are added in the order they
3252 appear in the arguments but before anything already on the list
3253 (such as the-scm-module).
3254
3255 Wed Dec 11 21:06:05 1996 Gary Houston <ghouston@actrix.gen.nz>
3256
3257 * slib.scm (slib-parent-dir): throw error if #f returned from
3258 %search-load-path.
3259
3260 Sat Nov 30 23:57:28 1996 Tom Tromey <tromey@cygnus.com>
3261
3262 * PLUGIN/greet, PLUGIN/split.sed, PLUGIN/this.configure: Removed.
3263 * Makefile.am, aclocal.m4: New files.
3264 * configure.in: Updated for Automake.
3265
3266 Wed Nov 27 14:16:14 1996 Marius Vollmer <mvo@zagadka.ping.de>
3267
3268 * boot-9.scm (macroexpand-1, macroexpand), slib.scm
3269 (slib:features), r4rs.scm (%load-verbosely): "defined?" is now a
3270 function, use it accordingly.
3271
3272 Thu Nov 21 11:12:10 1996 Jim Blandy <jimb@floss.cyclic.com>
3273
3274 It's an "eval closure", not an "eval thunk." A thunk is a
3275 function of no arguments.
3276 * boot-9.scm (module-type): Rename module field.
3277 (make-module, eval-in-module, make-root-module,
3278 set-current-module): Uses changed.
3279 (module-eval-closure, set-module-eval-closure!,
3280 root-module-closure): Renamed from module-eval-thunk,
3281 set-module-eval-thunk!, root-module-thunk.
3282 (set-current-module): Change uses of *top-level-lookup-thunk* to
3283 *top-level-eval-closure*.
3284
3285 Wed Nov 20 14:45:27 1996 Jim Blandy <jimb@totoro.cyclic.com>
3286
3287 * slib.scm (slib-parent-dir): Use string-length, not length.
3288 (Thanks to Bernard Urban.)
3289
3290 Sat Nov 2 20:00:42 1996 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3291
3292 * boot-9.scm: The debugging evaluator and recording of positions
3293 aren't enabled by default any longer (they are switched on in
3294 debug.scm). But during development we want to have them also
3295 *inside* boot-9.scm. Therefore, two lines are added at the
3296 beginning of boot-9.scm to enable these.
3297
3298 Call `provide' so that `records' are included among the
3299 `*features*'.
3300
3301 The scheme for saving the stack has been adjusted: save-stack is
3302 now commonly available for saving the stack. Calling `save-stack'
3303 sets a flag `stack-saved?' which prevents overwriting the stack.
3304 `stack-saved?' is reset at `abort'.
3305
3306 Spelling correction: seperate --> separate.
3307
3308 Removed `:'s that had creeped into some comments.
3309
3310 The repl now doesn't print #<unspecified> results any longer
3311 If the user wants to see this, he can do
3312 (assert-repl-print-unspecified #t) in his startup file.
3313
3314 The user now gets a friendly message instead of a backtrace at
3315 error.
3316
3317 Added `before-read-hook'.
3318
3319 Load module (ice-9 emacs) if option `-e' was specified.
3320
3321 (provide): New function.
3322
3323 (error): Save stack at entry, so that Guile entrails won't show up
3324 in backtraces.
3325
3326 (backtrace): New function.
3327
3328 (save-stack): Can now take arbitrary number of stack narrowing
3329 specifier pairs. The first specifier in a pair controls inner
3330 border, the second the outer border. A number means cut that
3331 number of frames, a procedure object means cut until that object
3332 is found in operator position in a frame.
3333
3334 * debug.scm: Enable debugging evaluator and recording of positions
3335 by default.
3336
3337 * slib.scm (slib:load): Adapt to the new behavior of
3338 primitive-load: It doesn't any longer try both with and without
3339 ".scm" extension. (We don't want to use %search-load-path here.)
3340
3341 (implementation-vicinity): New function. slib requires it
3342
3343 (library-vicinity): Updated.
3344
3345 Load "require.scm" in the library-vicinity.
3346
3347 (install-require-vicinity, install-require-module): New functions.
3348
3349 Mon Oct 28 17:56:29 1996 Jim Blandy <jimb@floss.cyclic.com>
3350
3351 * boot-9.scm (load-from-path): New function.
3352
3353 * boot-9.scm (try-load, basic-try-load, try-load-module,
3354 try-load): Deleted. I don't think they're being used.
3355
3356 * Makefile.in (scm_files): Add r4rs.scm and test.scm to this list,
3357 so they'll get distributed.
3358
3359 Get Guile to be a little less chatty by default. The new user
3360 should see as little clutter as possible.
3361 * r4rs.scm (%load-verbosely): Make this #f by default.
3362 * boot-9.scm (scm-repl-verbose): Make this #f by default.
3363 (scm-style-repl): Don't run 'pk' on the value passed to quit.
3364
3365 * r4rs.scm: New file.
3366 * boot-9.scm: Load r4rs.scm, first thing.
3367 (OPEN_READ, OPEN_WRITE, OPEN_BOTH, *null-device*, open-input-file,
3368 open-output-file, open-io-file, close-input-port,
3369 close-output-port, close-io-port, call-with-input-file,
3370 call-with-output-file, with-input-from-port, with-output-to-port,
3371 with-error-to-port, with-input-from-file, with-output-to-file,
3372 with-error-to-file, with-input-from-string, with-output-to-string,
3373 with-error-to-string, the-eof-object): Definitions moved to
3374 r4rs.scm. Not all of them are R4RS, but those that are use those
3375 that are not.
3376 (load, %load-verbosely, %load-announce): Moved, along with code to
3377 set %load-hook, to r4rs.scm.
3378
3379 * test.scm: New file.
3380
3381 * boot-9.scm (integer?): Definition deleted, in favor of the one
3382 present in libguile (which used to be called int?). I have no
3383 idea why integer? didn't just call int? to begin with.
3384
3385 * boot-9.scm (<, <=, =, >, >=): Definitions in terms of <?, <=?,
3386 =?, >?, and >=? deleted; they're defined that way by libguile now.
3387
3388 * boot-9.scm (load): Simplified; primitive-load does most of this
3389 work now.
3390 (%load-announce-win): Removed; no longer used. Set %load-hook to
3391 call %load-announce.
3392
3393 Sun Oct 27 07:47:03 1996 Gary Houston <ghouston@actrix.gen.nz>
3394
3395 * boot-9.scm (stat:dev, stat:ino, stat:mode, stat:nlink, stat:uid,
3396 stat:gid, stat:rdev, stat:size, stat:atime, stat:mtime,
3397 stat:ctime, stat:blksize, stat:blocks) accessor functions for stat
3398 components.
3399 (file-is-directory?): use stat:type.
3400
3401 Fri Oct 25 03:34:47 1996 Jim Blandy <jimb@floss.cyclic.com>
3402
3403 * boot-9.scm (%read-sharp): Don't recognize the `#!' syntax here;
3404 that's now taken care of in libguile, and in a way compatible with
3405 SCSH (which this isn't).
3406
3407 Mon Oct 21 18:52:36 1996 Jim Blandy <jimb@totoro.cyclic.com>
3408
3409 * boot-9.scm: Formatting tweaks.
3410
3411 Fri Oct 18 01:03:08 1996 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3412
3413 * boot-9.scm (handle-system-error): Added hooks before-error-hook,
3414 after-error-hook, before-backtrace-hook and after-backtrace-hook
3415 to the error handler. E.g.: fancy emacs support could plug into
3416 these.
3417 (save-stack): New function. The stack is now made differently
3418 depending on the stack id. (The motivation is to make a better
3419 choice regarding what stack frames to present to the user.)
3420 (error-catching-loop): Stack handling code moved outside into
3421 save-stack.
3422
3423 Thu Oct 17 20:33:08 1996 Gary Houston <ghouston@actrix.gen.nz>
3424
3425 * Makefile.in (scm_files): add expect.scm.
3426
3427 * expect.scm: new file ported from guile-iii.
3428
3429 * boot-9.scm: remove handle-system-error, after moving the code into
3430 error-catching-loop.
3431 Don't set 'throw-handler-default property on error keys.
3432 Just interpret (almost) any throw with 4 args as an error throw.
3433 Delete some try-load stuff that was already commented out.
3434
3435 Second thoughts, keep handle-system-error but call it from
3436 error-catching-loop.
3437
3438 Tue Oct 15 17:07:20 1996 Jim Blandy <jimb@floss.cyclic.com>
3439
3440 * boot-9.scm: Doc fixes.
3441 (make-module): Rework for readability.
3442 (make-root-module, make-scm-module): USES argument to make-module
3443 should be '(), not #f.
3444
3445 * boot-9.scm (try-load): %sys-load-path has been renamed to
3446 primitive-load-path; adjust call here.
3447
3448 Tue Oct 15 14:25:01 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
3449
3450 * boot-9.scm (signal-handler): Bugfix: Moved the recording of
3451 the stack to the correct place: when it is decided to generate an
3452 error-signal.
3453
3454 Mon Oct 14 22:20:30 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
3455
3456 * boot-9.scm (error-catching-loop, signal-handler,
3457 handle-system-error): Backtracing now works for signals aswell;
3458 Backtracing mechanism can now identify the stack root created by
3459 start-stack so that the user isn't exposed to system stack frames.
3460
3461 Mon Oct 14 06:05:42 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
3462
3463 * Makefile.in: Added threads.scm.
3464
3465 Mon Oct 14 04:21:51 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
3466
3467 * debug.scm (make-enable, make-disable): Simplified.
3468
3469 * boot-9.scm: Renamed %%throw-handler-default -->
3470 throw-handler-default.
3471 ((handle-system-error key . arg-list)): Changed the way errors are
3472 reported.
3473 ((scm-style-repl)): Wrap up the call to eval in a start-stack
3474 acro.
3475 ((error-catching-loop thunk)): Introduce a lazy-catch into
3476 error-catching-loop so that the stack can be captured.
3477
3478 Thu Oct 10 22:27:32 1996 Jim Blandy <jimb@totoro.cyclic.com>
3479
3480 * mapping.scm (hash-table-mapping): Explicitly request that
3481 make-vector fill new vectors with '(); this will make it easier to
3482 port Guile Scheme code to other Schemes.
3483 * boot-9.scm (make-print-style, make-print-table): Same.
3484
3485 Sun Oct 6 03:54:59 1996 Gary Houston <ghouston@actrix.gen.nz>
3486
3487 * boot-9.scm (load): rewritten again.
3488 Append "." to the default %load-path.
3489 (feature?): new function: checks for a symbol in the features list.
3490 (module-local-variable): remove apparently useless (caddr (list m v
3491 ...))
3492 (%load-announce): minor formatting change.
3493 (file-exists?): use access? if posix is featured.
3494 (file-is-directory?): use stat if i/o-extensions is featured.
3495 (try-module-autoload module-name): use file-exists? before
3496 file-is-directory?
3497
3498 Sat Oct 5 18:54:03 1996 Mikael Djurfeldt <mdj@kenneth>
3499
3500 * boot-9.scm: Added conditional loading of threads.scm.
3501
3502 * threads.scm: New file. Modified from the Cygnus-r0.3
3503 distribution.
3504
3505 * boot-9.scm (error-catching-loop): Added handling of key
3506 `switch-repl'.
3507
3508 * boot-9.scm: Name change %%bad-throw --> bad-throw.
3509
3510 Wed Oct 2 23:38:44 1996 Jim Blandy <jimb@totoro.cyclic.com>
3511
3512 * boot-9.scm (make-record-type, record-constructor): Don't assume
3513 the empty list is false when parsing the argument list.
3514
3515 Mon Sep 30 22:15:50 1996 Jim Blandy <jimb@totoro.cyclic.com>
3516
3517 * boot-9.scm (signal-handler): Clean up logic.
3518
3519 * boot-9.scm (load): Assume %load-path is always bound.
3520
3521 Sat Sep 28 00:15:37 1996 Gary Houston <ghouston@actrix.gen.nz>
3522
3523 * boot-9.scm (error): replace another throw with scm-error. Throw
3524 to 'misc-error instead of 'error (no need to distinguish these.)
3525 Don't set up 'error as a key.
3526 Set up regex-error as a key, if regex is available.
3527 (signal-handler): use scm-error, not throw.
3528
3529 (%try-load, try-load-with-path, %load, load-with-path,
3530 basic-try-load-with-path, basic-load-with-path,
3531 try-load-module-with-path,load-module-with-path): deleted, since
3532 they seem redundant.
3533 (try-load): define using %try-load, not try-load-with-path.
3534 (load): rewritten. load tries to open the file directly and
3535 with a .scm extension before searching the library directories
3536 (should "." be added to %load-path? then load could still open
3537 directly files starting with "/").
3538 (try-module-autoload): use load, not load-with-path.
3539 (%load-indent): deleted, -2 was causing errors.
3540
3541 (%read-sharp): use port-line, not line-number.
3542
3543 Fri Sep 27 16:23:51 1996 Jim Blandy <jimb@totoro.cyclic.com>
3544
3545 * boot-9.scm (%%bad-throw): Delete definition. 1) It's very
3546 straightforward to provide the equivalent functionality using
3547 (catch #t ...), so there's no need for the extra complexity. 2)
3548 Outside the context of a read-eval-print loop (which Guile should
3549 not require) it's not clear we should do anything more complicated
3550 than print an error and exit; the user or REPL can establish
3551 something better if it wants. 3) In that case, it's much more
3552 robust to just do it in the C code.
3553
3554 Tue Sep 24 06:53:04 1996 Gary Houston <ghouston@actrix.gen.nz>
3555
3556 * boot-9.scm (%try-load): define using primitive-load. Previously
3557 %try-load itself was the primitive.
3558 (load-with-path): use scm-error instead of %load-announce-lossage.
3559 Errors are thrown to 'misc-error instead of 'could-not-load.
3560 (%load-announce-lossage): deleted.
3561
3562 Mon Sep 23 00:16:31 1996 Mikael Djurfeldt <mdj@kenneth>
3563
3564 * boot-9.scm (warn, scm-style-repl): Use C printer instead of `print'.
3565 (make-record-type type-name fields): Temporarily remove support
3566 for printing of records (not possible yet with C printer).
3567
3568 Fri Sep 20 00:24:27 1996 Gary Houston <ghouston@actrix.gen.nz>
3569
3570 * boot-9.scm (file-exists?, file-is-directory): catch only
3571 system-error, not every kind of error.
3572 (scm-error): new procedure.
3573
3574 Thu Sep 19 16:02:46 1996 Jim Blandy <jimb@totoro.cyclic.com>
3575
3576 * boot-9.scm: Formatting tweaks.
3577
3578 Wed Sep 18 09:07:37 1996 Gary Houston <ghouston@actrix.gen.nz>
3579
3580 * boot-9.scm (%%handle-system-error key): remove the code for
3581 SCM-style errors. handle the case that an unexpected number
3582 of args are supplied.
3583 (%%system-errors): removed.
3584 (error): redefine using a throw with key and 4 args.
3585 ('error): associate 'error, 'error-signal keys with
3586 %%handle-system-error.
3587 (%%default-error-handler): removed.
3588 (signal-handler): throw with 4 args and use the error-signal key.
3589 Create an error message instead of using numerical codes.
3590 (%%bad-throw): call error instead of throw if key not found.
3591
3592 Tue Sep 17 04:11:28 1996 Gary Houston <ghouston@actrix.gen.nz>
3593
3594 * boot-9.scm: initialize new error keys (see libguile/ChangeLog).
3595 (%%handle-system-error key): check subr is not #f before printing.
3596 Recognize %s (embed an argument using "display") and
3597 %S (embed an argument using "write").
3598
3599 Sun Sep 15 03:55:35 1996 Gary Houston <ghouston@actrix.gen.nz>
3600
3601 * boot-9.scm (%%handle-system-error key): set args and rest to
3602 the empty list if they are #f.
3603 Initialize out-of-range as an error key.
3604
3605 Sat Sep 14 03:41:15 1996 Gary Houston <ghouston@actrix.gen.nz>
3606
3607 * PLUGIN/REQ: remove the "ice-9 lgh" line which causes a cycle.
3608
3609 * boot-9.scm: remove leading %% from references to '%%system-error.
3610 (%%handle-system-error): don't pass all the thrown arguments when
3611 aborting, just the key and subr.
3612 Remove the code to "Install default handlers for built-in errors."
3613 Remove the definition of the syserror procedure.
3614 Associate 'numerical-overflow with default handler.
3615
3616 Fri Sep 13 04:58:11 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
3617
3618 * boot-9.scm: Name change: value-ref --> local-ref
3619 resolved-ref --> nested-ref Motivation: conformance to the other
3620 dictionary operators: list-ref operates on list, vector-ref
3621 operates on vector, nested-ref operates on nested namespace,
3622 local-ref operates on the local nested namespace.
3623
3624 Sat Sep 7 06:44:47 1996 Gary Houston <ghouston@actrix.gen.nz>
3625
3626 * boot-9.scm (%%handle-system-error): recognise errors thrown
3627 by lgh-error (fill-message etc.)
3628 (fill-message): check first whether args is null.
3629 (fill-message): bug fix and check that args is a list.
3630
3631 Thu Sep 5 11:33:41 1996 Jim Blandy <jimb@floss.cyclic.com>
3632
3633 * boot-9.scm: %load-path is initialized in C code now.
3634 (implementation-vicinity, parse-path): Deleted, along with code to
3635 initialize %load-path.
3636
3637 * boot-9.scm (in-vicinity): If the vicinity doesn't end with a
3638 "/", use one to separate it from the file.
3639
3640 Thu Aug 29 23:05:11 1996 Thomas Morgan <tmorgan@gnu.ai.mit.edu>
3641
3642 * boot-9.scm (%load-path): Add the site directory.
3643 Add the directory named after the version number.
3644 Prepend the version number to the other directories in the path.
3645 Simplify by mapping the common prefix onto each item.
3646 * Makefile.in (datadir, pkgdatadir, pkgverdatadir, subpkgdatadir,
3647 sitedatadir): New definitions.
3648 (libparent, libdir, install_path): Replaced by above.
3649 (install): Create the above directories.
3650 Put the source files into subpkgdatadir.
3651 (uninstall): Remove the above directories.
3652
3653 Thu Aug 29 21:48:47 1996 Jim Blandy <jimb@floss.cyclic.com>
3654
3655 Don't use the PLUGIN system to gather information for the
3656 Makefile's distribution and installation targets; just put it all
3657 in the Makefile directly.
3658 * PLUGIN/this.configure (scm_files, aux_files): Remove sections
3659 for these.
3660 * configure.in: Remove code that gets and substitutes scm_files and
3661 aux_files.
3662 * Makefile.in (scm_files, aux_files): Write out the list of files
3663 here, where people expect to find them.
3664
3665 Fri Aug 23 06:44:36 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
3666
3667 * boot-9.scm: Preliminary solution: optionally load the debug
3668 module. Changed "gls" to "guile1.0b3".
3669
3670 * debug.scm: New file: debug extensions.
3671
3672 Wed Aug 21 13:06:56 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
3673
3674 * boot-9.scm (print-vector): Renamed weak-hash-table? -->
3675 weak-key-hash-table?. (Again!)
3676
3677 Tue Aug 20 07:31:39 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
3678
3679 * boot-9.scm (print-vector, macro-table, xformer-table):
3680 Renamed weak-hash-table --> weak-key-hash-table.
3681
3682 * poe.scm (funcq-memo): Renamed weak-hash-table -->
3683 weak-key-hash-table.
3684
3685 Sat Aug 3 06:16:35 1996 Gary Houston <ghouston@actrix.gen.nz>
3686
3687 * boot-9.scm (*null-device*): global constant from goonix.
3688 (move->fdes): adjusted for boolean primitive-move->fdes. return
3689 the modified port, always set revealed count to 1 (SCSH compatible).
3690 (release-port-handle port): from goonix (SCSH compatible).
3691 (%open-file): removed.
3692 (open-input-file, open-output-file, file-exists?, file-is-directory?):
3693 modified for open-file change (does not return #f).
3694
3695 Thu Aug 1 02:52:42 1996 Jim Blandy <jimb@totoro.cyclic.com>
3696
3697 * Makefile.in (dist-dir): New target for new dist system.
3698 (manifest): Deleted.
3699 * PLUGIN/this.configure (aux_files): Removed PLUGIN; it's a
3700 directory, and needs special treatment in the dist-dir target.
3701
3702 Thu Aug 1 09:00:21 1996 Gary Houston <ghouston@actrix.gen.nz>
3703
3704 * boot-9.scm: remove the wrappers for '%' system primitives,
3705 now that they throw errors directly.
3706 remove make-simple-wrapper and similar functions.
3707 protect a call to getenv which may now throw an exception.
3708
3709 Wed Jul 31 23:44:42 1996 Gary Houston <ghouston@actrix.gen.nz>
3710
3711 * boot-9.scm (false-if-exception): new macro.
3712
3713 Fri Apr 19 13:53:08 1996 Tom Lord <lord@beehive>
3714
3715 * The more things change...
3716
3717