(file-commentary, find-documentation-in-file): Use
[bpt/guile.git] / ice-9 / ChangeLog
CommitLineData
1b965c29
MV
12003-05-03 Marius Vollmer <mvo@zagadka.de>
2
d04229df
MV
3 * gap-buffer.scm (point++n!, point+-n!): Use substring-move!
4 instead of substring-move-left! or substring-move-right!. Thanks
5 to Kevin Ryde.
6
7 * deprecated.scm (substring-move-left!, substring-move-right!):
8 New.
9
0d5271a2 10 * boot-9.scm (display-usage-report): Use keyword->symbol instead
6aa536b3 11 of keyword-symbol, which doesn't exist. Thanks to Kevin Ryde.
0d5271a2 12
2b24a689
MV
13 * hcons.scm (hashq-cons-get-handle): Pass only the expected four
14 arguments to hashx-get-handle. Thanks to Kevin Ryde!
15
1b965c29
MV
16 * lineio.scm (make-line-buffering-input-port) Pass 0 as second
17 argument to string-ref. Thanks to Kevin Ryde!
18
56b97da9
MD
192003-04-25 Mikael Djurfeldt <mdj@kvast.blakulla.net>
20
21 * serialize.scm: New file.
22
359aab24
MD
232003-04-24 Mikael Djurfeldt <djurfeldt@nada.kth.se>
24
25 * threads.scm (n-for-each-par-map): New procedure.
26
fc87c27a
MV
272003-04-05 Marius Vollmer <mvo@zagadka.de>
28
29 * Changed license terms to the plain LGPL thru-out.
30
bd40d420
MV
312003-03-26 Marius Vollmer <marius.vollmer@uni-dortmund.de>
32
33 * deprecated.scm: New file, to collect deprecated things.
34 * Makefile.am (ice9_sources): Added.
35
36 * boot-9.scm: Load "ice-9/deprecated.scm" when appropriate.
37 (try-load-module): Also try the old deprecated method, maybe.
38
570b5b14
MV
392003-03-22 Marius Vollmer <mvo@zagadka.de>
40
41 * boot-9.scm (call/cc): Added.
42
44876271
MD
432003-03-20 Mikael Djurfeldt <djurfeldt@nada.kth.se>
44
45 * list.scm: New file.
46
b80e1b5c
MV
472003-03-19 Marius Vollmer <mvo@zagadka.de>
48
49 * format.scm (format:out-substr): Update the column counter
50 correctly. This fixes the behavior of ~T (tabbing) after ~F, for
51 instance. Thanks to Matthias Koeppe!
52
3742da68
MD
532003-03-13 Mikael Djurfeldt <djurfeldt@nada.kth.se>
54
55 * session.scm (apropos): Don't look in duplicates interface.
56
70a459e3
MD
572003-03-12 Mikael Djurfeldt <djurfeldt@nada.kth.se>
58
65bed4aa
MD
59 * boot-9.scm (duplicate-handlers): Make sure the merge-generics
60 and merge-accessors handlers are available also before (oop goops)
61 has been loaded. This is so that people can put them as default
62 handlers without worrying about availability.
63
3802f9cc
MD
64 * slib.scm (logical:ipow-by-squaring): Removed.
65
fe6ee052
MD
66 * boot-9.scm (ipow-by-squaring): Removed.
67 (default-duplicate-binding-handler): Set default to
6496a663 68 '(replace warn-override-core warn last)
fe6ee052 69
d57da08b
MD
70 * boot-9.scm (module-make-local-var!): Use module-add!.
71 (module-primitive-add!): New function.
72 (resolve-interface): Use
73 (call-with-deferred-observers, module-call-observers): New
74 functions.
75 (module-defer-observers, module-defer-observers-mute,
76 module-defer-observers-table): New variables.
77 (process-define-module, process-use-modules, export, re-export):
78 Use call-with-deferred-observers.
8d8dac1f
MD
79 (module-duplicates-info, set-module-duplicates-info!): Removed.
80 (module-duplicates-handlers, module-duplicates-interface): New.
81 (module-type): Added duplicates-handlers and
82 duplicates-interface.
d57da08b
MD
83
84 * syncase.scm (eval): Mark as replacement.
85
86 * boot-9.scm (defmacro-public): Use export-syntax instead of export.
87
70a459e3
MD
88 * slib.scm (*features*): Set the core variable instead of defining
89 a local version.
90 (provide, provided?): Mark as replacements.
91
92 * boot-9.scm (beautify-user-module!): Don't install the duplicates
93 handler here.
94 (default-duplicate-binding-handler): Renamed from
95 default-module-duplicates-handler; Removed converter.
96 (process-duplicates): Lookup default duplicates handler dynamically.
97 (default-duplicate-binding-procedures): New parameter.
98
509a787a
MD
992003-03-12 Mikael Djurfeldt <mdj@kvast.blakulla.net>
100
101 * slib.scm (identity): Removed. (Provided by core.)
102
f595ccfe
MD
1032003-03-11 Mikael Djurfeldt <djurfeldt@nada.kth.se>
104
c614a00b
MD
105 * debugger/command-loop.scm: Prefix all commands imported from
106 (ice-9 debugger command-loop) with debugger:.
107
109c2c9f
MD
108 * boot-9.scm (process-duplicates): Use module-import-interface.
109 (module-symbol-interface): Removed.
c614a00b
MD
110 (resolve-interface): Process #:hide; Name custom interfaces
111 appropriately.
112 (module-use!, module-use-interfaces!): Remove existing interfaces
113 on the use-list based on module name rather than interface
114 identity so that custom interfaces truly replaces their previous
115 version.
109c2c9f 116
f595ccfe
MD
117 * boot-9.scm (module-override!, make-mutable-parameter,
118 lookup-duplicates-handlers, default-module-duplicates-handler):
119 New functions.
120 (process-duplicates): Don't call duplicates handlers for duplicate
121 bindings of the same variable.
122 (process-define-module): Process #:replace.
123 (compile-interface-spec, resolve-interface): Process #:prefix.
124
125 * format.scm (format): Marked as replacement.
126
127 * threads.scm (future, future-ref): Marked as replacements.
128
7b07e5ef
MD
1292003-03-07 Mikael Djurfeldt <djurfeldt@nada.kth.se>
130
131 These changes enables checking for duplicate imported bindings.
132
133 * boot-9.scm (process-define-module): Handle #:duplicates.
134 (module-use-interfaces! process-duplicates): New functions.
135 (duplicate-handlers): Dictionary of duplicate handlers.
136 (module-symbol-local-binding, module-symbol-binding): Bugfix.
137
1798b73d
MD
1382003-03-04 Mikael Djurfeldt <djurfeldt@nada.kth.se>
139
140 * session.scm (apropos): Use hash-for-each instead of
141 array-for-each.
142
c35738c1
MD
1432003-02-19 Mikael Djurfeldt <djurfeldt@nada.kth.se>
144
231a4ea8
MD
145 * boot-9.scm (make-module): Changed default size from 1021 to 31
146 (since the size now adapts).
147 (macro-table, xformer-table): Changed default size from 523 to 61.
148 (make-module): Don't call make-hash-table with zero size.
149
c35738c1
MD
150 * Makefile.am (ice9_sources): Added weak-vector.scm.
151
152 * weak-vector.scm: New file.
153
154 * boot-9.scm (module-clear!): Use hash-clear!.
155 (module-for-each): Use hash-for-each.
156 (module-map): Use hash-map.
157
f59a096e
MD
1582003-02-11 Mikael Djurfeldt <djurfeldt@nada.kth.se>
159
160 * boot-9.scm (make-hash-table): Turned primitive.
161
e963ac2c
MD
1622003-01-27 Mikael Djurfeldt <djurfeldt@nada.kth.se>
163
164 * syncase.scm (guile-macro): Strip syntactic information from
165 expression before trying to treat it as a Guile macro call.
166 (Thanks to Kevin Ryde.)
167
c2950e36
MD
1682003-01-24 Mikael Djurfeldt <djurfeldt@nada.kth.se>
169
170 * threads.scm (parallel, letpar): Rewritten.
171
f4719f31
MD
1722003-01-23 Mikael Djurfeldt <djurfeldt@nada.kth.se>
173
174 * threads.scm (par-mapper, n-par-map, n-par-for-each): Use
175 futures.
176
93f26b7b
MD
1772003-01-20 Mikael Djurfeldt <djurfeldt@nada.kth.se>
178
51407fa0
MD
179 * occam-channel.scm (alt): New syntax.
180
93f26b7b
MD
181 * psyntax.ss (self-evaluating?): Removed. Guile now provides this
182 operator as a primitive procedure.
183 (build-data): Quote vectors (psyntax.ss requires this).
184
1852003-01-19 Mikael Djurfeldt <djurfeldt@nada.kth.se>
186
187 * psyntax.ss (self-evaluating?): Allow procedures implanted in
188 source. (Guile uses this internally.)
189
80f225df
MD
1902003-01-16 Mikael Djurfeldt <djurfeldt@nada.kth.se>
191
192 * psyntax.ss (build-data): Don't quote self-evaluating expressions
193 in output. (We normally *would* like also these expressions to be
194 quoted, but until Guile's native macros and syncase cooperates
195 better, it is less destructive not to quote.)
196 (self-evaluating?): Removed null? (In Guile, the empty list is not
197 self-evaluating).
198 (sc-chi): Export chi as sc-chi.
199 (external-macro): New syntax type.
200
201 * psyntax.pp: Regenerated.
202
203 * compile-psyntax.scm: Set expansion-eval-closure.
7906d57d 204
cf743aea
MD
205 * boot-9.scm (use-syntax): Return *unspecified*.
206
7906d57d
MD
207 * syncase.scm: Set expansion-eval-closure to
208 the-syncase-eval-closure during booting so that variables are
cf743aea
MD
209 created in the correct module.
210 (syncase): Set expansion-eval-closure.
7906d57d
MD
211 (define-syntax define-syntax-public eval-when fluid-let-syntax
212 identifier-syntax let-syntax letrec-syntax syntax syntax-case
213 syntax-rules with-syntax include): Removed definitions (these are
214 created from within psyntax.pp).
80f225df
MD
215 Enable expansion of Guile macros during a syntax-case
216 transformation.
cf743aea 217
60eefd9c
MD
2182003-01-10 Mikael Djurfeldt <djurfeldt@nada.kth.se>
219
8411a446 220 * occam-channel.scm (make-channel): Renamed from channel.
fb831451 221 (make-timer): New function.
8411a446 222
60eefd9c
MD
223 * Makefile.am (ice9_sources): Added occam-channel.scm.
224
225 * occam-channel.scm: New file. Implements occam-like channels.
226
db853761
NJ
2272002-12-28 Neil Jerram <neil@ossau.uklinux.net>
228
229 * boot-9.scm (module-defined-hook): New hook, run whenever a new
230 module is defined.
231 (process-define-module): Run this hook.
232
62d4fd94
MD
2332002-12-18 Mikael Djurfeldt <mdj@kvast.blakulla.net>
234
235 * threads.scm: Removed bogus definition of future-ref.
236
87623595
MD
2372002-12-15 Mikael Djurfeldt <djurfeldt@nada.kth.se>
238
239 * threads.scm (par-map, par-for-each): Reimplemented using
240 joing-thread.
241 (parallel): Reimplemented using futures.
242 (n-par-map, n-for-each): New procedures.
243
edeea67b
MV
2442002-12-12 Marius Vollmer <mvo@zagadka.ping.de>
245
246 * optargs.scm (improper-list-copy): New.
247 (parse-arglist): Use it instead of list-copy.
248
fc85d095
MD
2492002-12-09 Mikael Djurfeldt <djurfeldt@nada.kth.se>
250
251 * threads.scm (letpar): New macro.
252
b2cbe8d8
RB
2532002-12-08 Rob Browning <rlb@defaultvalue.org>
254
255 * debugger/breakpoints/Makefile.am (subpkgdatadir): VERSION ->
256 GUILE_EFFECTIVE_VERSION.
257
258 * debugger/Makefile.am (subpkgdatadir): VERSION ->
259 GUILE_EFFECTIVE_VERSION.
260
261 * Makefile.am (subpkgdatadir): VERSION -> GUILE_EFFECTIVE_VERSION.
262
abce330c
MD
2632002-12-04 Mikael Djurfeldt <mdj@linnaeus>
264
fc85d095
MD
265 * threads.scm (parallel): New macro.
266 (par-map, par-for-each): New procedures.
abce330c
MD
267
268 * documentation.scm (object-documentation): Added support for
269 defmacros.
270
f2cbc0e5
DH
2712002-11-24 Dirk Herrmann <D.Herrmann@tu-bs.de>
272
273 * boot-9.scm (re-export-syntax): Re-introduced after accidentally
274 removing it in my patch from 2002-11-16.
275
9123414e
DH
2762002-11-24 Dirk Herrmann <D.Herrmann@tu-bs.de>
277
278 Thanks to Mikael Djurfeldt for a bugreport which led to the
279 following changes:
280
281 * slib.scm (%system-define): Removed.
282
283 (define): Changed to use define-private instead of
284 %system-define.
285
286 * boot-9.scm (define-private): Undid my changes from 2002-11-16
287 until Guile supports hygienic macros.
288
50a63003
NJ
2892002-11-17 Neil Jerram <neil@ossau.uklinux.net>
290
291 * emacs.scm (emacs-load): Locally define `read-and-eval!', as it
292 has been removed from the core.
293
c55bcb32
DH
2942002-11-16 Dirk Herrmann <D.Herrmann@tu-bs.de>
295
296 * syncase.scm (define-syntax, eval-when, fluid-let-syntax,
297 identifier-syntax, let-syntax, letrec-syntax, syntax, syntax-case,
298 syntax-rules, with-syntax, include): Changed definitions to form
299 'real' macro definitions.
300
6aa9ea7c
DH
3012002-11-16 Dirk Herrmann <D.Herrmann@tu-bs.de>
302
303 * boot-9.scm (define-private, export-syntax, export-syntax):
304 Fixed my previous fix (blush).
305
ab382f52
DH
3062002-11-16 Dirk Herrmann <D.Herrmann@tu-bs.de>
307
308 * boot-9.scm (define-private, export-syntax, export-syntax):
309 Changed definitions to form 'real' macro definitions.
310
81cf290d
MV
3112002-11-07 Marius Vollmer <marius.vollmer@uni-dortmund.de>
312
313 * format.scm (format): Use 'monitor' properly. Not the definition
314 needs to be restricted, the actual function needs to be.
315
3f619266
NJ
3162002-11-05 Neil Jerram <neil@ossau.uklinux.net>
317
318 * boot-9.scm (define-option-interface): Fix to "simplification"
319 change below.
320
321 * debugger/breakpoints/source.scm: Enable source property
322 recording when module is loaded.
323 (##): Cope with ports whose `filename' is not a string.
324
9124ba8d
NJ
3252002-11-04 Neil Jerram <neil@ossau.uklinux.net>
326
0983f67f
NJ
327 * boot-9.scm (define-option-interface): Simplify code-generation
328 code.
329
9124ba8d
NJ
330 * debugger/command-loop.scm (read-and-dispatch-command): Import
331 set-readline-prompt dynamically if we need to. (Previous
332 arrangement didn't work if this module was loaded before (ice-9
333 readline).)
334
eb2c5dcb
MV
3352002-11-03 Marius Vollmer <mvo@zagadka.ping.de>
336
337 * format.scm (format): Wrap a monitor around format:format since
338 it is not thread-safe.
339
132fe7af
MV
3402002-10-27 Marius Vollmer <mvo@zagadka.ping.de>
341
342 * threads.scm (%thread-handler): Explicitely return '#f'. This
343 value will be returned by join-thread.
344
8ee7506b
NJ
3452002-10-26 Neil Jerram <neil@ossau.uklinux.net>
346
347 Merging debugger enhancements previously in separate
348 `guile-debugger' package ...
349
350 * debugger.scm: Factored out into the following constituent parts
351 - see comment in file for more details.
352 (*not-yet-introduced*): New (avoids repeatedly introducing the
353 debugger when entering it from breakpoints).
354 (debug-stack): New.
355 (debug): Rewrite to use more general `debug-stack'.
356
357 * debugger/commands.scm, debugger/command-loop.scm,
358 debugger/state.scm, debugger/utils.scm: New files containing bits
359 of old (ice-9 debugger), plus some rewriting and enhancements for
360 breakpoint support ...
361
362 * debugger/state.scm (state-rtd): Add flags field.
363 (make-state): Extend to optionally take flags.
364 (state-flags): New, accessor for flags field.
365 (set-state-index!, set-stack-index!): New.
366 (write-state-short): Rewritten to print out the current source
367 location in a way that is more easily trackable by Emacs.
368
369 * debugger/commands.scm (assert-continuable, continue, finish,
370 trace-finish, step, next): New debugger commands for continuing
371 execution from a breakpoint.
372
373 * debugger/behaviour.scm, debugger/breakpoints.scm,
374 debugger/breakpoints/procedural.scm,
375 debugger/breakpoints/range.scm, debugger/breakpoints/source.scm,
376 debugger/trap-hooks.scm, debugger/trc.scm: New files - breakpoint
377 support.
378
379 * Makefile.am (SUBDIRS): Add debugger subdirectory.
380
381 * debugger/Makefile.am, debugger/breakpoints/Makefile.am: New.
382
03453b05
MV
3832002-10-21 Marius Vollmer <mvo@zagadka.ping.de>
384
385 * threads.scm (%thread-handler): Do not call unmask-signals, that
386 should be unnecessary now.
387
a7785f36
MD
3882002-10-20 Mikael Djurfeldt <mdj@linnaeus>
389
390 * boot-9.scm (top-repl): Look for use-emacs-interface in
391 guile-user-module (should it be there?) instead of
392 the-root-module.
393
acfa1f52
MV
3942002-10-10 Marius Vollmer <mvo@zagadka.ping.de>
395
396 * boot-9.scm (top-repl): Use 2 as the limit when saving the stack.
397 (error-catching-loop): use call-with-blocked-asyncs and
398 call-with-unblocked-asyncs instead of mask-signals and
399 unmask-signals.
400
34010f56
NJ
4012002-10-09 Neil Jerram <neil@ossau.uklinux.net>
402
403 * buffered-input.scm (make-buffered-input-port): Build an
404 input-waiting thunk for just extended version of make-soft-port.
405
9bc54879
RB
4062002-10-04 Rob Browning <rlb@defaultvalue.org>
407
408 * boot-9.scm (expt): switch if sense and use negative? rather than
409 >= 0.
410
3538c2b2
MV
4112002-10-04 Marius Vollmer <mvo@zagadka.ping.de>
412
413 * boot-9.scm (top-repl): Use "1" instead of "%deliver-signals" to
414 limit the signal stack.
415
f4232aa6
MV
4162002-09-15 Marius Vollmer <mvo@zagadka.ping.de>
417
418 * boot-9.scm (feature?): Added deprecation message.
419
5fc0857e
RB
4202002-09-14 Rob Browning <rlb@defaultvalue.org>
421
422 * boot-9.scm (sqrt): minor indentation fix.
423
cfcdb8e9
MV
4242002-09-05 Marius Vollmer <mvo@zagadka.ping.de>
425
426 * syncase.scm: Set the module transformer of the-syncase-module so
427 that we can use define-syntax.
428 (define-syntax-public): New and exported.
429
4302002-09-04 Marius Vollmer <mvo@zagadka.ping.de>
431
432 * syncase.scm (expansion-eval-closure, env->eval-closure): New.
433 (sc-macro): Set the expansion-eval-closure expanding the form.
434 (putprop, getprop): Use the expansion-eval-closure to find
435 variables instead of the current module.
436
fdf7e1d7
MV
4372002-07-08 Marius Vollmer <mvo@zagadka.ping.de>
438
439 * slib.scm (make-exchanger): Added. Thanks to Clinton Ebadi!
440
7c38399f
DH
4412002-07-07 Dirk Herrmann <D.Herrmann@tu-bs.de>
442
443 * boot-9.scm (define-option-interface): Replaced "macro" by
444 mmacro.
445
1334c61a
GH
4462002-06-01 Gary Houston <ghouston@arglist.com>
447
448 * boot-9.scm (file-set-position): Make third argument optional,
449 for SCM compatibility.
450 (file-position): simplify definition.
451
be87cdb7
MV
4522002-06-01 Marius Vollmer <mvo@zagadka.ping.de>
453
454 * boot-9.scm (file-set-position): Use seek instead of fseek.
455
e717bf46
MV
4562002-05-09 Marius Vollmer <mvo@zagadka.ping.de>
457
458 * format.scm (format:out-inf-nan): New.
459 (format:out-fixed, format:out-expon, format:out-general): Use it
460 to print infs and nans.
461
462 * boot-9.scm (unsetenv): New, for completeness.
463
9ea4ac37
MV
4642002-05-08 Marius Vollmer <mvo@zagadka.ping.de>
465
466 * format.scm (format:fn-max): Increase to 400 so ~f and ~g can
467 print long real numbers with large positive and negative
468 exponents.
469
45845efe
MV
4702002-05-06 Marius Vollmer <mvo@zagadka.ping.de>
471
472 * syncase.scm: Use (ice-9 threads) so that with-mutex is defined.
473
0bd1b44f
TTN
4742002-04-30 Thien-Thi Nguyen <ttn@giblet.glug.org>
475
476 * gap-buffer.scm: New file.
477
478 * Makefile.am (ice9_sources): Add gap-buffer.scm.
479
c87af2d5
RB
4802002-03-12 Rob Browning <rlb@defaultvalue.org>
481
482 * syncase.scm: fix bad let.
483 (gensym): fix failure on non-threaded
484
6c5b8521
TTN
4852002-03-05 Thien-Thi Nguyen <ttn@giblet.glug.org>
486
487 * ftw.scm: New file.
488
489 * Makefile.am (ice9_sources): Add ftw.scm.
490
327d4dd3
TTN
4912002-02-26 Thien-Thi Nguyen <ttn@giblet.glug.org>
492
493 * Makefile.am: Update path to pre-inst-guile automake frag.
494
d51b42e2
TTN
495 * boot-9.scm: Comment grammar fixes; nfc.
496 Thanks to Christopher Cramer.
497
46151112
RB
4982002-02-24 Rob Browning <rlb@defaultvalue.org>
499
500 * syncase.scm (gensym): redefine locally so we can control it's
501 properties. This is in preparation for changing the future public
502 gensym to produce unreadable symbols.
503
504 * psyntax.pp: updated to reflect new syncase.scm.
505
90d4a6b0
TTN
5062002-02-07 Thien-Thi Nguyen <ttn@giblet.glug.org>
507
508 * regex.scm: Add commentary; nfc.
509
0187b4f4
TTN
5102002-02-05 Thien-Thi Nguyen <ttn@giblet.glug.org>
511
512 * Makefile.am: Include $(top_srcdir)/pre-inst-guile.am.
513
514 (psyntax.pp): Use $(preinstguile).
515
dd580bd6
MV
5162002-01-14 Marius Vollmer <mvo@zagadka.ping.de>
517
518 * psyntax.ss (datum->syntax-object): Removed assertion in
519 datum->syntax-object that checked if the first argument, a
520 syntax-object, is an identifier. This was a unconvenient and
521 unnecessary restriction. Thanks to Dorai Sitaram!
522
0e6f7775
MV
5232002-01-12 Marius Vollmer <mvo@zagadka.ping.de>
524
525