Moved SRFI-4 docs into main part. Moved bit vectors out of array
[bpt/guile.git] / ice-9 / ChangeLog
CommitLineData
79d52182
MV
12004-10-26 Marius Vollmer <marius.vollmer@uni-dortmund.de>
2
3 * boot-9.scm: Added srfi-4 to cond-expand features.
4
98c712c4
MV
52004-10-18 Marius Vollmer <marius.vollmer@uni-dortmund.de>
6
7 * format.scm (format:obj->str): Simplified considerably by using
8 object->string or display instead of implementing our own printer.
9 Handle format:read-proof here. Unreadable objects are recognized
10 by their "#<" prefix instead of by being unknown to the custom
11 printer (which would treat keywords as unprintable, for example).
12 (format:iobj->str): Removed.
13
aef0bdb4
MV
142004-10-04 Marius Vollmer <marius.vollmer@uni-dortmund.de>
15
16 * boot-9.scm (symbol->keyword, keyword->symbol): Removed, they are
17 now implemented in C.
18
e5c2d5c8
KR
192004-09-26 Kevin Ryde <user42@zip.com.au>
20
21 * optargs.scm (let-optional-template, let-keywords-template): Change
22 "(begin body)" to "(let () body)" for empty bindings, since the former
23 allows "internal defines" in body leak out to the surrounding
24 environment.
25
c9fedf8a
MV
262004-09-23 Marius Vollmer <mvo@zagadka.de>
27
28 * boot-9.scm (handle-system-error): Pass rest argument to
29 display-backtrace for wrong-type-arg and out-of-range errors so
30 that the bad value gets highlighted.
31
1c923ba7
KR
322004-09-04 Kevin Ryde <user42@zip.com.au>
33
34 * streams.scm (stream-for-each-many): Correction, should recurse into
35 itself, not stream-for-each-one.
36
2bd2014d
KR
37 * time.scm (time-proc): Make result inexact, since format ~f doesn't
38 support fractions currently.
39
e548be5f
MV
402004-09-08 Marius Vollmer <marius.vollmer@uni-dortmund.de>
41
42 * boot-9.scm (expt): Only call integer-expt for an exact integer
43 exponent, not for an inexact integer one. Also, let integer-expt
44 handle negative exponents instead of doing it here.
45
b8d95267
KR
462004-09-02 Kevin Ryde <user42@zip.com.au>
47
48 * format.scm (format:out): Ignore excess arguments, per common lisp.
49
50 * format.scm (format:out-num-padded): Print "+" on 0 under @ modifier.
51
24cc9192
KR
522004-08-27 Kevin Ryde <user42@zip.com.au>
53
54 * regex.scm (regexp-quote): [ and | must be quoted. Quote ( ) { + ?
55 using char class [(] etc since \( in fact makes them become special in
56 regexp/basic.
57
4b0ad1f4
KR
582004-08-25 Kevin Ryde <user42@zip.com.au>
59
60 * and-let-star.scm (and-let*): Give #t for an empty body, per srfi-2
61 spec, previously came out as an empty (begin).
62
c5080b51
MV
632004-08-25 Marius Vollmer <mvo@zagadka.de>
64
c4c3360b 65 * boot-9.scm (%cond-expand-features): Added srfi-13 and srfi-14.
c5080b51 66
fac3b6bc
MV
672004-08-20 Marius Vollmer <marius.vollmer@uni-dortmund.de>
68
69 * debugger/utils.scm (display-source): Use unmemoize-expr instead
70 of unmemoize.
71 (write-frame-short/expression): Likewise.
72
00ed256c
KR
732004-08-18 Kevin Ryde <user42@zip.com.au>
74
75 * and-let-star.scm: Add cond-expand-provide srfi-2, since this module
76 provides that feature.
77 * receive.scm: Add cond-expand-provide srfi-8, since this module
78 provides that feature.
79
d2afa1fc
MV
802004-08-09 Marius Vollmer <mvo@zagadka.de>
81
82 From Matthias Koeppe. Thanks!
83
84 * pretty-print.scm (generic-write): In the local procedure `wr', use
85 object->string to print all data (except for the reader macros),
86 rather than implementing an own printer. The user-visible
87 difference is that procedures and control characters like #\tab
88 are now printed in the same way as by `write'.
89
2975040b
KR
902004-08-09 Kevin Ryde <user42@zip.com.au>
91
92 * slib.scm (*features*): Remove array and array-for-each, core
93 definitions are insufficient for latest slib.
94 (t, nil): New constants slib says are supposed to exist.
95 (call-with-open-ports, browse-url): New functions for latest slib.
96 Implementations taken from Template.scm (public domain).
97 (open-file): Extend core definition to accept symbols for the mode,
98 required by latest slib.
99 (delete-file): Replace core definition with version returning #t/#f as
100 per slib spec.
101 (system): Mark as #:replace to suppress override warning, use new
102 style "(@ (guile) system)" to call core function.
103
dc510157
KR
1042004-05-25 Matthias Koeppe <mkoeppe@mail.math.uni-magdeburg.de>
105
106 * format.scm: Remove the arbitrary limit of 100 iterations for the
107 ~{...~} control structure.
108
2755366c
KR
1092004-07-10 Kevin Ryde <user42@zip.com.au>
110
111 * and-let-star.scm (and-let*): Remove unused variable "val".
112 * pretty-print.scm (read-macro-prefix): Remove unused variable "tail".
113
114 * boot-9.scm (%cond-expand-features): Add srfi-6 which is in the core.
115
116 * safe-r5rs.scm (re-export): Uncomment numerator, denominator,
117 rationalize, since they now exist.
118
40827c6d
KR
1192004-07-05 Kevin Ryde <user42@zip.com.au>
120
121 * slib.scm (system): Correction to redefinition, now guile is stricter
122 about when a define binding comes into existance.
123
3d2ada2f
DH
1242004-05-29 Dirk Herrmann <dirk@dirk-herrmanns-seiten.de>
125
126 * boot-9.scm: Reordered definitions such that macro definitions
127 preceed their first usage. Include and define deprecated stuff
128 late in the file to have a better change of detecting accidental
129 uses of deprecated definitions. Further, unified the layout a
130 little and grouped definitions more cleanly into topics.
131
41cfaa12
MV
1322004-05-24 Marius Vollmer <mvo@zagadka.de>
133
134 * history.scm (use-value-history): Use resolve-interface instead
135 of resolve-module so that only the exported bindings are searched.
136 (save-value-history): Export the newly defined variable. Reported
137 by Wolfgang Jaehrling.
138
9f84d6aa
DH
1392004-05-04 Dirk Herrmann <dirk@dirk-herrmanns-seiten.de>
140
141 * boot-9.scm (resolve-module): Always start searching from the
142 root module. This will allow the C equivalent scm_resolve_module
143 to work, independent of what the current module is.
144
9b792a7e
MV
1452004-02-18 Marius Vollmer <mvo@zagadka.de>
146
147 * boot-9.scm (top-repl): Make the (guile-user) module use the
148 (ice-9 r5rs) module.
149
711a9fd7
MD
1502004-02-12 Mikael Djurfeldt <djurfeldt@nada.kth.se>
151
152 * boot-9.scm (module-map): Renamed hash-map -> hash-map->list.
153
2c284c94
NJ
1542004-02-09 Neil Jerram <neil@ossau.uklinux.net>
155
156 * debugger/trap-hooks.scm (debug-hook-membership): New, exported.
157
158 * debugger/commands.scm (debug-trap-hooks): New, exported.
159
f1dc5f45
MD
1602004-02-08 Mikael Djurfeldt <djurfeldt@nada.kth.se>
161
162 * debugger/breakpoints/Makefile.am (TAGS_FILES),
163 debugger/Makefile.am (TAGS_FILES), Makefile.am (TAGS_FILES): Use
164 this variable instead of ETAGS_ARGS so that TAGS can be built
165 using separate build directory.
166
bb5ad88f
NJ
1672004-01-20 Neil Jerram <neil@ossau.uklinux.net>
168
169 * boot-9.scm (error-catching-loop): Back out 2003-11-19 change to
170 lazy-handler-dispatch lookup.
171
1dd2599f
MV
1722004-01-12 Marius Vollmer <mvo@zagadka.de>
173
174 * mapping.scm: Use '#:' prefix for keywords instead of ':'.
175 Thanks to Richard Todd!
176
9afa7a12
KR
1772004-01-11 Kevin Ryde <user42@zip.com.au>
178
7dd5eb58
KR
179 * slib.scm (system): New function, giving an exit code return in
180 accordance with slib spec.
181
9afa7a12
KR
182 Revert this, it breaks test-suite/tests/r5rs_pitfalls.test where
183 false-if-exception is used within syntax-rules. (Suspect syntax-rules
184 ought to support this sort of thing, but it doesn't right now.)
9afa7a12
KR
185 * boot-9.scm (false-if-exception): Unquote catch and lambda, so as not
186 to depend on expansion environment.
187
96e3b2f8
MV
1882004-01-07 Marius Vollmer <marius.vollmer@uni-dortmund.de>
189
190 * boot-9.scm (with-fluids): Use with-fluid* when only one fluid is
191 being set.
192
524cbf64
KR
1932004-01-07 Kevin Ryde <user42@zip.com.au>
194
195 * q.scm (q-pop!): Should be "null?" not "not" for end-of-list.
196 Reported by Richard Todd.
197
6d611fed
KR
1982004-01-04 Kevin Ryde <user42@zip.com.au>
199
200 * boot-9.scm (false-if-exception): Unquote catch and lambda, so as not
201 to depend on expansion environment.
202
97ac013a
KR
203 * slib.scm (-1+, <?, <=?, =?, >?, >=?): Define as aliases for 1-, <,
204 <=, =, >, >= respectively, required by slib 'rev2-procedures but no
205 longer in the guile core.
206
64758fe2
NJ
2072003-11-19 Neil Jerram <neil@ossau.uklinux.net>
208
209 * boot-9.scm (error-catching-loop): Defer lookup of
210 lazy-handler-dispatch.
211
aff7e166
MV
2122003-11-17 Marius Vollmer <mvo@zagadka.de>
213
214 * boot-9.scm (@, @@): New macros.
215
37f5dfe5
DH
2162003-11-16 Dirk Herrmann <D.Herrmann@tu-bs.de>
217
218 * boot-9.scm: Started comment about module system workings.
219
3273abd2
NJ
2202003-11-11 Neil Jerram <neil@ossau.uklinux.net>
221
30d90280
NJ
222 * debugger.scm: Change ui-* calls to gds-*.
223 (debug-on-error): Debug if throw key is in specified syms, not if
224 it isn't! Also throw 'abort after debugging, so as to skip the
225 REPL's backtrace.
226
3273abd2
NJ
227 * debugger/behaviour.scm (*trap*): New variable, stores trap type.
228 (before-enter-frame-hook, before-apply-frame-hook,
229 before-exit-frame-hook): Set here.
230 (debug-if-flag-set): Passed into flags on debug-stack call.
231 (at-step, at-next): Changed to debug at frame exit points as well.
232
233 * debugger/utils.scm: Big comment added.
234
2352003-10-30 Neil Jerram <neil@ossau.uklinux.net>
236
237 * debugger/ui-client.scm: Moved to ../emacs/gds-client.scm.
238
9f1af5d9
NJ
2392003-10-16 Neil Jerram <neil@ossau.uklinux.net>
240
241 * debugger/ui-client.scm (ui-connect): Add arg to say whether to
242 debug immediately on connection.
243 (ui-eval): Handle exceptions during read and evaluation.
244
245 * debugger.scm (debug-on-error, default-default-lazy-handler):
246 Remove an unnecessary level of indirection in calling lazy
247 handler.
248
e2de682c
MV
2492003-10-12 Marius Vollmer <mvo@zagadka.de>
250
251 * ftw.scm (directory-files): Close dir-stream when done. Thanks
252 to Paul Jarc!
253
ff6ea7b9
KR
2542003-10-09 Kevin Ryde <user42@zip.com.au>
255
256 * poe.scm (funcq-assoc): Rewrite, don't assume '() is false, and
257 actually traverse the given alist.
258
41a80feb
NJ
2592003-10-06 Neil Jerram <neil@ossau.uklinux.net>
260
261 * debugger/ui-client.scm (handle-instruction): Add evaluation
262 support.
263 (ui-eval): New.
264
02b0c692
NJ
2652003-10-04 Neil Jerram <neil@ossau.uklinux.net>
266
267 * debugger/ui-client.scm (ui-disable-async-thread,
268 ui-continue-async-thread, start-async-ui-thread): New.
269 (ui-command-loop): Call ui-disable-async-thread and
270 ui-continue-async-thread.
271 (handle-instruction): Read terminating newline char so it doesn't
272 cause following select to pop immediately.
273
79b1c5b6
NJ
2742003-09-25 Neil Jerram <neil@ossau.uklinux.net>
275
276 * debugger/ui-client.scm, debugger/ui-server.scm: New (work in
277 progress on new debugging front end).
278
2792003-09-24 Neil Jerram <neil@ossau.uklinux.net>
280
281 * debugger.scm (default-default-lazy-handler, debug-on-error):
282 New.
283
284 * debugger/behaviour.scm (debug-if-flag-set): Display debug entry
285 messages through (debugger-output-port).
286 (after-exit-frame-hook): Trace through (debugger-output-port).
287 (trace-here): Trace through (debugger-output-port).
288
289 * debugger/commands.scm (evaluate): If supplied expression is a
290 string, read from it before evaluating.
291 (evaluate): Change output format to "EXPR => VALUE".
292
9b4bbf47
KR
2932003-09-19 Kevin Ryde <user42@zip.com.au>
294
295 * popen.scm (open-process): Correction to previous fdes closing
296 change, need to watch out for stdin==stderr or stdout==stderr.
297
5dc1ba73
MV
2982003-09-15 Marius Vollmer <mvo@zagadka.de>
299
300 * format.scm (format): Rewritten as a big letrec to make it
301 reentrant. No mutex is necessary. Thanks to Clinton Ebadi!
302
7743d628
KR
3032003-09-13 Kevin Ryde <user42@zip.com.au>
304
305 * boot-9.scm (file-exists?): Use stat rather than access?, so as to
306 follow the effective UID/GID not the real ID. file-exists? is
cd56b181 307 normally used as a prelude to opening or some other operation, and
7743d628
KR
308 it's the effective ID which will apply there. Emacs file-exists-p
309 uses stat, presumably for the the same reason.
310
50e0ba57
MV
3112003-09-12 Marius Vollmer <mvo@zagadka.de>
312
313 * boot-9.scm (make-autoload-interface): Use a proper hashtable as
314 the obarray, not an empty vector.
315 (make-module): Always construct a hashtable for the obarray, even
316 for empty ones.
317
318 * format.scm (format:error): Use 'format:format' instead of
319 'format' since the latter will lock the mutex again that we have
320 already locked.
321 (format:format-work): Flag multiple '#' as an error.
322
2388d9af
KR
3232003-08-17 Kevin Ryde <user42@zip.com.au>
324
325 * boot-9.scm (while): Use a new key dynamically for each loop, so
326 break and continue associate to their loop even when recursing.
327
d97f9b42
KR
3282003-08-14 Kevin Ryde <user42@zip.com.au>
329
330 * boot-9.scm (while): Rewrite, continue as proper escape, break
331 without return value, break and continue new for each while form,
332 don't depend on bindings in expansion environment.
333
334 * popen.scm (open-process): Close input-fdes, output-fdes and
335 error-fdes after duping them to 0, 1 and 2.
336
996acdb8
KR
3372003-06-19 Kevin Ryde <user42@zip.com.au>
338
339 * threads.scm (parallel): For no forms, use `(values)' not `(begin)'.
340
42ad901d
DH
3412003-05-27 Dirk Herrmann <D.Herrmann@tu-bs.de>
342
343 * boot-9.scm (make-autoload-interface): Added missing quote around
344 vector constant.
345
47dee228
MV
3462003-05-20 Marius Vollmer <marius.vollmer@uni-dortmund.de>
347
348 * deprecated.scm (list*): Added.
349
6cced6fe
KR
3502003-05-10 Kevin Ryde <user42@zip.com.au>
351
352 * documentation.scm (file-commentary, find-documentation-in-file): Use
353 call-with-input-file, to close ports when done.
354
1b965c29
MV
3552003-05-03 Marius Vollmer <mvo@zagadka.de>
356
d04229df
MV
357 * gap-buffer.scm (point++n!, point+-n!): Use substring-move!
358 instead of substring-move-left! or substring-move-right!. Thanks
359 to Kevin Ryde.
360
361 * deprecated.scm (substring-move-left!, substring-move-right!):
362 New.
363
0d5271a2 364 * boot-9.scm (display-usage-report): Use keyword->symbol instead
6aa536b3 365 of keyword-symbol, which doesn't exist. Thanks to Kevin Ryde.
0d5271a2 366
2b24a689
MV
367 * hcons.scm (hashq-cons-get-handle): Pass only the expected four
368 arguments to hashx-get-handle. Thanks to Kevin Ryde!
369
1b965c29
MV
370 * lineio.scm (make-line-buffering-input-port) Pass 0 as second
371 argument to string-ref. Thanks to Kevin Ryde!
372
56b97da9
MD
3732003-04-25 Mikael Djurfeldt <mdj@kvast.blakulla.net>
374
375 * serialize.scm: New file.
376
359aab24
MD
3772003-04-24 Mikael Djurfeldt <djurfeldt@nada.kth.se>
378
379 * threads.scm (n-for-each-par-map): New procedure.
380
fc87c27a
MV
3812003-04-05 Marius Vollmer <mvo@zagadka.de>
382
383 * Changed license terms to the plain LGPL thru-out.
384
bd40d420
MV
3852003-03-26 Marius Vollmer <marius.vollmer@uni-dortmund.de>
386
387 * deprecated.scm: New file, to collect deprecated things.
388 * Makefile.am (ice9_sources): Added.
389
390 * boot-9.scm: Load "ice-9/deprecated.scm" when appropriate.
391 (try-load-module): Also try the old deprecated method, maybe.
392
570b5b14
MV
3932003-03-22 Marius Vollmer <mvo@zagadka.de>
394
395 * boot-9.scm (call/cc): Added.
396
44876271
MD
3972003-03-20 Mikael Djurfeldt <djurfeldt@nada.kth.se>
398
399 * list.scm: New file.
400
b80e1b5c
MV
4012003-03-19 Marius Vollmer <mvo@zagadka.de>
402
403 * format.scm (format:out-substr): Update the column counter
404 correctly. This fixes the behavior of ~T (tabbing) after ~F, for
405 instance. Thanks to Matthias Koeppe!
406
3742da68
MD
4072003-03-13 Mikael Djurfeldt <djurfeldt@nada.kth.se>
408
409 * session.scm (apropos): Don't look in duplicates interface.
410
70a459e3
MD
4112003-03-12 Mikael Djurfeldt <djurfeldt@nada.kth.se>
412
65bed4aa
MD
413 * boot-9.scm (duplicate-handlers): Make sure the merge-generics
414 and merge-accessors handlers are available also before (oop goops)
415 has been loaded. This is so that people can put them as default
416 handlers without worrying about availability.
417
3802f9cc
MD
418 * slib.scm (logical:ipow-by-squaring): Removed.
419
fe6ee052
MD
420 * boot-9.scm (ipow-by-squaring): Removed.
421 (default-duplicate-binding-handler): Set default to
6496a663 422 '(replace warn-override-core warn last)
fe6ee052 423
d57da08b
MD
424 * boot-9.scm (module-make-local-var!): Use module-add!.
425 (module-primitive-add!): New function.
426 (resolve-interface): Use
427 (call-with-deferred-observers, module-call-observers): New
428 functions.
429 (module-defer-observers, module-defer-observers-mute,
430 module-defer-observers-table): New variables.
431 (process-define-module, process-use-modules, export, re-export):
432 Use call-with-deferred-observers.
8d8dac1f
MD
433 (module-duplicates-info, set-module-duplicates-info!): Removed.
434 (module-duplicates-handlers, module-duplicates-interface): New.
435 (module-type): Added duplicates-handlers and
436 duplicates-interface.
d57da08b
MD
437
438 * syncase.scm (eval): Mark as replacement.
439
440 * boot-9.scm (defmacro-public): Use export-syntax instead of export.
441
70a459e3
MD
442 * slib.scm (*features*): Set the core variable instead of defining
443 a local version.
444 (provide, provided?): Mark as replacements.
445
446 * boot-9.scm (beautify-user-module!): Don't install the duplicates
447 handler here.
448 (default-duplicate-binding-handler): Renamed from
449 default-module-duplicates-handler; Removed converter.
450 (process-duplicates): Lookup default duplicates handler dynamically.
451 (default-duplicate-binding-procedures): New parameter.
452
509a787a
MD
4532003-03-12 Mikael Djurfeldt <mdj@kvast.blakulla.net>
454
455 * slib.scm (identity): Removed. (Provided by core.)
456
f595ccfe
MD
4572003-03-11 Mikael Djurfeldt <djurfeldt@nada.kth.se>
458
c614a00b
MD
459 * debugger/command-loop.scm: Prefix all commands imported from
460 (ice-9 debugger command-loop) with debugger:.
461
109c2c9f
MD
462 * boot-9.scm (process-duplicates): Use module-import-interface.
463 (module-symbol-interface): Removed.
c614a00b
MD
464 (resolve-interface): Process #:hide; Name custom interfaces
465 appropriately.
466 (module-use!, module-use-interfaces!): Remove existing interfaces
467 on the use-list based on module name rather than interface
468 identity so that custom interfaces truly replaces their previous
469 version.
109c2c9f 470
f595ccfe
MD
471 * boot-9.scm (module-override!, make-mutable-parameter,
472 lookup-duplicates-handlers, default-module-duplicates-handler):
473 New functions.
474 (process-duplicates): Don't call duplicates handlers for duplicate
475 bindings of the same variable.
476 (process-define-module): Process #:replace.
477 (compile-interface-spec, resolve-interface): Process #:prefix.
478
479 * format.scm (format): Marked as replacement.
480
481 * threads.scm (future, future-ref): Marked as replacements.
482
7b07e5ef
MD
4832003-03-07 Mikael Djurfeldt <djurfeldt@nada.kth.se>
484
485 These changes enables checking for duplicate imported bindings.
486
487 * boot-9.scm (process-define-module): Handle #:duplicates.
488 (module-use-interfaces! process-duplicates): New functions.
489 (duplicate-handlers): Dictionary of duplicate handlers.
490 (module-symbol-local-binding, module-symbol-binding): Bugfix.
491
1798b73d
MD
4922003-03-04 Mikael Djurfeldt <djurfeldt@nada.kth.se>
493
494 * session.scm (apropos): Use hash-for-each instead of
495 array-for-each.
496
c35738c1
MD
4972003-02-19 Mikael Djurfeldt <djurfeldt@nada.kth.se>
498
231a4ea8
MD
499 * boot-9.scm (make-module): Changed default size from 1021 to 31
500 (since the size now adapts).
501 (macro-table, xformer-table): Changed default size from 523 to 61.
502 (make-module): Don't call make-hash-table with zero size.
503
c35738c1
MD
504 * Makefile.am (ice9_sources): Added weak-vector.scm.
505
506 * weak-vector.scm: New file.
507
508 * boot-9.scm (module-clear!): Use hash-clear!.
509 (module-for-each): Use hash-for-each.
510 (module-map): Use hash-map.
511
f59a096e
MD
5122003-02-11 Mikael Djurfeldt <djurfeldt@nada.kth.se>
513
514 * boot-9.scm (make-hash-table): Turned primitive.
515
e963ac2c
MD
5162003-01-27 Mikael Djurfeldt <djurfeldt@nada.kth.se>
517
518 * syncase.scm (guile-macro): Strip syntactic information from
519 expression before trying to treat it as a Guile macro call.
520 (Thanks to Kevin Ryde.)
521
c2950e36
MD
5222003-01-24 Mikael Djurfeldt <djurfeldt@nada.kth.se>
523
524 * threads.scm (parallel, letpar): Rewritten.
525
f4719f31
MD
5262003-01-23 Mikael Djurfeldt <djurfeldt@nada.kth.se>
527
528 * threads.scm (par-mapper, n-par-map, n-par-for-each): Use
529 futures.
530
93f26b7b
MD
5312003-01-20 Mikael Djurfeldt <djurfeldt@nada.kth.se>
532
51407fa0
MD
533 * occam-channel.scm (alt): New syntax.
534
93f26b7b
MD
535 * psyntax.ss (self-evaluating?): Removed. Guile now provides this
536 operator as a primitive procedure.
537 (build-data): Quote vectors (psyntax.ss requires this).
538
5392003-01-19 Mikael Djurfeldt <djurfeldt@nada.kth.se>
540
541 * psyntax.ss (self-evaluating?): Allow procedures implanted in
542 source. (Guile uses this internally.)
543
80f225df
MD
5442003-01-16 Mikael Djurfeldt <djurfeldt@nada.kth.se>
545
546 * psyntax.ss (build-data): Don't quote self-evaluating expressions
547 in output. (We normally *would* like also these expressions to be
548 quoted, but until Guile's native macros and syncase cooperates
549 better, it is less destructive not to quote.)
550 (self-evaluating?): Removed null? (In Guile, the empty list is not
551 self-evaluating).
552 (sc-chi): Export chi as sc-chi.
553 (external-macro): New syntax type.
554
555 * psyntax.pp: Regenerated.
556
557 * compile-psyntax.scm: Set expansion-eval-closure.
7906d57d 558
cf743aea
MD
559 * boot-9.scm (use-syntax): Return *unspecified*.
560
7906d57d
MD
561 * syncase.scm: Set expansion-eval-closure to
562 the-syncase-eval-closure during booting so that variables are
cf743aea
MD
563 created in the correct module.
564 (syncase): Set expansion-eval-closure.
7906d57d
MD
565 (define-syntax define-syntax-public eval-when fluid-let-syntax
566 identifier-syntax let-syntax letrec-syntax syntax syntax-case
567 syntax-rules with-syntax include): Removed definitions (these are
568 created from within psyntax.pp).
80f225df
MD
569 Enable expansion of Guile macros during a syntax-case
570 transformation.
cf743aea 571
60eefd9c
MD
5722003-01-10 Mikael Djurfeldt <djurfeldt@nada.kth.se>
573
8411a446 574 * occam-channel.scm (make-channel): Renamed from channel.
fb831451 575 (make-timer): New function.
8411a446 576
60eefd9c
MD
577 * Makefile.am (ice9_sources): Added occam-channel.scm.
578
579 * occam-channel.scm: New file. Implements occam-like channels.
580
db853761
NJ
5812002-12-28 Neil Jerram <neil@ossau.uklinux.net>
582
583 * boot-9.scm (module-defined-hook): New hook, run whenever a new
584 module is defined.
585 (process-define-module): Run this hook.
586
62d4fd94
MD
5872002-12-18 Mikael Djurfeldt <mdj@kvast.blakulla.net>
588
589 * threads.scm: Removed bogus definition of future-ref.
590
87623595
MD
5912002-12-15 Mikael Djurfeldt <djurfeldt@nada.kth.se>
592
593 * threads.scm (par-map, par-for-each): Reimplemented using
594 joing-thread.
595 (parallel): Reimplemented using futures.
596 (n-par-map, n-for-each): New procedures.
597
edeea67b
MV
5982002-12-12 Marius Vollmer <mvo@zagadka.ping.de>
599
600 * optargs.scm (improper-list-copy): New.
601 (parse-arglist): Use it instead of list-copy.
602
fc85d095
MD
6032002-12-09 Mikael Djurfeldt <djurfeldt@nada.kth.se>
604
605 * threads.scm (letpar): New macro.
606
b2cbe8d8
RB
6072002-12-08 Rob Browning <rlb@defaultvalue.org>
608
609 * debugger/breakpoints/Makefile.am (subpkgdatadir): VERSION ->
610 GUILE_EFFECTIVE_VERSION.
611
612 * debugger/Makefile.am (subpkgdatadir): VERSION ->
613 GUILE_EFFECTIVE_VERSION.
614
615 * Makefile.am (subpkgdatadir): VERSION -> GUILE_EFFECTIVE_VERSION.
616
abce330c
MD
6172002-12-04 Mikael Djurfeldt <mdj@linnaeus>
618
fc85d095
MD
619 * threads.scm (parallel): New macro.
620 (par-map, par-for-each): New procedures.
abce330c
MD
621
622 * documentation.scm (object-documentation): Added support for
623 defmacros.
624
f2cbc0e5
DH
6252002-11-24 Dirk Herrmann <D.Herrmann@tu-bs.de>
626
627 * boot-9.scm (re-export-syntax): Re-introduced after accidentally
628 removing it in my patch from 2002-11-16.
629
9123414e
DH
6302002-11-24 Dirk Herrmann <D.Herrmann@tu-bs.de>
631
632 Thanks to Mikael Djurfeldt for a bugreport which led to the
633 following changes:
634
635 * slib.scm (%system-define): Removed.
636
637 (define): Changed to use define-private instead of
638 %system-define.
639
640 * boot-9.scm (define-private): Undid my changes from 2002-11-16
641 until Guile supports hygienic macros.
642
50a63003
NJ
6432002-11-17 Neil Jerram <neil@ossau.uklinux.net>
644
645 * emacs.scm (emacs-load): Locally define `read-and-eval!', as it
646 has been removed from the core.
647
c55bcb32
DH
6482002-11-16 Dirk Herrmann <D.Herrmann@tu-bs.de>
649
650 * syncase.scm (define-syntax, eval-when, fluid-let-syntax,
651 identifier-syntax, let-syntax, letrec-syntax, syntax, syntax-case,
652 syntax-rules, with-syntax, include): Changed definitions to form
653 'real' macro definitions.
654
6aa9ea7c
DH
6552002-11-16 Dirk Herrmann <D.Herrmann@tu-bs.de>
656
657 * boot-9.scm (define-private, export-syntax, export-syntax):
658 Fixed my previous fix (blush).
659
ab382f52
DH
6602002-11-16 Dirk Herrmann <D.Herrmann@tu-bs.de>
661
662 * boot-9.scm (define-private, export-syntax, export-syntax):
663 Changed definitions to form 'real' macro definitions.
664
81cf290d
MV
6652002-11-07 Marius Vollmer <marius.vollmer@uni-dortmund.de>
666
667 * format.scm (format): Use 'monitor' properly. Not the definition
668 needs to be restricted, the actual function needs to be.
669
3f619266
NJ
6702002-11-05 Neil Jerram <neil@ossau.uklinux.net>
671
672 * boot-9.scm (define-option-interface): Fix to "simplification"
673 change below.
674
675 * debugger/breakpoints/source.scm: Enable source property
676 recording when module is loaded.
677 (##): Cope with ports whose `filename' is not a string.
678
9124ba8d
NJ
6792002-11-04 Neil Jerram <neil@ossau.uklinux.net>
680
0983f67f
NJ
681 * boot-9.scm (define-option-interface): Simplify code-generation
682 code.
683
9124ba8d
NJ
684 * debugger/command-loop.scm (read-and-dispatch-command): Import
685 set-readline-prompt dynamically if we need to. (Previous
686 arrangement didn't work if this module was loaded before (ice-9
687 readline).)
688
eb2c5dcb
MV
6892002-11-03 Marius Vollmer <mvo@zagadka.ping.de>
690
691 * format.scm (format): Wrap a monitor around format:format since
692 it is not thread-safe.
693
132fe7af
MV
6942002-10-27 Marius Vollmer <mvo@zagadka.ping.de>
695
696 * threads.scm (%thread-handler): Explicitely return '#f'. This
697 value will be returned by join-thread.
698
8ee7506b
NJ
6992002-10-26 Neil Jerram <neil@ossau.uklinux.net>
700
701 Merging debugger enhancements previously in separate
702 `guile-debugger' package ...
703
704 * debugger.scm: Factored out into the following constituent parts
705 - see comment in file for more details.
706 (*not-yet-introduced*): New (avoids repeatedly introducing the
707 debugger when entering it from breakpoints).
708 (debug-stack): New.
709 (debug): Rewrite to use more general `debug-stack'.
710
711 * debugger/commands.scm, debugger/command-loop.scm,
712 debugger/state.scm, debugger/utils.scm: New files containing bits
713 of old (ice-9 debugger), plus some rewriting and enhancements for
714 breakpoint support ...
715
716 * debugger/state.scm (state-rtd): Add flags field.
717 (make-state): Extend to optionally take flags.
718 (state-flags): New, accessor for flags field.
719 (set-state-index!, set-stack-index!): New.
720 (write-state-short): Rewritten to print out the current source
721 location in a way that is more easily trackable by Emacs.
722
723 * debugger/commands.scm (assert-continuable, continue, finish,
724 trace-finish, step, next): New debugger commands for continuing
725 execution from a breakpoint.
726
727 * debugger/behaviour.scm, debugger/breakpoints.scm,
728 debugger/breakpoints/procedural.scm,
729 debugger/breakpoints/range.scm, debugger/breakpoints/source.scm,
730 debugger/trap-hooks.scm, debugger/trc.scm: New files - breakpoint
731 support.
732
733 * Makefile.am (SUBDIRS): Add debugger subdirectory.
734
735 * debugger/Makefile.am, debugger/breakpoints/Makefile.am: New.
736
03453b05
MV
7372002-10-21 Marius Vollmer <mvo@zagadka.ping.de>
738
739 * threads.scm (%thread-handler): Do not call unmask-signals, that
740 should be unnecessary now.
741
a7785f36
MD
7422002-10-20 Mikael Djurfeldt <mdj@linnaeus>
743
744 * boot-9.scm (top-repl): Look for use-emacs-interface in
745 guile-user-module (should it be there?) instead of
746 the-root-module.
747
acfa1f52
MV
7482002-10-10 Marius Vollmer <mvo@zagadka.ping.de>
749
750 * boot-9.scm (top-repl): Use 2 as the limit when saving the stack.
751 (error-catching-loop): use call-with-blocked-asyncs and
752 call-with-unblocked-asyncs instead of mask-signals and
753 unmask-signals.
754
34010f56
NJ
7552002-10-09 Neil Jerram <neil@ossau.uklinux.net>
756
757 * buffered-input.scm (make-buffered-input-port): Build an
758 input-waiting thunk for just extended version of make-soft-port.
759
9bc54879
RB
7602002-10-04 Rob Browning <rlb@defaultvalue.org>
761
762 * boot-9.scm (expt): switch if sense and use negative? rather than
763 >= 0.
764
3538c2b2
MV
7652002-10-04 Marius Vollmer <mvo@zagadka.ping.de>
766
767 * boot-9.scm (top-repl): Use "1" instead of "%deliver-signals" to
768 limit the signal stack.
769
f4232aa6
MV
7702002-09-15 Marius Vollmer <mvo@zagadka.ping.de>
771
772 * boot-9.scm (feature?): Added deprecation message.
773
5fc0857e
RB
7742002-09-14 Rob Browning <rlb@defaultvalue.org>
775
776 * boot-9.scm (sqrt): minor indentation fix.
777
cfcdb8e9
MV
7782002-09-05 Marius Vollmer <mvo@zagadka.ping.de>
779
780 * syncase.scm: Set the module transformer of the-syncase-module so
781 that we can use define-syntax.
782 (define-syntax-public): New and exported.
783
7842002-09-04 Marius Vollmer <mvo@zagadka.ping.de>
785
786 * syncase.scm (expansion-eval-closure, env->eval-closure): New.
787 (sc-macro): Set the expansion-eval-closure expanding the form.
788 (putprop, getprop): Use the expansion-eval-closure to find
789 variables instead of the current module.
790
fdf7e1d7
MV
7912002-07-08 Marius Vollmer <mvo@zagadka.ping.de>
792
793 * slib.scm (make-exchanger): Added. Thanks to Clinton Ebadi!
794
7c38399f
DH
7952002-07-07 Dirk Herrmann <D.Herrmann@tu-bs.de>
796
797 * boot-9.scm (define-option-interface): Replaced "macro" by
798 mmacro.
799
1334c61a
GH
8002002-06-01 Gary Houston <ghouston@arglist.com>
801
802 * boot-9.scm (file-set-position): Make third argument optional,
803 for SCM compatibility.
804 (file-position): simplify definition.
805
be87cdb7
MV
8062002-06-01 Marius Vollmer <mvo@zagadka.ping.de>
807
808 * boot-9.scm (file-set-position): Use seek instead of fseek.
809
e717bf46
MV
8102002-05-09 Marius Vollmer <mvo@zagadka.ping.de>
811
812 * format.scm (format:out-inf-nan): New.
813 (format:out-fixed, format:out-expon, format:out-general): Use it
814 to print infs and nans.
815
816 * boot-9.scm (unsetenv): New, for completeness.
817
9ea4ac37
MV
8182002-05-08 Marius Vollmer <mvo@zagadka.ping.de>
819
820 * format.scm (format:fn-max): Increase to 400 so ~f and ~g can
821 print long real numbers with large positive and negative
822 exponents.
823
45845efe
MV
8242002-05-06 Marius Vollmer <mvo@zagadka.ping.de>
825
826 * syncase.scm: Use (ice-9 threads) so that with-mutex is defined.
827
0bd1b44f
TTN
8282002-04-30 Thien-Thi Nguyen <ttn@giblet.glug.org>
829
830 * gap-buffer.scm: New file.
831
832 * Makefile.am (ice9_sources): Add gap-buffer.scm.
833
c87af2d5
RB
8342002-03-12 Rob Browning <rlb@defaultvalue.org>
835
836 * syncase.scm: fix bad let.
837 (gensym): fix failure on non-threaded
838
6c5b8521
TTN
8392002-03-05 Thien-Thi Nguyen <ttn@giblet.glug.org>
840
841 * ftw.scm: New file.
842
843 * Makefile.am (ice9_sources): Add ftw.scm.
844
327d4dd3
TTN
8452002-02-26 Thien-Thi Nguyen <ttn@giblet.glug.org>
846
847 * Makefile.am: Update path to pre-inst-guile automake frag.
848
d51b42e2
TTN
849 * boot-9.scm: Comment grammar fixes; nfc.
850 Thanks to Christopher Cramer.
851
46151112
RB
8522002-02-24 Rob Browning <rlb@defaultvalue.org>
853
854 * syncase.scm (gensym): redefine locally so we can control it's
855 properties. This is in preparation for changing the future public
856 gensym to produce unreadable symbols.
857
858 * psyntax.pp: updated to reflect new syncase.scm.
859
90d4a6b0
TTN
8602002-02-07 Thien-Thi Nguyen <ttn@giblet.glug.org>
861
862 * regex.scm: Add commentary; nfc.
863
0187b4f4
TTN
8642002-02-05 Thien-Thi Nguyen <ttn@giblet.glug.org>
865
866 * Makefile.am: Include $(top_srcdir)/pre-inst-guile.am.
867
868 (psyntax.pp): Use $(preinstguile).
869
dd580bd6
MV
8702002-01-14 Marius Vollmer <mvo@zagadka.ping.de>
871
872 * psyntax.ss (datum->syntax-object): Removed assertion in
873 datum->syntax-object that checked if the first argument, a
874 syntax-object, is an identifier. This was a unconvenient and
875 unnecessary restriction. Thanks to Dorai Sitaram!
876
0e6f7775
MV
8772002-01-12 Marius Vollmer <mvo@zagadka.ping.de>
878
879