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