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