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