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