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