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