(while): Tests running in empty environment are
[bpt/guile.git] / ice-9 / ChangeLog
... / ...
CommitLineData
12005-01-10 Marius Vollmer <marius.vollmer@uni-dortmund.de>
2
3 * arrays.scm, deprecated.scm (uniform-vector-fill!,
4 make-uniform-vector, make-uniform-array, list->uniform-vector):
5 Moved from arrays.scm to deprecated.scm.
6 * arrays.scm, boot-9.scm (array-dimensions): Moved from arrays.scm
7 to boo-9.scm.
8 * Makefile.am (ice9_sources): Removed arrays.scm.
9
102005-01-02 Marius Vollmer <mvo@zagadka.de>
11
12 * arrays.scm (uniform-vector-fill!, make-uniform-vector,
13 make-uniform-array,list->uniform-array): Deprecated for real.
14
152004-12-29 Marius Vollmer <mvo@zagadka.de>
16
17 * arrays.scm (make-array, list->array): Removed.
18 (uniform-vector-fill!): Prepared to be deprecated.
19
202004-12-22 Marius Vollmer <marius.vollmer@uni-dortmund.de>
21
22 * boot-9.scm (module-make-local-var!): When creating a new
23 variable, initialize it to the value of any imported variable with
24 the given name. This allows code like (define round round) to
25 work as expected.
26
27 From Antoine Mathys <tonigonenstein@users.sourceforge.net>:
28
29 * popen.scm: Support bidirectional communication by making
30 open-pipe support OPEN_BOTH as second argument and in that case
31 return a soft input-output port which uses two pipes internally.
32 Provide open-pipe* to execute programs without using the shell
33 (and actually base open-pipe on it) and the obvious
34 open-input-output-pipe.
35
362004-12-14 Kevin Ryde <user42@zip.com.au>
37
38 * boot-9.scm: (string-any, string-every): Use a scheme wrapper around
39 the C code so for the final call to the predicate procedure is a tail
40 call, per SRFI-13 spec.
41
422004-12-01 mvo <mvo@zagadka.de>
43
44 * boot-9.scm (app, %app): Renamed former to the latter.
45 Previously, 'app' was reserved in every module. Now '%app' is
46 reserved, which is slightly better. The real fix is to not use
47 'local-ref' etc to find modules. Changed all uses.
48 * syncase.scm: Changed 'app' to '%app'.
49
502004-11-12 Marius Vollmer <marius.vollmer@uni-dortmund.de>
51
52 * arrays.scm: Do not use prototypes, use creator functions.
53
542004-11-10 Marius Vollmer <mvo@zagadka.de>
55
56 * arrays.scm (uniform-vector-read!, uniform-vector-write):
57 Removed.
58
592004-11-05 Marius Vollmer <marius.vollmer@uni-dortmund.de>
60
61 * boot-9.scm: Do not add "." to %load-path. 'load' will still be
62 able to load files in the current directory, but 'use-modules' etc
63 will not.
64
652004-10-29 Marius Vollmer <marius.vollmer@uni-dortmund.de>
66
67 * arrays.scm: Do not install read-hash procedure for reading
68 arrays, this is done in libguile now.
69
702004-10-27 Marius Vollmer <marius.vollmer@uni-dortmund.de>
71
72 * arrays.scm (uniform-vector?, uniform-vector-set!): Removed, now
73 provided by libguile.
74
752004-10-26 Marius Vollmer <marius.vollmer@uni-dortmund.de>
76
77 * boot-9.scm: Added srfi-4 to cond-expand features.
78
792004-10-18 Marius Vollmer <marius.vollmer@uni-dortmund.de>
80
81 * format.scm (format:obj->str): Simplified considerably by using
82 object->string or display instead of implementing our own printer.
83 Handle format:read-proof here. Unreadable objects are recognized
84 by their "#<" prefix instead of by being unknown to the custom
85 printer (which would treat keywords as unprintable, for example).
86 (format:iobj->str): Removed.
87
882004-10-04 Marius Vollmer <marius.vollmer@uni-dortmund.de>
89
90 * boot-9.scm (symbol->keyword, keyword->symbol): Removed, they are
91 now implemented in C.
92
932004-09-26 Kevin Ryde <user42@zip.com.au>
94
95 * optargs.scm (let-optional-template, let-keywords-template): Change
96 "(begin body)" to "(let () body)" for empty bindings, since the former
97 allows "internal defines" in body leak out to the surrounding
98 environment.
99
1002004-09-23 Marius Vollmer <mvo@zagadka.de>
101
102 * boot-9.scm (handle-system-error): Pass rest argument to
103 display-backtrace for wrong-type-arg and out-of-range errors so
104 that the bad value gets highlighted.
105
1062004-09-04 Kevin Ryde <user42@zip.com.au>
107
108 * streams.scm (stream-for-each-many): Correction, should recurse into
109 itself, not stream-for-each-one.
110
111 * time.scm (time-proc): Make result inexact, since format ~f doesn't
112 support fractions currently.
113
1142004-09-08 Marius Vollmer <marius.vollmer@uni-dortmund.de>
115
116 * boot-9.scm (expt): Only call integer-expt for an exact integer
117 exponent, not for an inexact integer one. Also, let integer-expt
118 handle negative exponents instead of doing it here.
119
1202004-09-02 Kevin Ryde <user42@zip.com.au>
121
122 * format.scm (format:out): Ignore excess arguments, per common lisp.
123
124 * format.scm (format:out-num-padded): Print "+" on 0 under @ modifier.
125
1262004-08-27 Kevin Ryde <user42@zip.com.au>
127
128 * regex.scm (regexp-quote): [ and | must be quoted. Quote ( ) { + ?
129 using char class [(] etc since \( in fact makes them become special in
130 regexp/basic.
131
1322004-08-25 Kevin Ryde <user42@zip.com.au>
133
134 * and-let-star.scm (and-let*): Give #t for an empty body, per srfi-2
135 spec, previously came out as an empty (begin).
136
1372004-08-25 Marius Vollmer <mvo@zagadka.de>
138
139 * boot-9.scm (%cond-expand-features): Added srfi-13 and srfi-14.
140
1412004-08-20 Marius Vollmer <marius.vollmer@uni-dortmund.de>
142
143 * debugger/utils.scm (display-source): Use unmemoize-expr instead
144 of unmemoize.
145 (write-frame-short/expression): Likewise.
146
1472004-08-18 Kevin Ryde <user42@zip.com.au>
148
149 * and-let-star.scm: Add cond-expand-provide srfi-2, since this module
150 provides that feature.
151 * receive.scm: Add cond-expand-provide srfi-8, since this module
152 provides that feature.
153
1542004-08-09 Marius Vollmer <mvo@zagadka.de>
155
156 From Matthias Koeppe. Thanks!
157
158 * pretty-print.scm (generic-write): In the local procedure `wr', use
159 object->string to print all data (except for the reader macros),
160 rather than implementing an own printer. The user-visible
161 difference is that procedures and control characters like #\tab
162 are now printed in the same way as by `write'.
163
1642004-08-09 Kevin Ryde <user42@zip.com.au>
165
166 * slib.scm (*features*): Remove array and array-for-each, core
167 definitions are insufficient for latest slib.
168 (t, nil): New constants slib says are supposed to exist.
169 (call-with-open-ports, browse-url): New functions for latest slib.
170 Implementations taken from Template.scm (public domain).
171 (open-file): Extend core definition to accept symbols for the mode,
172 required by latest slib.
173 (delete-file): Replace core definition with version returning #t/#f as
174 per slib spec.
175 (system): Mark as #:replace to suppress override warning, use new
176 style "(@ (guile) system)" to call core function.
177
1782004-05-25 Matthias Koeppe <mkoeppe@mail.math.uni-magdeburg.de>
179
180 * format.scm: Remove the arbitrary limit of 100 iterations for the
181 ~{...~} control structure.
182
1832004-07-10 Kevin Ryde <user42@zip.com.au>
184
185 * and-let-star.scm (and-let*): Remove unused variable "val".
186 * pretty-print.scm (read-macro-prefix): Remove unused variable "tail".
187
188 * boot-9.scm (%cond-expand-features): Add srfi-6 which is in the core.
189
190 * safe-r5rs.scm (re-export): Uncomment numerator, denominator,
191 rationalize, since they now exist.
192
1932004-07-05 Kevin Ryde <user42@zip.com.au>
194
195 * slib.scm (system): Correction to redefinition, now guile is stricter
196 about when a define binding comes into existance.
197
1982004-05-29 Dirk Herrmann <dirk@dirk-herrmanns-seiten.de>
199
200 * boot-9.scm: Reordered definitions such that macro definitions
201 preceed their first usage. Include and define deprecated stuff
202 late in the file to have a better change of detecting accidental
203 uses of deprecated definitions. Further, unified the layout a
204 little and grouped definitions more cleanly into topics.
205
2062004-05-24 Marius Vollmer <mvo@zagadka.de>
207
208 * history.scm (use-value-history): Use resolve-interface instead
209 of resolve-module so that only the exported bindings are searched.
210 (save-value-history): Export the newly defined variable. Reported
211 by Wolfgang Jaehrling.
212
2132004-05-04 Dirk Herrmann <dirk@dirk-herrmanns-seiten.de>
214
215 * boot-9.scm (resolve-module): Always start searching from the
216 root module. This will allow the C equivalent scm_resolve_module
217 to work, independent of what the current module is.
218
2192004-02-18 Marius Vollmer <mvo@zagadka.de>
220
221 * boot-9.scm (top-repl): Make the (guile-user) module use the
222 (ice-9 r5rs) module.
223
2242004-02-12 Mikael Djurfeldt <djurfeldt@nada.kth.se>
225
226 * boot-9.scm (module-map): Renamed hash-map -> hash-map->list.
227
2282004-02-09 Neil Jerram <neil@ossau.uklinux.net>
229
230 * debugger/trap-hooks.scm (debug-hook-membership): New, exported.
231
232 * debugger/commands.scm (debug-trap-hooks): New, exported.
233
2342004-02-08 Mikael Djurfeldt <djurfeldt@nada.kth.se>
235
236 * debugger/breakpoints/Makefile.am (TAGS_FILES),
237 debugger/Makefile.am (TAGS_FILES), Makefile.am (TAGS_FILES): Use
238 this variable instead of ETAGS_ARGS so that TAGS can be built
239 using separate build directory.
240
2412004-01-20 Neil Jerram <neil@ossau.uklinux.net>
242
243 * boot-9.scm (error-catching-loop): Back out 2003-11-19 change to
244 lazy-handler-dispatch lookup.
245
2462004-01-12 Marius Vollmer <mvo@zagadka.de>
247
248 * mapping.scm: Use '#:' prefix for keywords instead of ':'.
249 Thanks to Richard Todd!
250
2512004-01-11 Kevin Ryde <user42@zip.com.au>
252
253 * slib.scm (system): New function, giving an exit code return in
254 accordance with slib spec.
255
256 Revert this, it breaks test-suite/tests/r5rs_pitfalls.test where
257 false-if-exception is used within syntax-rules. (Suspect syntax-rules
258 ought to support this sort of thing, but it doesn't right now.)
259 * boot-9.scm (false-if-exception): Unquote catch and lambda, so as not
260 to depend on expansion environment.
261
2622004-01-07 Marius Vollmer <marius.vollmer@uni-dortmund.de>
263
264 * boot-9.scm (with-fluids): Use with-fluid* when only one fluid is
265 being set.
266
2672004-01-07 Kevin Ryde <user42@zip.com.au>
268
269 * q.scm (q-pop!): Should be "null?" not "not" for end-of-list.
270 Reported by Richard Todd.
271
2722004-01-04 Kevin Ryde <user42@zip.com.au>
273
274 * boot-9.scm (false-if-exception): Unquote catch and lambda, so as not
275 to depend on expansion environment.
276
277 * slib.scm (-1+, <?, <=?, =?, >?, >=?): Define as aliases for 1-, <,
278 <=, =, >, >= respectively, required by slib 'rev2-procedures but no
279 longer in the guile core.
280
2812003-11-19 Neil Jerram <neil@ossau.uklinux.net>
282
283 * boot-9.scm (error-catching-loop): Defer lookup of
284 lazy-handler-dispatch.
285
2862003-11-17 Marius Vollmer <mvo@zagadka.de>
287
288 * boot-9.scm (@, @@): New macros.
289
2902003-11-16 Dirk Herrmann <D.Herrmann@tu-bs.de>
291
292 * boot-9.scm: Started comment about module system workings.
293
2942003-11-11 Neil Jerram <neil@ossau.uklinux.net>
295
296 * debugger.scm: Change ui-* calls to gds-*.
297 (debug-on-error): Debug if throw key is in specified syms, not if
298 it isn't! Also throw 'abort after debugging, so as to skip the
299 REPL's backtrace.
300
301 * debugger/behaviour.scm (*trap*): New variable, stores trap type.
302 (before-enter-frame-hook, before-apply-frame-hook,
303 before-exit-frame-hook): Set here.
304 (debug-if-flag-set): Passed into flags on debug-stack call.
305 (at-step, at-next): Changed to debug at frame exit points as well.
306
307 * debugger/utils.scm: Big comment added.
308
3092003-10-30 Neil Jerram <neil@ossau.uklinux.net>
310
311 * debugger/ui-client.scm: Moved to ../emacs/gds-client.scm.
312
3132003-10-16 Neil Jerram <neil@ossau.uklinux.net>
314
315 * debugger/ui-client.scm (ui-connect): Add arg to say whether to
316 debug immediately on connection.
317 (ui-eval): Handle exceptions during read and evaluation.
318
319 * debugger.scm (debug-on-error, default-default-lazy-handler):
320 Remove an unnecessary level of indirection in calling lazy
321 handler.
322
3232003-10-12 Marius Vollmer <mvo@zagadka.de>
324
325 * ftw.scm (directory-files): Close dir-stream when done. Thanks
326 to Paul Jarc!
327
3282003-10-09 Kevin Ryde <user42@zip.com.au>
329
330 * poe.scm (funcq-assoc): Rewrite, don't assume '() is false, and
331 actually traverse the given alist.
332
3332003-10-06 Neil Jerram <neil@ossau.uklinux.net>
334
335 * debugger/ui-client.scm (handle-instruction): Add evaluation
336 support.
337 (ui-eval): New.
338
3392003-10-04 Neil Jerram <neil@ossau.uklinux.net>
340
341 * debugger/ui-client.scm (ui-disable-async-thread,
342 ui-continue-async-thread, start-async-ui-thread): New.
343 (ui-command-loop): Call ui-disable-async-thread and
344 ui-continue-async-thread.
345 (handle-instruction): Read terminating newline char so it doesn't
346 cause following select to pop immediately.
347
3482003-09-25 Neil Jerram <neil@ossau.uklinux.net>
349
350 * debugger/ui-client.scm, debugger/ui-server.scm: New (work in
351 progress on new debugging front end).
352
3532003-09-24 Neil Jerram <neil@ossau.uklinux.net>
354
355 * debugger.scm (default-default-lazy-handler, debug-on-error):
356 New.
357
358 * debugger/behaviour.scm (debug-if-flag-set): Display debug entry
359 messages through (debugger-output-port).
360 (after-exit-frame-hook): Trace through (debugger-output-port).
361 (trace-here): Trace through (debugger-output-port).
362
363 * debugger/commands.scm (evaluate): If supplied expression is a
364 string, read from it before evaluating.
365 (evaluate): Change output format to "EXPR => VALUE".
366
3672003-09-19 Kevin Ryde <user42@zip.com.au>
368
369 * popen.scm (open-process): Correction to previous fdes closing
370 change, need to watch out for stdin==stderr or stdout==stderr.
371
3722003-09-15 Marius Vollmer <mvo@zagadka.de>
373
374 * format.scm (format): Rewritten as a big letrec to make it
375 reentrant. No mutex is necessary. Thanks to Clinton Ebadi!
376
3772003-09-13 Kevin Ryde <user42@zip.com.au>
378
379 * boot-9.scm (file-exists?): Use stat rather than access?, so as to
380 follow the effective UID/GID not the real ID. file-exists? is
381 normally used as a prelude to opening or some other operation, and
382 it's the effective ID which will apply there. Emacs file-exists-p
383 uses stat, presumably for the the same reason.
384
3852003-09-12 Marius Vollmer <mvo@zagadka.de>
386
387 * boot-9.scm (make-autoload-interface): Use a proper hashtable as
388 the obarray, not an empty vector.
389 (make-module): Always construct a hashtable for the obarray, even
390 for empty ones.
391
392 * format.scm (format:error): Use 'format:format' instead of
393 'format' since the latter will lock the mutex again that we have
394 already locked.
395 (format:format-work): Flag multiple '#' as an error.
396
3972003-08-17 Kevin Ryde <user42@zip.com.au>
398
399 * boot-9.scm (while): Use a new key dynamically for each loop, so
400 break and continue associate to their loop even when recursing.
401
4022003-08-14 Kevin Ryde <user42@zip.com.au>
403
404 * boot-9.scm (while): Rewrite, continue as proper escape, break
405 without return value, break and continue new for each while form,
406 don't depend on bindings in expansion environment.
407
408 * popen.scm (open-process): Close input-fdes, output-fdes and
409 error-fdes after duping them to 0, 1 and 2.
410
4112003-06-19 Kevin Ryde <user42@zip.com.au>
412
413 * threads.scm (parallel): For no forms, use `(values)' not `(begin)'.
414
4152003-05-27 Dirk Herrmann <D.Herrmann@tu-bs.de>
416
417 * boot-9.scm (make-autoload-interface): Added missing quote around
418 vector constant.
419
4202003-05-20 Marius Vollmer <marius.vollmer@uni-dortmund.de>
421
422 * deprecated.scm (list*): Added.
423
4242003-05-10 Kevin Ryde <user42@zip.com.au>
425
426 * documentation.scm (file-commentary, find-documentation-in-file): Use
427 call-with-input-file, to close ports when done.
428
4292003-05-03 Marius Vollmer <mvo@zagadka.de>
430
431 * gap-buffer.scm (point++n!, point+-n!): Use substring-move!
432 instead of substring-move-left! or substring-move-right!. Thanks
433 to Kevin Ryde.
434
435 * deprecated.scm (substring-move-left!, substring-move-right!):
436 New.
437
438 * boot-9.scm (display-usage-report): Use keyword->symbol instead
439 of keyword-symbol, which doesn't exist. Thanks to Kevin Ryde.
440
441 * hcons.scm (hashq-cons-get-handle): Pass only the expected four
442 arguments to hashx-get-handle. Thanks to Kevin Ryde!
443
444 * lineio.scm (make-line-buffering-input-port) Pass 0 as second
445 argument to string-ref. Thanks to Kevin Ryde!
446
4472003-04-25 Mikael Djurfeldt <mdj@kvast.blakulla.net>
448
449 * serialize.scm: New file.
450
4512003-04-24 Mikael Djurfeldt <djurfeldt@nada.kth.se>
452
453 * threads.scm (n-for-each-par-map): New procedure.
454
4552003-04-05 Marius Vollmer <mvo@zagadka.de>
456
457 * Changed license terms to the plain LGPL thru-out.
458
4592003-03-26 Marius Vollmer <marius.vollmer@uni-dortmund.de>
460
461 * deprecated.scm: New file, to collect deprecated things.
462 * Makefile.am (ice9_sources): Added.
463
464 * boot-9.scm: Load "ice-9/deprecated.scm" when appropriate.
465 (try-load-module): Also try the old deprecated method, maybe.
466
4672003-03-22 Marius Vollmer <mvo@zagadka.de>
468
469 * boot-9.scm (call/cc): Added.
470
4712003-03-20 Mikael Djurfeldt <djurfeldt@nada.kth.se>
472
473 * list.scm: New file.
474
4752003-03-19 Marius Vollmer <mvo@zagadka.de>
476
477 * format.scm (format:out-substr): Update the column counter
478 correctly. This fixes the behavior of ~T (tabbing) after ~F, for
479 instance. Thanks to Matthias Koeppe!
480
4812003-03-13 Mikael Djurfeldt <djurfeldt@nada.kth.se>
482
483 * session.scm (apropos): Don't look in duplicates interface.
484
4852003-03-12 Mikael Djurfeldt <djurfeldt@nada.kth.se>
486
487 * boot-9.scm (duplicate-handlers): Make sure the merge-generics
488 and merge-accessors handlers are available also before (oop goops)
489 has been loaded. This is so that people can put them as default
490 handlers without worrying about availability.
491
492 * slib.scm (logical:ipow-by-squaring): Removed.
493
494 * boot-9.scm (ipow-by-squaring): Removed.
495 (default-duplicate-binding-handler): Set default to
496 '(replace warn-override-core warn last)
497
498 * boot-9.scm (module-make-local-var!): Use module-add!.
499 (module-primitive-add!): New function.
500 (resolve-interface): Use
501 (call-with-deferred-observers, module-call-observers): New
502 functions.
503 (module-defer-observers, module-defer-observers-mute,
504 module-defer-observers-table): New variables.
505 (process-define-module, process-use-modules, export, re-export):
506 Use call-with-deferred-observers.
507 (module-duplicates-info, set-module-duplicates-info!): Removed.
508 (module-duplicates-handlers, module-duplicates-interface): New.
509 (module-type): Added duplicates-handlers and
510 duplicates-interface.
511
512 * syncase.scm (eval): Mark as replacement.
513
514 * boot-9.scm (defmacro-public): Use export-syntax instead of export.
515
516 * slib.scm (*features*): Set the core variable instead of defining
517 a local version.
518 (provide, provided?): Mark as replacements.
519
520 * boot-9.scm (beautify-user-module!): Don't install the duplicates
521 handler here.
522 (default-duplicate-binding-handler): Renamed from
523 default-module-duplicates-handler; Removed converter.
524 (process-duplicates): Lookup default duplicates handler dynamically.
525 (default-duplicate-binding-procedures): New parameter.
526
5272003-03-12 Mikael Djurfeldt <mdj@kvast.blakulla.net>
528
529 * slib.scm (identity): Removed. (Provided by core.)
530
5312003-03-11 Mikael Djurfeldt <djurfeldt@nada.kth.se>
532
533 * debugger/command-loop.scm: Prefix all commands imported from
534 (ice-9 debugger command-loop) with debugger:.
535
536 * boot-9.scm (process-duplicates): Use module-import-interface.
537 (module-symbol-interface): Removed.
538 (resolve-interface): Process #:hide; Name custom interfaces
539 appropriately.
540 (module-use!, module-use-interfaces!): Remove existing interfaces
541 on the use-list based on module name rather than interface
542 identity so that custom interfaces truly replaces their previous
543 version.
544
545 * boot-9.scm (module-override!, make-mutable-parameter,
546 lookup-duplicates-handlers, default-module-duplicates-handler):
547 New functions.
548 (process-duplicates): Don't call duplicates handlers for duplicate
549 bindings of the same variable.
550 (process-define-module): Process #:replace.
551 (compile-interface-spec, resolve-interface): Process #:prefix.
552
553 * format.scm (format): Marked as replacement.
554
555 * threads.scm (future, future-ref): Marked as replacements.
556
5572003-03-07 Mikael Djurfeldt <djurfeldt@nada.kth.se>
558
559 These changes enables checking for duplicate imported bindings.
560
561 * boot-9.scm (process-define-module): Handle #:duplicates.
562 (module-use-interfaces! process-duplicates): New functions.
563 (duplicate-handlers): Dictionary of duplicate handlers.
564 (module-symbol-local-binding, module-symbol-binding): Bugfix.
565
5662003-03-04 Mikael Djurfeldt <djurfeldt@nada.kth.se>
567
568 * session.scm (apropos): Use hash-for-each instead of
569 array-for-each.
570
5712003-02-19 Mikael Djurfeldt <djurfeldt@nada.kth.se>
572
573 * boot-9.scm (make-module): Changed default size from 1021 to 31
574 (since the size now adapts).
575 (macro-table, xformer-table): Changed default size from 523 to 61.
576 (make-module): Don't call make-hash-table with zero size.
577
578 * Makefile.am (ice9_sources): Added weak-vector.scm.
579
580 * weak-vector.scm: New file.
581
582 * boot-9.scm (module-clear!): Use hash-clear!.
583 (module-for-each): Use hash-for-each.
584 (module-map): Use hash-map.
585
5862003-02-11 Mikael Djurfeldt <djurfeldt@nada.kth.se>
587
588 * boot-9.scm (make-hash-table): Turned primitive.
589
5902003-01-27 Mikael Djurfeldt <djurfeldt@nada.kth.se>
591
592 * syncase.scm (guile-macro): Strip syntactic information from
593 expression before trying to treat it as a Guile macro call.
594 (Thanks to Kevin Ryde.)
595
5962003-01-24 Mikael Djurfeldt <djurfeldt@nada.kth.se>
597
598 * threads.scm (parallel, letpar): Rewritten.
599
6002003-01-23 Mikael Djurfeldt <djurfeldt@nada.kth.se>
601
602 * threads.scm (par-mapper, n-par-map, n-par-for-each): Use
603 futures.
604
6052003-01-20 Mikael Djurfeldt <djurfeldt@nada.kth.se>
606
607 * occam-channel.scm (alt): New syntax.
608
609 * psyntax.ss (self-evaluating?): Removed. Guile now provides this
610 operator as a primitive procedure.
611 (build-data): Quote vectors (psyntax.ss requires this).
612
6132003-01-19 Mikael Djurfeldt <djurfeldt@nada.kth.se>
614
615 * psyntax.ss (self-evaluating?): Allow procedures implanted in
616 source. (Guile uses this internally.)
617
6182003-01-16 Mikael Djurfeldt <djurfeldt@nada.kth.se>
619
620 * psyntax.ss (build-data): Don't quote self-evaluating expressions
621 in output. (We normally *would* like also these expressions to be
622 quoted, but until Guile's native macros and syncase cooperates
623 better, it is less destructive not to quote.)
624 (self-evaluating?): Removed null? (In Guile, the empty list is not
625 self-evaluating).
626 (sc-chi): Export chi as sc-chi.
627 (external-macro): New syntax type.
628
629 * psyntax.pp: Regenerated.
630
631 * compile-psyntax.scm: Set expansion-eval-closure.
632
633 * boot-9.scm (use-syntax): Return *unspecified*.
634
635 * syncase.scm: Set expansion-eval-closure to
636 the-syncase-eval-closure during booting so that variables are
637 created in the correct module.
638 (syncase): Set expansion-eval-closure.
639 (define-syntax define-syntax-public eval-when fluid-let-syntax
640 identifier-syntax let-syntax letrec-syntax syntax syntax-case
641 syntax-rules with-syntax include): Removed definitions (these are
642 created from within psyntax.pp).
643 Enable expansion of Guile macros during a syntax-case
644 transformation.
645
6462003-01-10 Mikael Djurfeldt <djurfeldt@nada.kth.se>
647
648 * occam-channel.scm (make-channel): Renamed from channel.
649 (make-timer): New function.
650
651 * Makefile.am (ice9_sources): Added occam-channel.scm.
652
653 * occam-channel.scm: New file. Implements occam-like channels.
654
6552002-12-28 Neil Jerram <neil@ossau.uklinux.net>
656
657 * boot-9.scm (module-defined-hook): New hook, run whenever a new
658 module is defined.
659 (process-define-module): Run this hook.
660
6612002-12-18 Mikael Djurfeldt <mdj@kvast.blakulla.net>
662
663 * threads.scm: Removed bogus definition of future-ref.
664
6652002-12-15 Mikael Djurfeldt <djurfeldt@nada.kth.se>
666
667 * threads.scm (par-map, par-for-each): Reimplemented using
668 joing-thread.
669 (parallel): Reimplemented using futures.
670 (n-par-map, n-for-each): New procedures.
671
6722002-12-12 Marius Vollmer <mvo@zagadka.ping.de>
673
674 * optargs.scm (improper-list-copy): New.
675 (parse-arglist): Use it instead of list-copy.
676
6772002-12-09 Mikael Djurfeldt <djurfeldt@nada.kth.se>
678
679 * threads.scm (letpar): New macro.
680
6812002-12-08 Rob Browning <rlb@defaultvalue.org>
682
683 * debugger/breakpoints/Makefile.am (subpkgdatadir): VERSION ->
684 GUILE_EFFECTIVE_VERSION.
685
686 * debugger/Makefile.am (subpkgdatadir): VERSION ->
687 GUILE_EFFECTIVE_VERSION.
688
689 * Makefile.am (subpkgdatadir): VERSION -> GUILE_EFFECTIVE_VERSION.
690
6912002-12-04 Mikael Djurfeldt <mdj@linnaeus>
692
693 * threads.scm (parallel): New macro.
694 (par-map, par-for-each): New procedures.
695
696 * documentation.scm (object-documentation): Added support for
697 defmacros.
698
6992002-11-24 Dirk Herrmann <D.Herrmann@tu-bs.de>
700
701 * boot-9.scm (re-export-syntax): Re-introduced after accidentally
702 removing it in my patch from 2002-11-16.
703
7042002-11-24 Dirk Herrmann <D.Herrmann@tu-bs.de>
705
706 Thanks to Mikael Djurfeldt for a bugreport which led to the
707 following changes:
708
709 * slib.scm (%system-define): Removed.
710
711 (define): Changed to use define-private instead of
712 %system-define.
713
714 * boot-9.scm (define-private): Undid my changes from 2002-11-16
715 until Guile supports hygienic macros.
716
7172002-11-17 Neil Jerram <neil@ossau.uklinux.net>
718
719 * emacs.scm (emacs-load): Locally define `read-and-eval!', as it
720 has been removed from the core.
721
7222002-11-16 Dirk Herrmann <D.Herrmann@tu-bs.de>
723
724 * syncase.scm (define-syntax, eval-when, fluid-let-syntax,
725 identifier-syntax, let-syntax, letrec-syntax, syntax, syntax-case,
726 syntax-rules, with-syntax, include): Changed definitions to form
727 'real' macro definitions.
728
7292002-11-16 Dirk Herrmann <D.Herrmann@tu-bs.de>
730
731 * boot-9.scm (define-private, export-syntax, export-syntax):
732 Fixed my previous fix (blush).
733
7342002-11-16 Dirk Herrmann <D.Herrmann@tu-bs.de>
735
736 * boot-9.scm (define-private, export-syntax, export-syntax):
737 Changed definitions to form 'real' macro definitions.
738
7392002-11-07 Marius Vollmer <marius.vollmer@uni-dortmund.de>
740
741 * format.scm (format): Use 'monitor' properly. Not the definition
742 needs to be restricted, the actual function needs to be.
743
7442002-11-05 Neil Jerram <neil@ossau.uklinux.net>
745
746 * boot-9.scm (define-option-interface): Fix to "simplification"
747 change below.
748
749 * debugger/breakpoints/source.scm: Enable source property
750 recording when module is loaded.
751 (##): Cope with ports whose `filename' is not a string.
752
7532002-11-04 Neil Jerram <neil@ossau.uklinux.net>
754
755 * boot-9.scm (define-option-interface): Simplify code-generation
756 code.
757
758 * debugger/command-loop.scm (read-and-dispatch-command): Import
759 set-readline-prompt dynamically if we need to. (Previous
760 arrangement didn't work if this module was loaded before (ice-9
761 readline).)
762
7632002-11-03 Marius Vollmer <mvo@zagadka.ping.de>
764
765 * format.scm (format): Wrap a monitor around format:format since
766 it is not thread-safe.
767
7682002-10-27 Marius Vollmer <mvo@zagadka.ping.de>
769
770 * threads.scm (%thread-handler): Explicitely return '#f'. This
771 value will be returned by join-thread.
772
7732002-10-26 Neil Jerram <neil@ossau.uklinux.net>
774
775 Merging debugger enhancements previously in separate
776 `guile-debugger' package ...
777
778 * debugger.scm: Factored out into the following constituent parts
779 - see comment in file for more details.
780 (*not-yet-introduced*): New (avoids repeatedly introducing the
781 debugger when entering it from breakpoints).
782 (debug-stack): New.
783 (debug): Rewrite to use more general `debug-stack'.
784
785 * debugger/commands.scm, debugger/command-loop.scm,
786 debugger/state.scm, debugger/utils.scm: New files containing bits
787 of old (ice-9 debugger), plus some rewriting and enhancements for
788 breakpoint support ...
789
790 * debugger/state.scm (state-rtd): Add flags field.
791 (make-state): Extend to optionally take flags.
792 (state-flags): New, accessor for flags field.
793 (set-state-index!, set-stack-index!): New.
794 (write-state-short): Rewritten to print out the current source
795 location in a way that is more easily trackable by Emacs.
796
797 * debugger/commands.scm (assert-continuable, continue, finish,
798 trace-finish, step, next): New debugger commands for continuing
799 execution from a breakpoint.
800
801 * debugger/behaviour.scm, debugger/breakpoints.scm,
802 debugger/breakpoints/procedural.scm,
803 debugger/breakpoints/range.scm, debugger/breakpoints/source.scm,
804 debugger/trap-hooks.scm, debugger/trc.scm: New files - breakpoint
805 support.
806
807 * Makefile.am (SUBDIRS): Add debugger subdirectory.
808
809 * debugger/Makefile.am, debugger/breakpoints/Makefile.am: New.
810
8112002-10-21 Marius Vollmer <mvo@zagadka.ping.de>
812
813 * threads.scm (%thread-handler): Do not call unmask-signals, that
814 should be unnecessary now.
815
8162002-10-20 Mikael Djurfeldt <mdj@linnaeus>
817
818 * boot-9.scm (top-repl): Look for use-emacs-interface in
819 guile-user-module (should it be there?) instead of
820 the-root-module.
821
8222002-10-10 Marius Vollmer <mvo@zagadka.ping.de>
823
824 * boot-9.scm (top-repl): Use 2 as the limit when saving the stack.
825 (error-catching-loop): use call-with-blocked-asyncs and
826 call-with-unblocked-asyncs instead of mask-signals and
827 unmask-signals.
828
8292002-10-09 Neil Jerram <neil@ossau.uklinux.net>
830
831 * buffered-input.scm (make-buffered-input-port): Build an
832 input-waiting thunk for just extended version of make-soft-port.
833
8342002-10-04 Rob Browning <rlb@defaultvalue.org>
835
836 * boot-9.scm (expt): switch if sense and use negative? rather than
837 >= 0.
838
8392002-10-04 Marius Vollmer <mvo@zagadka.ping.de>
840
841 * boot-9.scm (top-repl): Use "1" instead of "%deliver-signals" to
842 limit the signal stack.
843
8442002-09-15 Marius Vollmer <mvo@zagadka.ping.de>
845
846 * boot-9.scm (feature?): Added deprecation message.
847
8482002-09-14 Rob Browning <rlb@defaultvalue.org>
849
850 * boot-9.scm (sqrt): minor indentation fix.
851
8522002-09-05 Marius Vollmer <mvo@zagadka.ping.de>
853
854 * syncase.scm: Set the module transformer of the-syncase-module so
855 that we can use define-syntax.
856 (define-syntax-public): New and exported.
857
8582002-09-04 Marius Vollmer <mvo@zagadka.ping.de>
859
860 * syncase.scm (expansion-eval-closure, env->eval-closure): New.
861 (sc-macro): Set the expansion-eval-closure expanding the form.
862 (putprop, getprop): Use the expansion-eval-closure to find
863 variables instead of the current module.
864
8652002-07-08 Marius Vollmer <mvo@zagadka.ping.de>
866
867 * slib.scm (make-exchanger): Added. Thanks to Clinton Ebadi!
868
8692002-07-07 Dirk Herrmann <D.Herrmann@tu-bs.de>
870
871 * boot-9.scm (define-option-interface): Replaced "macro" by
872 mmacro.
873
8742002-06-01 Gary Houston <ghouston@arglist.com>
875
876 * boot-9.scm (file-set-position): Make third argument optional,
877 for SCM compatibility.
878 (file-position): simplify definition.
879
8802002-06-01 Marius Vollmer <mvo@zagadka.ping.de>
881
882 * boot-9.scm (file-set-position): Use seek instead of fseek.
883
8842002-05-09 Marius Vollmer <mvo@zagadka.ping.de>
885
886 * format.scm (format:out-inf-nan): New.
887 (format:out-fixed, format:out-expon, format:out-general): Use it
888 to print infs and nans.
889
890 * boot-9.scm (unsetenv): New, for completeness.
891
8922002-05-08 Marius Vollmer <mvo@zagadka.ping.de>
893
894 * format.scm (format:fn-max): Increase to 400 so ~f and ~g can
895 print long real numbers with large positive and negative
896 exponents.
897
8982002-05-06 Marius Vollmer <mvo@zagadka.ping.de>
899
900 * syncase.scm: Use (ice-9 threads) so that with-mutex is defined.
901
9022002-04-30 Thien-Thi Nguyen <ttn@giblet.glug.org>
903
904 * gap-buffer.scm: New file.
905
906 * Makefile.am (ice9_sources): Add gap-buffer.scm.
907
9082002-03-12 Rob Browning <rlb@defaultvalue.org>
909
910 * syncase.scm: fix bad let.
911 (gensym): fix failure on non-threaded
912
9132002-03-05 Thien-Thi Nguyen <ttn@giblet.glug.org>
914
915 * ftw.scm: New file.
916
917 * Makefile.am (ice9_sources): Add ftw.scm.
918
9192002-02-26 Thien-Thi Nguyen <ttn@giblet.glug.org>
920
921 * Makefile.am: Update path to pre-inst-guile automake frag.
922
923 * boot-9.scm: Comment grammar fixes; nfc.
924 Thanks to Christopher Cramer.
925
9262002-02-24 Rob Browning <rlb@defaultvalue.org>
927
928 * syncase.scm (gensym): redefine locally so we can control it's
929 properties. This is in preparation for changing the future public
930 gensym to produce unreadable symbols.
931
932 * psyntax.pp: updated to reflect new syncase.scm.
933
9342002-02-07 Thien-Thi Nguyen <ttn@giblet.glug.org>
935
936 * regex.scm: Add commentary; nfc.
937
9382002-02-05 Thien-Thi Nguyen <ttn@giblet.glug.org>
939
940 * Makefile.am: Include $(top_srcdir)/pre-inst-guile.am.
941
942 (psyntax.pp): Use $(preinstguile).
943
9442002-01-14 Marius Vollmer <mvo@zagadka.ping.de>
945
946 * psyntax.ss (datum->syntax-object): Removed assertion in
947 datum->syntax-object that checked if the first argument, a
948 syntax-object, is an identifier. This was a unconvenient and
949 unnecessary restriction. Thanks to Dorai Sitaram!
950
9512002-01-12 Marius Vollmer <mvo@zagadka.ping.de>
952
953