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