*** empty log message ***
[bpt/guile.git] / ice-9 / ChangeLog
CommitLineData
fccc3e92
MV
12005-06-05 Marius Vollmer <mvo@zagadka.de>
2
3 * boot-9.scm (substring-fill!): New, for compatability.
4
8cb2eff8
KR
52005-04-23 Kevin Ryde <user42@zip.com.au>
6
7 * boot-9.scm (make-list): Moved to C code in list.c
8
c0575bde
KR
92005-04-14 Kevin Ryde <user42@zip.com.au>
10
11 * boot-9.scm (1+, 1-): Moved to numbers.c.
12
d1ad188c
KR
132005-03-08 Kevin Ryde <user42@zip.com.au>
14
15 * slib.scm (*features*): Remove 'random, need to use the slib code for
16 that module since guile doesn't provide `random:chunk'.
17
f7fb2f39
RB
182005-02-12 Rob Browning <rlb@defaultvalue.org>
19
20 * boot-9.scm (%cond-expand-features): add srfi-55.
21 (require-extension): add require-extension macro for srfi-55.
22
bba35c80
KR
232005-01-29 Kevin Ryde <user42@zip.com.au>
24
25 * regex.scm (regexp-quote): Use string-for-each, now that function is
26 in the core.
27
4d38e6f0
KR
282005-01-28 Kevin Ryde <user42@zip.com.au>
29
30 * boot-9.scm (while): Remove the unquote from do, it breaks with ice-9
31 syncase. Reported by Pach Roman.
32
1a523873
MV
332005-01-10 Marius Vollmer <marius.vollmer@uni-dortmund.de>
34
35 * arrays.scm, deprecated.scm (uniform-vector-fill!,
36 make-uniform-vector, make-uniform-array, list->uniform-vector):
37 Moved from arrays.scm to deprecated.scm.
38 * arrays.scm, boot-9.scm (array-dimensions): Moved from arrays.scm
39 to boo-9.scm.
40 * Makefile.am (ice9_sources): Removed arrays.scm.
41
5be5e699
MV
422005-01-02 Marius Vollmer <mvo@zagadka.de>
43
44 * arrays.scm (uniform-vector-fill!, make-uniform-vector,
45 make-uniform-array,list->uniform-array): Deprecated for real.
46
1ebcfa34
MV
472004-12-29 Marius Vollmer <mvo@zagadka.de>
48
49 * arrays.scm (make-array, list->array): Removed.
50 (uniform-vector-fill!): Prepared to be deprecated.
51
3167d5e4
MV
522004-12-22 Marius Vollmer <marius.vollmer@uni-dortmund.de>
53
54 * boot-9.scm (module-make-local-var!): When creating a new
55 variable, initialize it to the value of any imported variable with
56 the given name. This allows code like (define round round) to
57 work as expected.
58
59 From Antoine Mathys <tonigonenstein@users.sourceforge.net>:
60
61 * popen.scm: Support bidirectional communication by making
62 open-pipe support OPEN_BOTH as second argument and in that case
63 return a soft input-output port which uses two pipes internally.
64 Provide open-pipe* to execute programs without using the shell
65 (and actually base open-pipe on it) and the obvious
66 open-input-output-pipe.
67
e120686a
KR
682004-12-14 Kevin Ryde <user42@zip.com.au>
69
70 * boot-9.scm: (string-any, string-every): Use a scheme wrapper around
71 the C code so for the final call to the predicate procedure is a tail
72 call, per SRFI-13 spec.
73
f41c1142
MV
742004-12-01 mvo <mvo@zagadka.de>
75
76 * boot-9.scm (app, %app): Renamed former to the latter.
77 Previously, 'app' was reserved in every module. Now '%app' is
78 reserved, which is slightly better. The real fix is to not use
79 'local-ref' etc to find modules. Changed all uses.
80 * syncase.scm: Changed 'app' to '%app'.
81
d550e35f
MV
822004-11-12 Marius Vollmer <marius.vollmer@uni-dortmund.de>
83
84 * arrays.scm: Do not use prototypes, use creator functions.
85
2ed34885
MV
862004-11-10 Marius Vollmer <mvo@zagadka.de>
87
88 * arrays.scm (uniform-vector-read!, uniform-vector-write):
89 Removed.
90
a2b6a0e7
MV
912004-11-05 Marius Vollmer <marius.vollmer@uni-dortmund.de>
92
93 * boot-9.scm: Do not add "." to %load-path. 'load' will still be
94 able to load files in the current directory, but 'use-modules' etc
95 will not.
96
5e9c05a1
MV
972004-10-29 Marius Vollmer <marius.vollmer@uni-dortmund.de>
98
99 * arrays.scm: Do not install read-hash procedure for reading
100 arrays, this is done in libguile now.
101
7b1574ed
MV
1022004-10-27 Marius Vollmer <marius.vollmer@uni-dortmund.de>
103
104 * arrays.scm (uniform-vector?, uniform-vector-set!): Removed, now
105 provided by libguile.
106
79d52182
MV
1072004-10-26 Marius Vollmer <marius.vollmer@uni-dortmund.de>
108
109 * boot-9.scm: Added srfi-4 to cond-expand features.
110
98c712c4
MV
1112004-10-18 Marius Vollmer <marius.vollmer@uni-dortmund.de>
112
113 * format.scm (format:obj->str): Simplified considerably by using
114 object->string or display instead of implementing our own printer.
115 Handle format:read-proof here. Unreadable objects are recognized
116 by their "#<" prefix instead of by being unknown to the custom
117 printer (which would treat keywords as unprintable, for example).
118 (format:iobj->str): Removed.
119
aef0bdb4
MV
1202004-10-04 Marius Vollmer <marius.vollmer@uni-dortmund.de>
121
122 * boot-9.scm (symbol->keyword, keyword->symbol): Removed, they are
123 now implemented in C.
124
e5c2d5c8
KR
1252004-09-26 Kevin Ryde <user42@zip.com.au>
126
127 * optargs.scm (let-optional-template, let-keywords-template): Change
128 "(begin body)" to "(let () body)" for empty bindings, since the former
129 allows "internal defines" in body leak out to the surrounding
130 environment.
131
c9fedf8a
MV
1322004-09-23 Marius Vollmer <mvo@zagadka.de>
133
134 * boot-9.scm (handle-system-error): Pass rest argument to
135 display-backtrace for wrong-type-arg and out-of-range errors so
136 that the bad value gets highlighted.
137
1c923ba7
KR
1382004-09-04 Kevin Ryde <user42@zip.com.au>
139
140 * streams.scm (stream-for-each-many): Correction, should recurse into
141 itself, not stream-for-each-one.
142
2bd2014d
KR
143 * time.scm (time-proc): Make result inexact, since format ~f doesn't
144 support fractions currently.
145
e548be5f
MV
1462004-09-08 Marius Vollmer <marius.vollmer@uni-dortmund.de>
147
148 * boot-9.scm (expt): Only call integer-expt for an exact integer
149 exponent, not for an inexact integer one. Also, let integer-expt
150 handle negative exponents instead of doing it here.
151
b8d95267
KR
1522004-09-02 Kevin Ryde <user42@zip.com.au>
153
154 * format.scm (format:out): Ignore excess arguments, per common lisp.
155
156 * format.scm (format:out-num-padded): Print "+" on 0 under @ modifier.
157
24cc9192
KR
1582004-08-27 Kevin Ryde <user42@zip.com.au>
159
160 * regex.scm (regexp-quote): [ and | must be quoted. Quote ( ) { + ?
161 using char class [(] etc since \( in fact makes them become special in
162 regexp/basic.
163
4b0ad1f4
KR
1642004-08-25 Kevin Ryde <user42@zip.com.au>
165
166 * and-let-star.scm (and-let*): Give #t for an empty body, per srfi-2
167 spec, previously came out as an empty (begin).
168
c5080b51
MV
1692004-08-25 Marius Vollmer <mvo@zagadka.de>
170
c4c3360b 171 * boot-9.scm (%cond-expand-features): Added srfi-13 and srfi-14.
c5080b51 172
fac3b6bc
MV
1732004-08-20 Marius Vollmer <marius.vollmer@uni-dortmund.de>
174
175 * debugger/utils.scm (display-source): Use unmemoize-expr instead
176 of unmemoize.
177 (write-frame-short/expression): Likewise.
178
00ed256c
KR
1792004-08-18 Kevin Ryde <user42@zip.com.au>
180
181 * and-let-star.scm: Add cond-expand-provide srfi-2, since this module
182 provides that feature.
183 * receive.scm: Add cond-expand-provide srfi-8, since this module
184 provides that feature.
185
d2afa1fc
MV
1862004-08-09 Marius Vollmer <mvo@zagadka.de>
187
188 From Matthias Koeppe. Thanks!
189
190 * pretty-print.scm (generic-write): In the local procedure `wr', use
191 object->string to print all data (except for the reader macros),
192 rather than implementing an own printer. The user-visible
193 difference is that procedures and control characters like #\tab
194 are now printed in the same way as by `write'.
195
2975040b
KR
1962004-08-09 Kevin Ryde <user42@zip.com.au>
197
198 * slib.scm (*features*): Remove array and array-for-each, core
199 definitions are insufficient for latest slib.
200 (t, nil): New constants slib says are supposed to exist.
201 (call-with-open-ports, browse-url): New functions for latest slib.
202 Implementations taken from Template.scm (public domain).
203 (open-file): Extend core definition to accept symbols for the mode,
204 required by latest slib.
205 (delete-file): Replace core definition with version returning #t/#f as
206 per slib spec.
207 (system): Mark as #:replace to suppress override warning, use new
208 style "(@ (guile) system)" to call core function.
209
dc510157
KR
2102004-05-25 Matthias Koeppe <mkoeppe@mail.math.uni-magdeburg.de>
211
212 * format.scm: Remove the arbitrary limit of 100 iterations for the
213 ~{...~} control structure.
214
2755366c
KR
2152004-07-10 Kevin Ryde <user42@zip.com.au>
216
217 * and-let-star.scm (and-let*): Remove unused variable "val".
218 * pretty-print.scm (read-macro-prefix): Remove unused variable "tail".
219
220 * boot-9.scm (%cond-expand-features): Add srfi-6 which is in the core.
221
222 * safe-r5rs.scm (re-export): Uncomment numerator, denominator,
223 rationalize, since they now exist.
224
40827c6d
KR
2252004-07-05 Kevin Ryde <user42@zip.com.au>
226
227 * slib.scm (system): Correction to redefinition, now guile is stricter
228 about when a define binding comes into existance.
229
3d2ada2f
DH
2302004-05-29 Dirk Herrmann <dirk@dirk-herrmanns-seiten.de>
231
232 * boot-9.scm: Reordered definitions such that macro definitions
233 preceed their first usage. Include and define deprecated stuff
234 late in the file to have a better change of detecting accidental
235 uses of deprecated definitions. Further, unified the layout a
236 little and grouped definitions more cleanly into topics.
237
41cfaa12
MV
2382004-05-24 Marius Vollmer <mvo@zagadka.de>
239
240 * history.scm (use-value-history): Use resolve-interface instead
241 of resolve-module so that only the exported bindings are searched.
242 (save-value-history): Export the newly defined variable. Reported
243 by Wolfgang Jaehrling.
244
9f84d6aa
DH
2452004-05-04 Dirk Herrmann <dirk@dirk-herrmanns-seiten.de>
246
247 * boot-9.scm (resolve-module): Always start searching from the
248 root module. This will allow the C equivalent scm_resolve_module
249 to work, independent of what the current module is.
250
9b792a7e
MV
2512004-02-18 Marius Vollmer <mvo@zagadka.de>
252
253 * boot-9.scm (top-repl): Make the (guile-user) module use the
254 (ice-9 r5rs) module.
255
711a9fd7
MD
2562004-02-12 Mikael Djurfeldt <djurfeldt@nada.kth.se>
257
258 * boot-9.scm (module-map): Renamed hash-map -> hash-map->list.
259
2c284c94
NJ
2602004-02-09 Neil Jerram <neil@ossau.uklinux.net>
261
262 * debugger/trap-hooks.scm (debug-hook-membership): New, exported.
263
264 * debugger/commands.scm (debug-trap-hooks): New, exported.
265
f1dc5f45
MD
2662004-02-08 Mikael Djurfeldt <djurfeldt@nada.kth.se>
267
268 * debugger/breakpoints/Makefile.am (TAGS_FILES),
269 debugger/Makefile.am (TAGS_FILES), Makefile.am (TAGS_FILES): Use
270 this variable instead of ETAGS_ARGS so that TAGS can be built
271 using separate build directory.
272
bb5ad88f
NJ
2732004-01-20 Neil Jerram <neil@ossau.uklinux.net>
274
275 * boot-9.scm (error-catching-loop): Back out 2003-11-19 change to
276 lazy-handler-dispatch lookup.
277
1dd2599f
MV
2782004-01-12 Marius Vollmer <mvo@zagadka.de>
279
280 * mapping.scm: Use '#:' prefix for keywords instead of ':'.
281 Thanks to Richard Todd!
282
9afa7a12
KR
2832004-01-11 Kevin Ryde <user42@zip.com.au>
284
7dd5eb58
KR
285 * slib.scm (system): New function, giving an exit code return in
286 accordance with slib spec.
287
9afa7a12
KR
288 Revert this, it breaks test-suite/tests/r5rs_pitfalls.test where
289 false-if-exception is used within syntax-rules. (Suspect syntax-rules
290 ought to support this sort of thing, but it doesn't right now.)
9afa7a12
KR
291 * boot-9.scm (false-if-exception): Unquote catch and lambda, so as not
292 to depend on expansion environment.
293
96e3b2f8
MV
2942004-01-07 Marius Vollmer <marius.vollmer@uni-dortmund.de>
295
296 * boot-9.scm (with-fluids): Use with-fluid* when only one fluid is
297 being set.
298
524cbf64
KR
2992004-01-07 Kevin Ryde <user42@zip.com.au>
300
301 * q.scm (q-pop!): Should be "null?" not "not" for end-of-list.
302 Reported by Richard Todd.
303
6d611fed
KR
3042004-01-04 Kevin Ryde <user42@zip.com.au>
305
306 * boot-9.scm (false-if-exception): Unquote catch and lambda, so as not
307 to depend on expansion environment.
308
97ac013a
KR
309 * slib.scm (-1+, <?, <=?, =?, >?, >=?): Define as aliases for 1-, <,
310 <=, =, >, >= respectively, required by slib 'rev2-procedures but no
311 longer in the guile core.
312
64758fe2
NJ
3132003-11-19 Neil Jerram <neil@ossau.uklinux.net>
314
315 * boot-9.scm (error-catching-loop): Defer lookup of
316 lazy-handler-dispatch.
317
aff7e166
MV
3182003-11-17 Marius Vollmer <mvo@zagadka.de>
319
320 * boot-9.scm (@, @@): New macros.
321
37f5dfe5
DH
3222003-11-16 Dirk Herrmann <D.Herrmann@tu-bs.de>
323
324 * boot-9.scm: Started comment about module system workings.
325
3273abd2
NJ
3262003-11-11 Neil Jerram <neil@ossau.uklinux.net>
327
30d90280
NJ
328 * debugger.scm: Change ui-* calls to gds-*.
329 (debug-on-error): Debug if throw key is in specified syms, not if
330 it isn't! Also throw 'abort after debugging, so as to skip the
331 REPL's backtrace.
332
3273abd2
NJ
333 * debugger/behaviour.scm (*trap*): New variable, stores trap type.
334 (before-enter-frame-hook, before-apply-frame-hook,
335 before-exit-frame-hook): Set here.
336 (debug-if-flag-set): Passed into flags on debug-stack call.
337 (at-step, at-next): Changed to debug at frame exit points as well.
338
339 * debugger/utils.scm: Big comment added.
340
3412003-10-30 Neil Jerram <neil@ossau.uklinux.net>
342
343 * debugger/ui-client.scm: Moved to ../emacs/gds-client.scm.
344
9f1af5d9
NJ
3452003-10-16 Neil Jerram <neil@ossau.uklinux.net>
346
347 * debugger/ui-client.scm (ui-connect): Add arg to say whether to
348 debug immediately on connection.
349 (ui-eval): Handle exceptions during read and evaluation.
350
351 * debugger.scm (debug-on-error, default-default-lazy-handler):
352 Remove an unnecessary level of indirection in calling lazy
353 handler.
354
e2de682c
MV
3552003-10-12 Marius Vollmer <mvo@zagadka.de>
356
357 * ftw.scm (directory-files): Close dir-stream when done. Thanks
358 to Paul Jarc!
359
ff6ea7b9
KR
3602003-10-09 Kevin Ryde <user42@zip.com.au>
361
362 * poe.scm (funcq-assoc): Rewrite, don't assume '() is false, and
363 actually traverse the given alist.
364
41a80feb
NJ
3652003-10-06 Neil Jerram <neil@ossau.uklinux.net>
366
367 * debugger/ui-client.scm (handle-instruction): Add evaluation
368 support.
369 (ui-eval): New.
370
02b0c692
NJ
3712003-10-04 Neil Jerram <neil@ossau.uklinux.net>
372
373 * debugger/ui-client.scm (ui-disable-async-thread,
374 ui-continue-async-thread, start-async-ui-thread): New.
375 (ui-command-loop): Call ui-disable-async-thread and
376 ui-continue-async-thread.
377 (handle-instruction): Read terminating newline char so it doesn't
378 cause following select to pop immediately.
379
79b1c5b6
NJ
3802003-09-25 Neil Jerram <neil@ossau.uklinux.net>
381
382 * debugger/ui-client.scm, debugger/ui-server.scm: New (work in
383 progress on new debugging front end).
384
3852003-09-24 Neil Jerram <neil@ossau.uklinux.net>
386
387 * debugger.scm (default-default-lazy-handler, debug-on-error):
388 New.
389
390 * debugger/behaviour.scm (debug-if-flag-set): Display debug entry
391 messages through (debugger-output-port).
392 (after-exit-frame-hook): Trace through (debugger-output-port).
393 (trace-here): Trace through (debugger-output-port).
394
395 * debugger/commands.scm (evaluate): If supplied expression is a
396 string, read from it before evaluating.
397 (evaluate): Change output format to "EXPR => VALUE".
398
9b4bbf47
KR
3992003-09-19 Kevin Ryde <user42@zip.com.au>
400
401 * popen.scm (open-process): Correction to previous fdes closing
402 change, need to watch out for stdin==stderr or stdout==stderr.
403
5dc1ba73
MV
4042003-09-15 Marius Vollmer <mvo@zagadka.de>
405
406 * format.scm (format): Rewritten as a big letrec to make it
407 reentrant. No mutex is necessary. Thanks to Clinton Ebadi!
408
7743d628
KR
4092003-09-13 Kevin Ryde <user42@zip.com.au>
410
411 * boot-9.scm (file-exists?): Use stat rather than access?, so as to
412 follow the effective UID/GID not the real ID. file-exists? is
cd56b181 413 normally used as a prelude to opening or some other operation, and
7743d628
KR
414 it's the effective ID which will apply there. Emacs file-exists-p
415 uses stat, presumably for the the same reason.
416
50e0ba57
MV
4172003-09-12 Marius Vollmer <mvo@zagadka.de>
418
419 * boot-9.scm (make-autoload-interface): Use a proper hashtable as
420 the obarray, not an empty vector.
421 (make-module): Always construct a hashtable for the obarray, even
422 for empty ones.
423
424 * format.scm (format:error): Use 'format:format' instead of
425 'format' since the latter will lock the mutex again that we have
426 already locked.
427 (format:format-work): Flag multiple '#' as an error.
428
2388d9af
KR
4292003-08-17 Kevin Ryde <user42@zip.com.au>
430
431 * boot-9.scm (while): Use a new key dynamically for each loop, so
432 break and continue associate to their loop even when recursing.
433
d97f9b42
KR
4342003-08-14 Kevin Ryde <user42@zip.com.au>
435
436 * boot-9.scm (while): Rewrite, continue as proper escape, break
437 without return value, break and continue new for each while form,
438 don't depend on bindings in expansion environment.
439
440 * popen.scm (open-process): Close input-fdes, output-fdes and
441 error-fdes after duping them to 0, 1 and 2.
442
996acdb8
KR
4432003-06-19 Kevin Ryde <user42@zip.com.au>
444
445 * threads.scm (parallel): For no forms, use `(values)' not `(begin)'.
446
42ad901d
DH
4472003-05-27 Dirk Herrmann <D.Herrmann@tu-bs.de>
448
449 * boot-9.scm (make-autoload-interface): Added missing quote around
450 vector constant.
451
47dee228
MV
4522003-05-20 Marius Vollmer <marius.vollmer@uni-dortmund.de>
453
454 * deprecated.scm (list*): Added.
455
6cced6fe
KR
4562003-05-10 Kevin Ryde <user42@zip.com.au>
457
458 * documentation.scm (file-commentary, find-documentation-in-file): Use
459 call-with-input-file, to close ports when done.
460
1b965c29
MV
4612003-05-03 Marius Vollmer <mvo@zagadka.de>
462
d04229df
MV
463 * gap-buffer.scm (point++n!, point+-n!): Use substring-move!
464 instead of substring-move-left! or substring-move-right!. Thanks
465 to Kevin Ryde.
466
467 * deprecated.scm (substring-move-left!, substring-move-right!):
468 New.
469
0d5271a2 470 * boot-9.scm (display-usage-report): Use keyword->symbol instead
6aa536b3 471 of keyword-symbol, which doesn't exist. Thanks to Kevin Ryde.
0d5271a2 472
2b24a689
MV
473 * hcons.scm (hashq-cons-get-handle): Pass only the expected four
474 arguments to hashx-get-handle. Thanks to Kevin Ryde!
475
1b965c29
MV
476 * lineio.scm (make-line-buffering-input-port) Pass 0 as second
477 argument to string-ref. Thanks to Kevin Ryde!
478
56b97da9
MD
4792003-04-25 Mikael Djurfeldt <mdj@kvast.blakulla.net>
480
481 * serialize.scm: New file.
482
359aab24
MD
4832003-04-24 Mikael Djurfeldt <djurfeldt@nada.kth.se>
484
485 * threads.scm (n-for-each-par-map): New procedure.
486
fc87c27a
MV
4872003-04-05 Marius Vollmer <mvo@zagadka.de>
488
489 * Changed license terms to the plain LGPL thru-out.
490
bd40d420
MV
4912003-03-26 Marius Vollmer <marius.vollmer@uni-dortmund.de>
492
493 * deprecated.scm: New file, to collect deprecated things.
494 * Makefile.am (ice9_sources): Added.
495
496 * boot-9.scm: Load "ice-9/deprecated.scm" when appropriate.
497 (try-load-module): Also try the old deprecated method, maybe.
498
570b5b14
MV
4992003-03-22 Marius Vollmer <mvo@zagadka.de>
500
501 * boot-9.scm (call/cc): Added.
502
44876271
MD
5032003-03-20 Mikael Djurfeldt <djurfeldt@nada.kth.se>
504
505 * list.scm: New file.
506
b80e1b5c
MV
5072003-03-19 Marius Vollmer <mvo@zagadka.de>
508
509 * format.scm (format:out-substr): Update the column counter
510 correctly. This fixes the behavior of ~T (tabbing) after ~F, for
511 instance. Thanks to Matthias Koeppe!
512
3742da68
MD
5132003-03-13 Mikael Djurfeldt <djurfeldt@nada.kth.se>
514
515 * session.scm (apropos): Don't look in duplicates interface.
516
70a459e3
MD
5172003-03-12 Mikael Djurfeldt <djurfeldt@nada.kth.se>
518
65bed4aa
MD
519 * boot-9.scm (duplicate-handlers): Make sure the merge-generics
520 and merge-accessors handlers are available also before (oop goops)
521 has been loaded. This is so that people can put them as default
522 handlers without worrying about availability.
523
3802f9cc
MD
524 * slib.scm (logical:ipow-by-squaring): Removed.
525
fe6ee052
MD
526 * boot-9.scm (ipow-by-squaring): Removed.
527 (default-duplicate-binding-handler): Set default to
6496a663 528 '(replace warn-override-core warn last)
fe6ee052 529
d57da08b
MD
530 * boot-9.scm (module-make-local-var!): Use module-add!.
531 (module-primitive-add!): New function.
532 (resolve-interface): Use
533 (call-with-deferred-observers, module-call-observers): New
534 functions.
535 (module-defer-observers, module-defer-observers-mute,
536 module-defer-observers-table): New variables.
537 (process-define-module, process-use-modules, export, re-export):
538 Use call-with-deferred-observers.
8d8dac1f
MD
539 (module-duplicates-info, set-module-duplicates-info!): Removed.
540 (module-duplicates-handlers, module-duplicates-interface): New.
541 (module-type): Added duplicates-handlers and
542 duplicates-interface.
d57da08b
MD
543
544 * syncase.scm (eval): Mark as replacement.
545
546 * boot-9.scm (defmacro-public): Use export-syntax instead of export.
547
70a459e3
MD
548 * slib.scm (*features*): Set the core variable instead of defining
549 a local version.
550 (provide, provided?): Mark as replacements.
551
552 * boot-9.scm (beautify-user-module!): Don't install the duplicates
553 handler here.
554 (default-duplicate-binding-handler): Renamed from
555 default-module-duplicates-handler; Removed converter.
556 (process-duplicates): Lookup default duplicates handler dynamically.
557 (default-duplicate-binding-procedures): New parameter.
558
509a787a
MD
5592003-03-12 Mikael Djurfeldt <mdj@kvast.blakulla.net>
560
561 * slib.scm (identity): Removed. (Provided by core.)
562
f595ccfe
MD
5632003-03-11 Mikael Djurfeldt <djurfeldt@nada.kth.se>
564
c614a00b
MD
565 * debugger/command-loop.scm: Prefix all commands imported from
566 (ice-9 debugger command-loop) with debugger:.
567
109c2c9f
MD
568 * boot-9.scm (process-duplicates): Use module-import-interface.
569 (module-symbol-interface): Removed.
c614a00b
MD
570 (resolve-interface): Process #:hide; Name custom interfaces
571 appropriately.
572 (module-use!, module-use-interfaces!): Remove existing interfaces
573 on the use-list based on module name rather than interface
574 identity so that custom interfaces truly replaces their previous
575 version.
109c2c9f 576
f595ccfe
MD
577 * boot-9.scm (module-override!, make-mutable-parameter,
578 lookup-duplicates-handlers, default-module-duplicates-handler):
579 New functions.
580 (process-duplicates): Don't call duplicates handlers for duplicate
581 bindings of the same variable.
582 (process-define-module): Process #:replace.
583 (compile-interface-spec, resolve-interface): Process #:prefix.
584
585 * format.scm (format): Marked as replacement.
586
587 * threads.scm (future, future-ref): Marked as replacements.
588
7b07e5ef
MD
5892003-03-07 Mikael Djurfeldt <djurfeldt@nada.kth.se>
590
591 These changes enables checking for duplicate imported bindings.
592
593 * boot-9.scm (process-define-module): Handle #:duplicates.
594 (module-use-interfaces! process-duplicates): New functions.
595 (duplicate-handlers): Dictionary of duplicate handlers.
596 (module-symbol-local-binding, module-symbol-binding): Bugfix.
597
1798b73d
MD
5982003-03-04 Mikael Djurfeldt <djurfeldt@nada.kth.se>
599
600 * session.scm (apropos): Use hash-for-each instead of
601 array-for-each.
602
c35738c1
MD
6032003-02-19 Mikael Djurfeldt <djurfeldt@nada.kth.se>
604
231a4ea8
MD
605 * boot-9.scm (make-module): Changed default size from 1021 to 31
606 (since the size now adapts).
607 (macro-table, xformer-table): Changed default size from 523 to 61.
608 (make-module): Don't call make-hash-table with zero size.
609
c35738c1
MD
610 * Makefile.am (ice9_sources): Added weak-vector.scm.
611
612 * weak-vector.scm: New file.
613
614 * boot-9.scm (module-clear!): Use hash-clear!.
615 (module-for-each): Use hash-for-each.
616 (module-map): Use hash-map.
617
f59a096e
MD
6182003-02-11 Mikael Djurfeldt <djurfeldt@nada.kth.se>
619
620 * boot-9.scm (make-hash-table): Turned primitive.
621
e963ac2c
MD
6222003-01-27 Mikael Djurfeldt <djurfeldt@nada.kth.se>
623
624 * syncase.scm (guile-macro): Strip syntactic information from
625 expression before trying to treat it as a Guile macro call.
626 (Thanks to Kevin Ryde.)
627
c2950e36
MD
6282003-01-24 Mikael Djurfeldt <djurfeldt@nada.kth.se>
629
630 * threads.scm (parallel, letpar): Rewritten.
631
f4719f31
MD
6322003-01-23 Mikael Djurfeldt <djurfeldt@nada.kth.se>
633
634 * threads.scm (par-mapper, n-par-map, n-par-for-each): Use
635 futures.
636
93f26b7b
MD
6372003-01-20 Mikael Djurfeldt <djurfeldt@nada.kth.se>
638
51407fa0
MD
639 * occam-channel.scm (alt): New syntax.
640
93f26b7b
MD
641 * psyntax.ss (self-evaluating?): Removed. Guile now provides this
642 operator as a primitive procedure.
643 (build-data): Quote vectors (psyntax.ss requires this).
644
6452003-01-19 Mikael Djurfeldt <djurfeldt@nada.kth.se>
646
647 * psyntax.ss (self-evaluating?): Allow procedures implanted in
648 source. (Guile uses this internally.)
649
80f225df
MD
6502003-01-16 Mikael Djurfeldt <djurfeldt@nada.kth.se>
651
652 * psyntax.ss (build-data): Don't quote self-evaluating expressions
653 in output. (We normally *would* like also these expressions to be
654 quoted, but until Guile's native macros and syncase cooperates
655 better, it is less destructive not to quote.)
656 (self-evaluating?): Removed null? (In Guile, the empty list is not
657 self-evaluating).
658 (sc-chi): Export chi as sc-chi.
659 (external-macro): New syntax type.
660
661 * psyntax.pp: Regenerated.
662
663 * compile-psyntax.scm: Set expansion-eval-closure.
7906d57d 664
cf743aea
MD
665 * boot-9.scm (use-syntax): Return *unspecified*.
666
7906d57d
MD
667 * syncase.scm: Set expansion-eval-closure to
668 the-syncase-eval-closure during booting so that variables are
cf743aea
MD
669 created in the correct module.
670 (syncase): Set expansion-eval-closure.
7906d57d
MD
671 (define-syntax define-syntax-public eval-when fluid-let-syntax
672 identifier-syntax let-syntax letrec-syntax syntax syntax-case
673 syntax-rules with-syntax include): Removed definitions (these are
674 created from within psyntax.pp).
80f225df
MD
675 Enable expansion of Guile macros during a syntax-case
676 transformation.
cf743aea 677
60eefd9c
MD
6782003-01-10 Mikael Djurfeldt <djurfeldt@nada.kth.se>
679
8411a446 680 * occam-channel.scm (make-channel): Renamed from channel.
fb831451 681 (make-timer): New function.
8411a446 682
60eefd9c
MD
683 * Makefile.am (ice9_sources): Added occam-channel.scm.
684
685 * occam-channel.scm: New file. Implements occam-like channels.
686
db853761
NJ
6872002-12-28 Neil Jerram <neil@ossau.uklinux.net>
688
689 * boot-9.scm (module-defined-hook): New hook, run whenever a new
690 module is defined.
691 (process-define-module): Run this hook.
692
62d4fd94
MD
6932002-12-18 Mikael Djurfeldt <mdj@kvast.blakulla.net>
694
695 * threads.scm: Removed bogus definition of future-ref.
696
87623595
MD
6972002-12-15 Mikael Djurfeldt <djurfeldt@nada.kth.se>
698
699 * threads.scm (par-map, par-for-each): Reimplemented using
700 joing-thread.
701 (parallel): Reimplemented using futures.
702 (n-par-map, n-for-each): New procedures.
703
edeea67b
MV
7042002-12-12 Marius Vollmer <mvo@zagadka.ping.de>
705
706 * optargs.scm (improper-list-copy): New.
707 (parse-arglist): Use it instead of list-copy.
708
fc85d095
MD
7092002-12-09 Mikael Djurfeldt <djurfeldt@nada.kth.se>
710
711 * threads.scm (letpar): New macro.
712
b2cbe8d8
RB
7132002-12-08 Rob Browning <rlb@defaultvalue.org>
714
715 * debugger/breakpoints/Makefile.am (subpkgdatadir): VERSION ->
716 GUILE_EFFECTIVE_VERSION.
717
718 * debugger/Makefile.am (subpkgdatadir): VERSION ->
719 GUILE_EFFECTIVE_VERSION.
720
721 * Makefile.am (subpkgdatadir): VERSION -> GUILE_EFFECTIVE_VERSION.
722
abce330c
MD
7232002-12-04 Mikael Djurfeldt <mdj@linnaeus>
724
fc85d095
MD
725 * threads.scm (parallel): New macro.
726 (par-map, par-for-each): New procedures.
abce330c
MD
727
728 * documentation.scm (object-documentation): Added support for
729 defmacros.
730
f2cbc0e5
DH
7312002-11-24 Dirk Herrmann <D.Herrmann@tu-bs.de>
732
733 * boot-9.scm (re-export-syntax): Re-introduced after accidentally
734 removing it in my patch from 2002-11-16.
735
9123414e
DH
7362002-11-24 Dirk Herrmann <D.Herrmann@tu-bs.de>
737
738 Thanks to Mikael Djurfeldt for a bugreport which led to the
739 following changes:
740
741 * slib.scm (%system-define): Removed.
742
743 (define): Changed to use define-private instead of
744 %system-define.
745
746 * boot-9.scm (define-private): Undid my changes from 2002-11-16
747 until Guile supports hygienic macros.
748
50a63003
NJ
7492002-11-17 Neil Jerram <neil@ossau.uklinux.net>
750
751 * emacs.scm (emacs-load): Locally define `read-and-eval!', as it
752 has been removed from the core.
753
c55bcb32
DH
7542002-11-16 Dirk Herrmann <D.Herrmann@tu-bs.de>
755
756 * syncase.scm (define-syntax, eval-when, fluid-let-syntax,
757 identifier-syntax, let-syntax, letrec-syntax, syntax, syntax-case,
758 syntax-rules, with-syntax, include): Changed definitions to form
759 'real' macro definitions.
760
6aa9ea7c
DH
7612002-11-16 Dirk Herrmann <D.Herrmann@tu-bs.de>
762
763 * boot-9.scm (define-private, export-syntax, export-syntax):
764 Fixed my previous fix (blush).
765
ab382f52
DH
7662002-11-16 Dirk Herrmann <D.Herrmann@tu-bs.de>
767
768 * boot-9.scm (define-private, export-syntax, export-syntax):
769 Changed definitions to form 'real' macro definitions.
770
81cf290d
MV
7712002-11-07 Marius Vollmer <marius.vollmer@uni-dortmund.de>
772
773 * format.scm (format): Use 'monitor' properly. Not the definition
774 needs to be restricted, the actual function needs to be.
775
3f619266
NJ
7762002-11-05 Neil Jerram <neil@ossau.uklinux.net>
777
778 * boot-9.scm (define-option-interface): Fix to "simplification"
779 change below.
780
781 * debugger/breakpoints/source.scm: Enable source property
782 recording when module is loaded.
783 (##): Cope with ports whose `filename' is not a string.
784
9124ba8d
NJ
7852002-11-04 Neil Jerram <neil@ossau.uklinux.net>
786
0983f67f
NJ
787 * boot-9.scm (define-option-interface): Simplify code-generation
788 code.
789
9124ba8d
NJ
790 * debugger/command-loop.scm (read-and-dispatch-command): Import
791 set-readline-prompt dynamically if we need to. (Previous
792 arrangement didn't work if this module was loaded before (ice-9
793 readline).)
794
eb2c5dcb
MV
7952002-11-03 Marius Vollmer <mvo@zagadka.ping.de>
796
797 * format.scm (format): Wrap a monitor around format:format since
798 it is not thread-safe.
799
132fe7af
MV
8002002-10-27 Marius Vollmer <mvo@zagadka.ping.de>
801
802 * threads.scm (%thread-handler): Explicitely return '#f'. This
803 value will be returned by join-thread.
804
8ee7506b
NJ
8052002-10-26 Neil Jerram <neil@ossau.uklinux.net>
806
807 Merging debugger enhancements previously in separate
808 `guile-debugger' package ...
809
810 * debugger.scm: Factored out into the following constituent parts
811 - see comment in file for more details.
812 (*not-yet-introduced*): New (avoids repeatedly introducing the
813 debugger when entering it from breakpoints).
814 (debug-stack): New.
815 (debug): Rewrite to use more general `debug-stack'.
816
817 * debugger/commands.scm, debugger/command-loop.scm,
818 debugger/state.scm, debugger/utils.scm: New files containing bits
819 of old (ice-9 debugger), plus some rewriting and enhancements for
820 breakpoint support ...
821
822 * debugger/state.scm (state-rtd): Add flags field.
823 (make-state): Extend to optionally take flags.
824 (state-flags): New, accessor for flags field.
825 (set-state-index!, set-stack-index!): New.
826 (write-state-short): Rewritten to print out the current source
827 location in a way that is more easily trackable by Emacs.
828
829 * debugger/commands.scm (assert-continuable, continue, finish,
830 trace-finish, step, next): New debugger commands for continuing
831 execution from a breakpoint.
832
833 * debugger/behaviour.scm, debugger/breakpoints.scm,
834 debugger/breakpoints/procedural.scm,
835 debugger/breakpoints/range.scm, debugger/breakpoints/source.scm,
836 debugger/trap-hooks.scm, debugger/trc.scm: New files - breakpoint
837 support.
838
839 * Makefile.am (SUBDIRS): Add debugger subdirectory.
840
841 * debugger/Makefile.am, debugger/breakpoints/Makefile.am: New.
842
03453b05
MV
8432002-10-21 Marius Vollmer <mvo@zagadka.ping.de>
844
845 * threads.scm (%thread-handler): Do not call unmask-signals, that
846 should be unnecessary now.
847
a7785f36
MD
8482002-10-20 Mikael Djurfeldt <mdj@linnaeus>
849
850 * boot-9.scm (top-repl): Look for use-emacs-interface in
851 guile-user-module (should it be there?) instead of
852 the-root-module.
853
acfa1f52
MV
8542002-10-10 Marius Vollmer <mvo@zagadka.ping.de>
855
856 * boot-9.scm (top-repl): Use 2 as the limit when saving the stack.
857 (error-catching-loop): use call-with-blocked-asyncs and
858 call-with-unblocked-asyncs instead of mask-signals and
859 unmask-signals.
860
34010f56
NJ
8612002-10-09 Neil Jerram <neil@ossau.uklinux.net>
862
863 * buffered-input.scm (make-buffered-input-port): Build an
864 input-waiting thunk for just extended version of make-soft-port.
865
9bc54879
RB
8662002-10-04 Rob Browning <rlb@defaultvalue.org>
867
868 * boot-9.scm (expt): switch if sense and use negative? rather than
869 >= 0.
870
3538c2b2
MV
8712002-10-04 Marius Vollmer <mvo@zagadka.ping.de>
872
873 * boot-9.scm (top-repl): Use "1" instead of "%deliver-signals" to
874 limit the signal stack.
875
f4232aa6
MV
8762002-09-15 Marius Vollmer <mvo@zagadka.ping.de>
877
878 * boot-9.scm (feature?): Added deprecation message.
879
5fc0857e
RB
8802002-09-14 Rob Browning <rlb@defaultvalue.org>
881
882 * boot-9.scm (sqrt): minor indentation fix.
883
cfcdb8e9
MV
8842002-09-05 Marius Vollmer <mvo@zagadka.ping.de>
885
886 * syncase.scm: Set the module transformer of the-syncase-module so
887 that we can use define-syntax.
888 (define-syntax-public): New and exported.
889
8902002-09-04 Marius Vollmer <mvo@zagadka.ping.de>
891
892 * syncase.scm (expansion-eval-closure, env->eval-closure): New.
893 (sc-macro): Set the expansion-eval-closure expanding the form.
894 (putprop, getprop): Use the expansion-eval-closure to find
895 variables instead of the current module.
896
fdf7e1d7
MV
8972002-07-08 Marius Vollmer <mvo@zagadka.ping.de>
898
899 * slib.scm (make-exchanger): Added. Thanks to Clinton Ebadi!
900
7c38399f
DH
9012002-07-07 Dirk Herrmann <D.Herrmann@tu-bs.de>
902
903 * boot-9.scm (define-option-interface): Replaced "macro" by
904 mmacro.
905
1334c61a
GH
9062002-06-01 Gary Houston <ghouston@arglist.com>
907
908 * boot-9.scm (file-set-position): Make third argument optional,
909 for SCM compatibility.
910 (file-position): simplify definition.
911
be87cdb7
MV
9122002-06-01 Marius Vollmer <mvo@zagadka.ping.de>
913
914 * boot-9.scm (file-set-position): Use seek instead of fseek.
915
e717bf46
MV
9162002-05-09 Marius Vollmer <mvo@zagadka.ping.de>
917
918 * format.scm (format:out-inf-nan): New.
919 (format:out-fixed, format:out-expon, format:out-general): Use it
920 to print infs and nans.
921
922 * boot-9.scm (unsetenv): New, for completeness.
923
9ea4ac37
MV
9242002-05-08 Marius Vollmer <mvo@zagadka.ping.de>
925
926 * format.scm (format:fn-max): Increase to 400 so ~f and ~g can
927 print long real numbers with large positive and negative
928 exponents.
929
45845efe
MV
9302002-05-06 Marius Vollmer <mvo@zagadka.ping.de>
931
932 * syncase.scm: Use (ice-9 threads) so that with-mutex is defined.
933
0bd1b44f
TTN
9342002-04-30 Thien-Thi Nguyen <ttn@giblet.glug.org>
935
936 * gap-buffer.scm: New file.
937
938 * Makefile.am (ice9_sources): Add gap-buffer.scm.
939
c87af2d5
RB
9402002-03-12 Rob Browning <rlb@defaultvalue.org>
941
942 * syncase.scm: fix bad let.
943 (gensym): fix failure on non-threaded
944
6c5b8521
TTN
9452002-03-05 Thien-Thi Nguyen <ttn@giblet.glug.org>
946
947 * ftw.scm: New file.
948
949 * Makefile.am (ice9_sources): Add ftw.scm.
950
327d4dd3
TTN
9512002-02-26 Thien-Thi Nguyen <ttn@giblet.glug.org>
952
953 * Makefile.am: Update path to pre-inst-guile automake frag.
954
d51b42e2
TTN
955 * boot-9.scm: Comment grammar fixes; nfc.
956 Thanks to Christopher Cramer.
957
46151112
RB
9582002-02-24 Rob Browning <rlb@defaultvalue.org>
959
960 * syncase.scm (gensym): redefine locally so we can control it's
961 properties. This is in preparation for changing the future public
962 gensym to produce unreadable symbols.
963
964 * psyntax.pp: updated to reflect new syncase.scm.
965
90d4a6b0
TTN
9662002-02-07 Thien-Thi Nguyen <ttn@giblet.glug.org>
967
968 * regex.scm: Add commentary; nfc.
969
0187b4f4
TTN
9702002-02-05 Thien-Thi Nguyen <ttn@giblet.glug.org>
971
972 * Makefile.am: Include $(top_srcdir)/pre-inst-guile.am.
973
974 (psyntax.pp): Use $(preinstguile).
975
dd580bd6
MV
9762002-01-14 Marius Vollmer <mvo@zagadka.ping.de>
977
978 * psyntax.ss (datum->syntax-object): Removed assertion in
979 datum->syntax-object that checked if the first argument, a
980 syntax-object, is an identifier. This was a unconvenient and
981 unnecessary restriction. Thanks to Dorai Sitaram!
982
0e6f7775
MV
9832002-01-12 Marius Vollmer <mvo@zagadka.ping.de>
984
985