Added `config.rpath'.
[bpt/guile.git] / ice-9 / ChangeLog
CommitLineData
3ba9acb1
LC
12007-08-08 Ludovic Courtès <ludo@gnu.org>
2
3 * boot-9.scm (%record-type-check): Renamed to
4 `%record-type-error'.
5 (record-accessor): Directly use `struct-vtable' and
6 `struct-ref', thereby avoiding indirections and procedure-call
7 overhead.
8 (record-modifier): Likewise.
9
608860a5
LC
102007-05-05 Ludovic Courtès <ludo@chbouib.org>
11
12 Implemented lazy duplicate binding handling. Fixed the
13 `module-observe-weak' API.
14
15 * boot-9.scm: Updated the `module-type' documentation under "{Low
16 Level Modules}".
17 (module-type)[import-obarray]: New slot.
18 [duplicates-interface, observer-id]: Removed.
19 (make-module): Updated accordingly. Use a weak-key hash table for
20 weak observers, so that observers aren't unregistered when the
21 observing closure gets GC'd.
22 (module-duplicates-interface, set-module-duplicates-interface!,
23 module-observer-id, set-module-observer-id!): Removed.
24 (module-import-obarray): New.
25 (module-observe-weak): Accept a new OBSERVER-ID argument allowing
26 callers control over when the observer will get unregistered.
27 (module-call-observers): Use `hash-for-each' rather than
28 `hash-fold'.
29 (module-local-variable, module-variable): Removed, now implemented
30 in C.
31 (module-make-local-var!): Simplified. No need to check for the
32 value of a same-named imported binding since the newly created
33 variable is systematically assigned afterwards.
34 (module-use!): Check whether MODULE and INTERFACE are `eq?'.
35 (module-use-interfaces!): Simplified. No longer calls
36 `process-duplicates'.
37 (beautify-user-module!): Use `module-use!' rather than
38 `set-module-uses!' when importing THE-SCM-MODULE.
39 (process-define-module): Added an AUTOLOADS local variable so that
40 autoloads are handled separately from regular interfaces.
41 (make-autoload-interface): Updated `module-constructor'
42 invocation.
43 (module-autoload!): New.
44 (make-duplicates-interface, process-duplicates): Removed.
45 (top-repl): Use `module-autoload!' rather than
46 `make-autoload-interface'.
47
169ccff5
NJ
482007-02-18 Neil Jerram <neil@ossau.uklinux.net>
49
50 * gds-client.scm (connect-to-gds): Break generation of client name
51 into ...
52 (client-name): New procedure.
53 (client-name): Put something from (program-arguments) in the
54 client name that GDS displays in Emacs.
55 (connect-to-gds, client-name): Add application-name arg to allow
56 caller to specify client name.
57
e6ee0d48
LC
582007-02-09 Ludovic Courtès <ludovic.courtes@laas.fr>
59
60 * Makefile.am (ice9_sources): Added `i18n.scm'.
61
a2f00b9b
LC
622007-01-31 Ludovic Courtès <ludovic.courtes@laas.fr>
63
64 * i18n.scm: Use `(ice-9 optargs)'. Don't export `LC_*_MASK'
65 variables. Added new exports.
66 (locale-encoding, locale-day-short, locale-day,
67 locale-month-short, locale-month, locale-am-string,
68 locale-pm-string, locale-date+time-format, locale-date-format,
69 locale-time-format, locale-time+am/pm-format, locale-era,
70 locale-era-year, locale-era-date+time-format,
71 locale-era-date-format, locale-era-time-format,
72 locale-currency-symbol, locale-monetary-fractional-digits,
73 locale-monetary-positive-sign, locale-monetary-negative-sign,
74 locale-monetary-decimal-point,
75 locale-monetary-thousands-separator,
76 locale-monetary-digit-grouping,
77 locale-currency-symbol-precedes-positive?,
78 locale-currency-symbol-precedes-negative?,
79 locale-positive-separated-by-space?,
80 locale-negative-separated-by-space?,
81 locale-positive-sign-position, locale-negative-sign-position,
82 %number-integer-part, add-monetary-sign+currency,
83 monetary-amount->locale-string, locale-digit-grouping,
84 locale-decimal-point, locale-thousands-separator,
85 number->locale-string, locale-yes-regexp, locale-no-regexp): New
86 procedures.
87 (define-vector-langinfo-mapping, define-simple-langinfo-mapping,
88 define-monetary-langinfo-mapping): New macros.
89
9a18d8d4
KR
902007-01-04 Kevin Ryde <user42@zip.com.au>
91
92 * boot-9.scm (top-repl): Check (defined? 'SIGBUS) before using that
93 value, there's no such signal on mingw. Reported by Cesar Strauss.
94
952006-12-13 Kevin Ryde <user42@zip.com.au>
96
97 * boot-9.scm (use-srfis, top-repl): Use process-use-modules, to
98 correctly handle duplicates between the core and other modules, in
99 particular srfi-17 which should replace `car' etc (but didn't).
100
1012006-12-09 Kevin Ryde <user42@zip.com.au>
102
103 * boot-9.scm (top-repl): Remove module-use! of the core `(guile)'
104 module. It's already in `(guile-user)' and the module-use! elevates
105 it making core bindings override those from elsewhere, such as `iota'
106 under a run of "guile --use-srfi=1". Reported by Sven Hartrumpf.
107
31b6212e
NJ
1082006-11-13 Neil Jerram <neil@ossau.uklinux.net>
109
110 * boot-9.scm (environment-module): Change eval-closure-module call
111 back to procedure-property lookup. (This completes the reversion
112 of the change made on 2005-06-10, which was only partially undone
113 by the change on 2005-08-01.)
114
e2d23cc0
NJ
1152006-10-13 Neil Jerram <neil@ossau.uklinux.net>
116
117 Integration of Unix domain socket patch from William Xu:
118
119 * gds-client.scm (connect-to-gds): Try to connect by Unix domain
120 socket if TCP connection fails.
121
122 * gds-server.scm (run-server): Update to support listening on a
123 Unix domain socket.
124
afc4ccd4
KR
1252006-10-05 Kevin Ryde <user42@zip.com.au>
126
127 * ftw.scm (visited?-proc): Use hashv since we know we're getting
128 numbers. Incorporate stat:dev, since stat:ino is only unique within a
129 single device. This fixes a bug where if two files with the same
130 inode on different devices where seen only the first would be returned
131 by ftw (and nftw).
132
83a5b41b
NJ
1332006-10-03 Neil Jerram <neil@ossau.uklinux.net>
134
135 * gds-client.scm (run-utility): Remove unnecessary
136 `connect-to-gds' call.
137
63258dc9
NJ
1382006-09-30 Neil Jerram <neil@ossau.uklinux.net>
139
140 * debugging/ice-9-debugger-extensions.scm (debug-trap): Use
141 `debugger-command-loop' instead of `read-and-dispatch-commands',
142 which isn't actually available. Thanks to Carlos Pita for
143 reporting this.
144 (debugger-command-loop): Define here for 1.6.x.
145
ee6be719
NJ
1462006-09-25 Neil Jerram <neil@ossau.uklinux.net>
147
148 * debugging/ice-9-debugger-extensions.scm (debugger:step):
149 Docstring improvements.
150 (debugger:next): Docstring improvements.
151 (debugger:continue): Docstring improvements.
152
153 * debugger/commands.scm (up, down): Docstring corrections.
154 (info-args, info-frame, position, evaluate): Docstring
155 improvements.
156
afc4ccd4
KR
1572006-09-23 Kevin Ryde <user42@zip.com.au>
158
159 * boot-9.scm (log, log10, exp, sqrt): Remove, now in
160 libguile/numbers.c.
161
1622006-09-07 Kevin Ryde <user42@zip.com.au>
163
164 * format.scm: Module "(ice-9 threads)" no longer used, now no mutex.
165 (format:parse-float): Fix normalization of leading zeros like "02.5"
166 to "2.5". left-zeros was zeroed before adjusting format:fn-dot,
167 resulting in the latter being unchanged.
168
8746959c
NJ
1692006-08-18 Neil Jerram <neil@ossau.uklinux.net>
170
171 * debugging/trc.scm: New file.
172
173 * debugging/traps.scm: New file.
174
175 * debugging/trace.scm: New file.
176
177 * debugging/steps.scm: New file.
178
179 * debugging/load-hooks.scm: New file.
180
181 * debugging/ice-9-debugger-extensions.scm: New file.
182
183 * debugging/example-fns.scm: New file.
184
185 * debugging/breakpoints.scm: New file.
186
187 * debugging/Makefile.am: New.
188
189 * Makefile.am (SUBDIRS): Add debugging.
190
afc4ccd4
KR
1912006-08-02 Kevin Ryde <user42@zip.com.au>
192
193 * boot-9.scm (%record-type-check): New function.
194 (record-accessor, record-modifier): Use it for a strict type check of
195 the given record. Previously an accessor returned #f on a wrong
196 record type, and modifier silently did nothing.
197
ea19f0b3
NJ
1982006-06-19 Neil Jerram <neil@ossau.uklinux.net>
199
200 * Makefile.am (ice9_sources): Add new files.
201
202 * gds-client.scm, gds-server.scm: New files.
203
5be9f729
KR
2042006-05-28 Kevin Ryde <user42@zip.com.au>
205
206 * documentation.scm (file-commentary): Move make-regexp into
207 file-commentary so that it's possible to get to the repl prompt when
208 regexps are not available.
209
2102006-05-09 Kevin Ryde <user42@zip.com.au>
211
212 * threads.scm (n-par-for-each, n-for-each-par-map): Two more spots
213 where `futures' should become `threads' from Marius' change of
214 2006-01-29.
215
a2f00b9b 2162006-03-04 Ludovic Courtès <ludovic.courtes@laas.fr>
cd5fea8d
KR
217
218 * ice-9/boot-9.scm (make-autoload-interface): Don't call `set-car!' if
219 the autoload interface has already been removed from MODULE's uses.
220 This bug showed up when using a given module both with `autoload' and
221 `use-module'.
222
2232006-02-21 Kevin Ryde <user42@zip.com.au>
224
225 * format.scm (format:out-dollar): Use format:out-inf-nan per ~f etc.
226
1aaa1c17
MV
2272006-02-12 Marius Vollmer <mvo@zagadka.de>
228
229 * deprecated.scm (make-uniform-array): Don't pass the prototype as
230 the fill value, dimensions->uniform-array will do the right thing
231 now. See scm_dimensions_to_uniform_array why we need to be tricky
232 about the fill value.
233
56658166
NJ
2342006-02-04 Neil Jerram <neil@ossau.uklinux.net>
235
2328328f
NJ
236 * boot-9.scm (try-module-autoload): Make sure that module code is
237 loaded with the default reader (current-reader #f). Thanks to
a2f00b9b 238 Ludovic Courtès for pointing this problem out.
2328328f 239
56658166
NJ
240 * stack-catch.scm (stack-catch): Use catch pre-unwind handler
241 instead of lazy-catch.
242
243 * boot-9.scm (error-catching-loop): Use catch pre-unwind handler
244 instead of lazy-catch.
245
a2f00b9b 2462006-02-01 Ludovic Courtès <ludovic.courtes@laas.fr>
7a5e7cba
KR
247
248 * deprecated.scm (make-uniform-array): Fill the returned vector with
249 PROT, per guile 1.6 behaviour.
250
e28cd808
MV
2512006-01-30 Marius Vollmer <mvo@zagadka.de>
252
253 * threads.scm (ice-9): Export %thread-handler.
254
a64d0589
MV
2552006-01-29 Marius Vollmer <mvo@zagadka.de>
256
257 * threads.scm: Replaced 'futures' with threads.
258
27d64e2b
NJ
2592006-01-13 Neil Jerram <neil@ossau.uklinux.net>
260
261 * boot-9.scm (repl-reader): Use value of current-reader fluid to
a2f00b9b 262 do the read, if set. (Thanks to Ludovic Courtès for the patch.)
27d64e2b 263
ec3a8ace
NJ
2642005-12-14 Neil Jerram <neil@ossau.uklinux.net>
265
266 * boot-9.scm (load-module): Support an optional custom reader arg,
267 implemented by passing on to r4rs's load.
268
269 * r4rs.scm (load): Support an optional custom reader arg,
270 implemented by passing on to primitive-load.
271
9d9ce2b5
MV
2722005-12-06 Marius Vollmer <mvo@zagadka.de>
273
274 From Stephen Compall.
275
276 * boot-9.scm (%cond-expand-features): Add srfi-61.
277
a2f00b9b 2782005-10-27 Ludovic Courtès <ludovic.courtes@laas.fr>
551387fd
KR
279
280 * networking.scm (sockaddr:flowinfo, sockaddr:scopeid): New functions.
281
25bdfbb6
NJ
2822005-09-01 Neil Jerram <neil@ossau.uklinux.net>
283
284 * debugger/utils.scm: Export write-frame-long.
285
7f278dc6
MV
2862005-08-01 Marius Vollmer <mvo@zagadka.de>
287
288 * boot-9.scm (set-module-eval-closure!): Undone change from
289 2005-06-10; with the new weak hashtable semantics, cyclic
290 references are no longer a problem.
291
9f4f1758
NJ
2922005-07-09 Neil Jerram <neil@ossau.uklinux.net>
293
4199ace5
NJ
294 * debugger.scm: Remove comments which are now incorrect.
295
d5c3f236
NJ
296 * debugger/Makefile.am (ice9_debugger_sources): Removed
297 breakpoints.scm, behaviour.scm, trap-hooks.scm.
298 (SUBDIRS): Removed.
299
9f4f1758
NJ
300 Changes to remove breakpoint support from CVS, as I am now
301 developing this function outside Guile core.
302
303 * debugger/commands.scm (assert-continuable, continue, finish,
304 trace-finish, step, next): Removed.
305
306 * debugger/breakpoints/*: Removed.
307
308 * debugger/breakpoints.scm: Removed.
309
310 * debugger/command-loop.scm: Remove command definitions for
311 continue, finish, trace-finish, step and next.
312
313 * debugger/behaviour.scm: Removed.
314
315 * debugger.scm (debug-stack): Remove GDS related code.
316
e4da0740
HWN
3172005-06-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
318
319 * boot-9.scm (set-module-eval-closure!): remove
320 set-procedure-property! closure 'module. Setting this property
321 causes un-gc-able modules.
322
fccc3e92
MV
3232005-06-05 Marius Vollmer <mvo@zagadka.de>
324
325 * boot-9.scm (substring-fill!): New, for compatability.
326
8cb2eff8
KR
3272005-04-23 Kevin Ryde <user42@zip.com.au>
328
329 * boot-9.scm (make-list): Moved to C code in list.c
330
c0575bde
KR
3312005-04-14 Kevin Ryde <user42@zip.com.au>
332
333 * boot-9.scm (1+, 1-): Moved to numbers.c.
334
d1ad188c
KR
3352005-03-08 Kevin Ryde <user42@zip.com.au>
336
337 * slib.scm (*features*): Remove 'random, need to use the slib code for
338 that module since guile doesn't provide `random:chunk'.
339
f7fb2f39
RB
3402005-02-12 Rob Browning <rlb@defaultvalue.org>
341
342 * boot-9.scm (%cond-expand-features): add srfi-55.
343 (require-extension): add require-extension macro for srfi-55.
344
bba35c80
KR
3452005-01-29 Kevin Ryde <user42@zip.com.au>
346
347 * regex.scm (regexp-quote): Use string-for-each, now that function is
348 in the core.
349
4d38e6f0
KR
3502005-01-28 Kevin Ryde <user42@zip.com.au>
351
352 * boot-9.scm (while): Remove the unquote from do, it breaks with ice-9
353 syncase. Reported by Pach Roman.
354
1a523873
MV
3552005-01-10 Marius Vollmer <marius.vollmer@uni-dortmund.de>
356
357 * arrays.scm, deprecated.scm (uniform-vector-fill!,
358 make-uniform-vector, make-uniform-array, list->uniform-vector):
359 Moved from arrays.scm to deprecated.scm.
360 * arrays.scm, boot-9.scm (array-dimensions): Moved from arrays.scm
361 to boo-9.scm.
362 * Makefile.am (ice9_sources): Removed arrays.scm.
363
5be5e699
MV
3642005-01-02 Marius Vollmer <mvo@zagadka.de>
365
366 * arrays.scm (uniform-vector-fill!, make-uniform-vector,
367 make-uniform-array,list->uniform-array): Deprecated for real.
368
1ebcfa34
MV
3692004-12-29 Marius Vollmer <mvo@zagadka.de>
370
371 * arrays.scm (make-array, list->array): Removed.
372 (uniform-vector-fill!): Prepared to be deprecated.
373
3167d5e4
MV
3742004-12-22 Marius Vollmer <marius.vollmer@uni-dortmund.de>
375
376 * boot-9.scm (module-make-local-var!): When creating a new
377 variable, initialize it to the value of any imported variable with
378 the given name. This allows code like (define round round) to
379 work as expected.
380
381 From Antoine Mathys <tonigonenstein@users.sourceforge.net>:
382
383 * popen.scm: Support bidirectional communication by making
384 open-pipe support OPEN_BOTH as second argument and in that case
385 return a soft input-output port which uses two pipes internally.
386 Provide open-pipe* to execute programs without using the shell
387 (and actually base open-pipe on it) and the obvious
388 open-input-output-pipe.
389
e120686a
KR
3902004-12-14 Kevin Ryde <user42@zip.com.au>
391
392 * boot-9.scm: (string-any, string-every): Use a scheme wrapper around
393 the C code so for the final call to the predicate procedure is a tail
394 call, per SRFI-13 spec.
395
f41c1142
MV
3962004-12-01 mvo <mvo@zagadka.de>
397
398 * boot-9.scm (app, %app): Renamed former to the latter.
399 Previously, 'app' was reserved in every module. Now '%app' is
400 reserved, which is slightly better. The real fix is to not use
401 'local-ref' etc to find modules. Changed all uses.
402 * syncase.scm: Changed 'app' to '%app'.
403
d550e35f
MV
4042004-11-12 Marius Vollmer <marius.vollmer@uni-dortmund.de>
405
406 * arrays.scm: Do not use prototypes, use creator functions.
407
2ed34885
MV
4082004-11-10 Marius Vollmer <mvo@zagadka.de>
409
410 * arrays.scm (uniform-vector-read!, uniform-vector-write):
411 Removed.
412
a2b6a0e7
MV
4132004-11-05 Marius Vollmer <marius.vollmer@uni-dortmund.de>
414
415 * boot-9.scm: Do not add "." to %load-path. 'load' will still be
416 able to load files in the current directory, but 'use-modules' etc
417 will not.
418
5e9c05a1
MV
4192004-10-29 Marius Vollmer <marius.vollmer@uni-dortmund.de>
420
421 * arrays.scm: Do not install read-hash procedure for reading
422 arrays, this is done in libguile now.
423
7b1574ed
MV
4242004-10-27 Marius Vollmer <marius.vollmer@uni-dortmund.de>
425
426 * arrays.scm (uniform-vector?, uniform-vector-set!): Removed, now
427 provided by libguile.
428
79d52182
MV
4292004-10-26 Marius Vollmer <marius.vollmer@uni-dortmund.de>
430
431 * boot-9.scm: Added srfi-4 to cond-expand features.
432
98c712c4
MV
4332004-10-18 Marius Vollmer <marius.vollmer@uni-dortmund.de>
434
435 * format.scm (format:obj->str): Simplified considerably by using
436 object->string or display instead of implementing our own printer.
437 Handle format:read-proof here. Unreadable objects are recognized
438 by their "#<" prefix instead of by being unknown to the custom
439 printer (which would treat keywords as unprintable, for example).
440 (format:iobj->str): Removed.
441
aef0bdb4
MV
4422004-10-04 Marius Vollmer <marius.vollmer@uni-dortmund.de>
443
444 * boot-9.scm (symbol->keyword, keyword->symbol): Removed, they are
445 now implemented in C.
446
e5c2d5c8
KR
4472004-09-26 Kevin Ryde <user42@zip.com.au>
448
449 * optargs.scm (let-optional-template, let-keywords-template): Change
450 "(begin body)" to "(let () body)" for empty bindings, since the former
451 allows "internal defines" in body leak out to the surrounding
452 environment.
453
c9fedf8a
MV
4542004-09-23 Marius Vollmer <mvo@zagadka.de>
455
456 * boot-9.scm (handle-system-error): Pass rest argument to
457 display-backtrace for wrong-type-arg and out-of-range errors so
458 that the bad value gets highlighted.
459
1c923ba7
KR
4602004-09-04 Kevin Ryde <user42@zip.com.au>
461
462 * streams.scm (stream-for-each-many): Correction, should recurse into
463 itself, not stream-for-each-one.
464
2bd2014d
KR
465 * time.scm (time-proc): Make result inexact, since format ~f doesn't
466 support fractions currently.
467
e548be5f
MV
4682004-09-08 Marius Vollmer <marius.vollmer@uni-dortmund.de>
469
470 * boot-9.scm (expt): Only call integer-expt for an exact integer
471 exponent, not for an inexact integer one. Also, let integer-expt
472 handle negative exponents instead of doing it here.
473
b8d95267
KR
4742004-09-02 Kevin Ryde <user42@zip.com.au>
475
476 * format.scm (format:out): Ignore excess arguments, per common lisp.
477
478 * format.scm (format:out-num-padded): Print "+" on 0 under @ modifier.
479
24cc9192
KR
4802004-08-27 Kevin Ryde <user42@zip.com.au>
481
482 * regex.scm (regexp-quote): [ and | must be quoted. Quote ( ) { + ?
483 using char class [(] etc since \( in fact makes them become special in
484 regexp/basic.
485
4b0ad1f4
KR
4862004-08-25 Kevin Ryde <user42@zip.com.au>
487
488 * and-let-star.scm (and-let*): Give #t for an empty body, per srfi-2
489 spec, previously came out as an empty (begin).
490
c5080b51
MV
4912004-08-25 Marius Vollmer <mvo@zagadka.de>
492
c4c3360b 493 * boot-9.scm (%cond-expand-features): Added srfi-13 and srfi-14.
c5080b51 494
fac3b6bc
MV
4952004-08-20 Marius Vollmer <marius.vollmer@uni-dortmund.de>
496
497 * debugger/utils.scm (display-source): Use unmemoize-expr instead
498 of unmemoize.
499 (write-frame-short/expression): Likewise.
500
00ed256c
KR
5012004-08-18 Kevin Ryde <user42@zip.com.au>
502
503 * and-let-star.scm: Add cond-expand-provide srfi-2, since this module
504 provides that feature.
505 * receive.scm: Add cond-expand-provide srfi-8, since this module
506 provides that feature.
507
d2afa1fc
MV
5082004-08-09 Marius Vollmer <mvo@zagadka.de>
509
510 From Matthias Koeppe. Thanks!
511
512 * pretty-print.scm (generic-write): In the local procedure `wr', use
513 object->string to print all data (except for the reader macros),
514 rather than implementing an own printer. The user-visible
515 difference is that procedures and control characters like #\tab
516 are now printed in the same way as by `write'.
517
2975040b
KR
5182004-08-09 Kevin Ryde <user42@zip.com.au>
519
520 * slib.scm (*features*): Remove array and array-for-each, core
521 definitions are insufficient for latest slib.
522 (t, nil): New constants slib says are supposed to exist.
523 (call-with-open-ports, browse-url): New functions for latest slib.
524 Implementations taken from Template.scm (public domain).
525 (open-file): Extend core definition to accept symbols for the mode,
526 required by latest slib.
527 (delete-file): Replace core definition with version returning #t/#f as
528 per slib spec.
529 (system): Mark as #:replace to suppress override warning, use new
530 style "(@ (guile) system)" to call core function.
531
dc510157
KR
5322004-05-25 Matthias Koeppe <mkoeppe@mail.math.uni-magdeburg.de>
533
534 * format.scm: Remove the arbitrary limit of 100 iterations for the
535 ~{...~} control structure.
536
2755366c
KR
5372004-07-10 Kevin Ryde <user42@zip.com.au>
538
539 * and-let-star.scm (and-let*): Remove unused variable "val".
540 * pretty-print.scm (read-macro-prefix): Remove unused variable "tail".
541
542 * boot-9.scm (%cond-expand-features): Add srfi-6 which is in the core.
543
544 * safe-r5rs.scm (re-export): Uncomment numerator, denominator,
545 rationalize, since they now exist.
546
40827c6d
KR
5472004-07-05 Kevin Ryde <user42@zip.com.au>
548
549 * slib.scm (system): Correction to redefinition, now guile is stricter
550 about when a define binding comes into existance.
551
3d2ada2f
DH
5522004-05-29 Dirk Herrmann <dirk@dirk-herrmanns-seiten.de>
553
554 * boot-9.scm: Reordered definitions such that macro definitions
555 preceed their first usage. Include and define deprecated stuff
556 late in the file to have a better change of detecting accidental
557 uses of deprecated definitions. Further, unified the layout a
558 little and grouped definitions more cleanly into topics.
559
41cfaa12
MV
5602004-05-24 Marius Vollmer <mvo@zagadka.de>
561
562 * history.scm (use-value-history): Use resolve-interface instead
563 of resolve-module so that only the exported bindings are searched.
564 (save-value-history): Export the newly defined variable. Reported
565 by Wolfgang Jaehrling.
566
9f84d6aa
DH
5672004-05-04 Dirk Herrmann <dirk@dirk-herrmanns-seiten.de>
568
569 * boot-9.scm (resolve-module): Always start searching from the
570 root module. This will allow the C equivalent scm_resolve_module
571 to work, independent of what the current module is.
572
9b792a7e
MV
5732004-02-18 Marius Vollmer <mvo@zagadka.de>
574
575 * boot-9.scm (top-repl): Make the (guile-user) module use the
576 (ice-9 r5rs) module.
577
711a9fd7
MD
5782004-02-12 Mikael Djurfeldt <djurfeldt@nada.kth.se>
579
580 * boot-9.scm (module-map): Renamed hash-map -> hash-map->list.
581
2c284c94
NJ
5822004-02-09 Neil Jerram <neil@ossau.uklinux.net>
583
584 * debugger/trap-hooks.scm (debug-hook-membership): New, exported.
585
586 * debugger/commands.scm (debug-trap-hooks): New, exported.
587
f1dc5f45
MD
5882004-02-08 Mikael Djurfeldt <djurfeldt@nada.kth.se>
589
590 * debugger/breakpoints/Makefile.am (TAGS_FILES),
591 debugger/Makefile.am (TAGS_FILES), Makefile.am (TAGS_FILES): Use
592 this variable instead of ETAGS_ARGS so that TAGS can be built
593 using separate build directory.
594
bb5ad88f
NJ
5952004-01-20 Neil Jerram <neil@ossau.uklinux.net>
596
597 * boot-9.scm (error-catching-loop): Back out 2003-11-19 change to
598 lazy-handler-dispatch lookup.
599
1dd2599f
MV
6002004-01-12 Marius Vollmer <mvo@zagadka.de>
601
602 * mapping.scm: Use '#:' prefix for keywords instead of ':'.
603 Thanks to Richard Todd!
604
9afa7a12
KR
6052004-01-11 Kevin Ryde <user42@zip.com.au>
606
7dd5eb58
KR
607 * slib.scm (system): New function, giving an exit code return in
608 accordance with slib spec.
609
9afa7a12
KR
610 Revert this, it breaks test-suite/tests/r5rs_pitfalls.test where
611 false-if-exception is used within syntax-rules. (Suspect syntax-rules
612 ought to support this sort of thing, but it doesn't right now.)
9afa7a12
KR
613 * boot-9.scm (false-if-exception): Unquote catch and lambda, so as not
614 to depend on expansion environment.
615
96e3b2f8
MV
6162004-01-07 Marius Vollmer <marius.vollmer@uni-dortmund.de>
617
618 * boot-9.scm (with-fluids): Use with-fluid* when only one fluid is
619 being set.
620
524cbf64
KR
6212004-01-07 Kevin Ryde <user42@zip.com.au>
622
623 * q.scm (q-pop!): Should be "null?" not "not" for end-of-list.
624 Reported by Richard Todd.
625
6d611fed
KR
6262004-01-04 Kevin Ryde <user42@zip.com.au>
627
628 * boot-9.scm (false-if-exception): Unquote catch and lambda, so as not
629 to depend on expansion environment.
630
97ac013a
KR
631 * slib.scm (-1+, <?, <=?, =?, >?, >=?): Define as aliases for 1-, <,
632 <=, =, >, >= respectively, required by slib 'rev2-procedures but no
633 longer in the guile core.
634
64758fe2
NJ
6352003-11-19 Neil Jerram <neil@ossau.uklinux.net>
636
637 * boot-9.scm (error-catching-loop): Defer lookup of
638 lazy-handler-dispatch.
639
aff7e166
MV
6402003-11-17 Marius Vollmer <mvo@zagadka.de>
641
642 * boot-9.scm (@, @@): New macros.
643
37f5dfe5
DH
6442003-11-16 Dirk Herrmann <D.Herrmann@tu-bs.de>
645
646 * boot-9.scm: Started comment about module system workings.
647
3273abd2
NJ
6482003-11-11 Neil Jerram <neil@ossau.uklinux.net>
649
30d90280
NJ
650 * debugger.scm: Change ui-* calls to gds-*.
651 (debug-on-error): Debug if throw key is in specified syms, not if
652 it isn't! Also throw 'abort after debugging, so as to skip the
653 REPL's backtrace.
654
3273abd2
NJ
655 * debugger/behaviour.scm (*trap*): New variable, stores trap type.
656 (before-enter-frame-hook, before-apply-frame-hook,
657 before-exit-frame-hook): Set here.
658 (debug-if-flag-set): Passed into flags on debug-stack call.
659 (at-step, at-next): Changed to debug at frame exit points as well.
660
661 * debugger/utils.scm: Big comment added.
662
6632003-10-30 Neil Jerram <neil@ossau.uklinux.net>
664
665 * debugger/ui-client.scm: Moved to ../emacs/gds-client.scm.
666
9f1af5d9
NJ
6672003-10-16 Neil Jerram <neil@ossau.uklinux.net>
668
669 * debugger/ui-client.scm (ui-connect): Add arg to say whether to
670 debug immediately on connection.
671 (ui-eval): Handle exceptions during read and evaluation.
672
673 * debugger.scm (debug-on-error, default-default-lazy-handler):
674 Remove an unnecessary level of indirection in calling lazy
675 handler.
676
e2de682c
MV
6772003-10-12 Marius Vollmer <mvo@zagadka.de>
678
679 * ftw.scm (directory-files): Close dir-stream when done. Thanks
680 to Paul Jarc!
681
ff6ea7b9
KR
6822003-10-09 Kevin Ryde <user42@zip.com.au>
683
684 * poe.scm (funcq-assoc): Rewrite, don't assume '() is false, and
685 actually traverse the given alist.
686
41a80feb
NJ
6872003-10-06 Neil Jerram <neil@ossau.uklinux.net>
688
689 * debugger/ui-client.scm (handle-instruction): Add evaluation
690 support.
691 (ui-eval): New.
692
02b0c692
NJ
6932003-10-04 Neil Jerram <neil@ossau.uklinux.net>
694
695 * debugger/ui-client.scm (ui-disable-async-thread,
696 ui-continue-async-thread, start-async-ui-thread): New.
697 (ui-command-loop): Call ui-disable-async-thread and
698 ui-continue-async-thread.
699 (handle-instruction): Read terminating newline char so it doesn't
700 cause following select to pop immediately.
701
79b1c5b6
NJ
7022003-09-25 Neil Jerram <neil@ossau.uklinux.net>
703
704 * debugger/ui-client.scm, debugger/ui-server.scm: New (work in
705 progress on new debugging front end).
706
7072003-09-24 Neil Jerram <neil@ossau.uklinux.net>
708
709 * debugger.scm (default-default-lazy-handler, debug-on-error):
710 New.
711
712 * debugger/behaviour.scm (debug-if-flag-set): Display debug entry
713 messages through (debugger-output-port).
714 (after-exit-frame-hook): Trace through (debugger-output-port).
715 (trace-here): Trace through (debugger-output-port).
716
717 * debugger/commands.scm (evaluate): If supplied expression is a
718 string, read from it before evaluating.
719 (evaluate): Change output format to "EXPR => VALUE".
720
9b4bbf47
KR
7212003-09-19 Kevin Ryde <user42@zip.com.au>
722
723 * popen.scm (open-process): Correction to previous fdes closing
724 change, need to watch out for stdin==stderr or stdout==stderr.
725
5dc1ba73
MV
7262003-09-15 Marius Vollmer <mvo@zagadka.de>
727
728 * format.scm (format): Rewritten as a big letrec to make it
729 reentrant. No mutex is necessary. Thanks to Clinton Ebadi!
730
7743d628
KR
7312003-09-13 Kevin Ryde <user42@zip.com.au>
732
733 * boot-9.scm (file-exists?): Use stat rather than access?, so as to
734 follow the effective UID/GID not the real ID. file-exists? is
cd56b181 735 normally used as a prelude to opening or some other operation, and
7743d628
KR
736 it's the effective ID which will apply there. Emacs file-exists-p
737 uses stat, presumably for the the same reason.
738
50e0ba57
MV
7392003-09-12 Marius Vollmer <mvo@zagadka.de>
740
741 * boot-9.scm (make-autoload-interface): Use a proper hashtable as
742 the obarray, not an empty vector.
743 (make-module): Always construct a hashtable for the obarray, even
744 for empty ones.
745
746 * format.scm (format:error): Use 'format:format' instead of
747 'format' since the latter will lock the mutex again that we have
748 already locked.
749 (format:format-work): Flag multiple '#' as an error.
750
2388d9af
KR
7512003-08-17 Kevin Ryde <user42@zip.com.au>
752
753 * boot-9.scm (while): Use a new key dynamically for each loop, so
754 break and continue associate to their loop even when recursing.
755
d97f9b42
KR
7562003-08-14 Kevin Ryde <user42@zip.com.au>
757
758 * boot-9.scm (while): Rewrite, continue as proper escape, break
759 without return value, break and continue new for each while form,
760 don't depend on bindings in expansion environment.
761
762 * popen.scm (open-process): Close input-fdes, output-fdes and
763 error-fdes after duping them to 0, 1 and 2.
764
996acdb8
KR
7652003-06-19 Kevin Ryde <user42@zip.com.au>
766
767 * threads.scm (parallel): For no forms, use `(values)' not `(begin)'.
768
42ad901d
DH
7692003-05-27 Dirk Herrmann <D.Herrmann@tu-bs.de>
770
771 * boot-9.scm (make-autoload-interface): Added missing quote around
772 vector constant.
773
47dee228
MV
7742003-05-20 Marius Vollmer <marius.vollmer@uni-dortmund.de>
775
776 * deprecated.scm (list*): Added.
777
6cced6fe
KR
7782003-05-10 Kevin Ryde <user42@zip.com.au>
779
780 * documentation.scm (file-commentary, find-documentation-in-file): Use
781 call-with-input-file, to close ports when done.
782
1b965c29
MV
7832003-05-03 Marius Vollmer <mvo@zagadka.de>
784
d04229df
MV
785 * gap-buffer.scm (point++n!, point+-n!): Use substring-move!
786 instead of substring-move-left! or substring-move-right!. Thanks
787 to Kevin Ryde.
788
789 * deprecated.scm (substring-move-left!, substring-move-right!):
790 New.
791
0d5271a2 792 * boot-9.scm (display-usage-report): Use keyword->symbol instead
6aa536b3 793 of keyword-symbol, which doesn't exist. Thanks to Kevin Ryde.
0d5271a2 794
2b24a689
MV
795 * hcons.scm (hashq-cons-get-handle): Pass only the expected four
796 arguments to hashx-get-handle. Thanks to Kevin Ryde!
797
1b965c29
MV
798 * lineio.scm (make-line-buffering-input-port) Pass 0 as second
799 argument to string-ref. Thanks to Kevin Ryde!
800
56b97da9
MD
8012003-04-25 Mikael Djurfeldt <mdj@kvast.blakulla.net>
802
803 * serialize.scm: New file.
804
359aab24
MD
8052003-04-24 Mikael Djurfeldt <djurfeldt@nada.kth.se>
806
807 * threads.scm (n-for-each-par-map): New procedure.
808
fc87c27a
MV
8092003-04-05 Marius Vollmer <mvo@zagadka.de>
810
811 * Changed license terms to the plain LGPL thru-out.
812
bd40d420
MV
8132003-03-26 Marius Vollmer <marius.vollmer@uni-dortmund.de>
814
815 * deprecated.scm: New file, to collect deprecated things.
816 * Makefile.am (ice9_sources): Added.
817
818 * boot-9.scm: Load "ice-9/deprecated.scm" when appropriate.
819 (try-load-module): Also try the old deprecated method, maybe.
820
570b5b14
MV
8212003-03-22 Marius Vollmer <mvo@zagadka.de>
822
823 * boot-9.scm (call/cc): Added.
824
44876271
MD
8252003-03-20 Mikael Djurfeldt <djurfeldt@nada.kth.se>
826
827 * list.scm: New file.
828
b80e1b5c
MV
8292003-03-19 Marius Vollmer <mvo@zagadka.de>
830
831 * format.scm (format:out-substr): Update the column counter
832 correctly. This fixes the behavior of ~T (tabbing) after ~F, for
833 instance. Thanks to Matthias Koeppe!
834
3742da68
MD
8352003-03-13 Mikael Djurfeldt <djurfeldt@nada.kth.se>
836
837 * session.scm (apropos): Don't look in duplicates interface.
838
70a459e3
MD
8392003-03-12 Mikael Djurfeldt <djurfeldt@nada.kth.se>
840
65bed4aa
MD
841 * boot-9.scm (duplicate-handlers): Make sure the merge-generics
842 and merge-accessors handlers are available also before (oop goops)
843 has been loaded. This is so that people can put them as default
844 handlers without worrying about availability.
845
3802f9cc
MD
846 * slib.scm (logical:ipow-by-squaring): Removed.
847
fe6ee052
MD
848 * boot-9.scm (ipow-by-squaring): Removed.
849 (default-duplicate-binding-handler): Set default to
6496a663 850 '(replace warn-override-core warn last)
fe6ee052 851
d57da08b
MD
852 * boot-9.scm (module-make-local-var!): Use module-add!.
853 (module-primitive-add!): New function.
854 (resolve-interface): Use
855 (call-with-deferred-observers, module-call-observers): New
856 functions.
857 (module-defer-observers, module-defer-observers-mute,
858 module-defer-observers-table): New variables.
859 (process-define-module, process-use-modules, export, re-export):
860 Use call-with-deferred-observers.
8d8dac1f
MD
861 (module-duplicates-info, set-module-duplicates-info!): Removed.
862 (module-duplicates-handlers, module-duplicates-interface): New.
863 (module-type): Added duplicates-handlers and
864 duplicates-interface.
d57da08b
MD
865
866 * syncase.scm (eval): Mark as replacement.
867
868 * boot-9.scm (defmacro-public): Use export-syntax instead of export.
869
70a459e3
MD
870 * slib.scm (*features*): Set the core variable instead of defining
871 a local version.
872 (provide, provided?): Mark as replacements.
873
874 * boot-9.scm (beautify-user-module!): Don't install the duplicates
875 handler here.
876 (default-duplicate-binding-handler): Renamed from
877 default-module-duplicates-handler; Removed converter.
878 (process-duplicates): Lookup default duplicates handler dynamically.
879 (default-duplicate-binding-procedures): New parameter.
880
509a787a
MD
8812003-03-12 Mikael Djurfeldt <mdj@kvast.blakulla.net>
882
883 * slib.scm (identity): Removed. (Provided by core.)
884
f595ccfe
MD
8852003-03-11 Mikael Djurfeldt <djurfeldt@nada.kth.se>
886
c614a00b
MD
887 * debugger/command-loop.scm: Prefix all commands imported from
888 (ice-9 debugger command-loop) with debugger:.
889
109c2c9f
MD
890 * boot-9.scm (process-duplicates): Use module-import-interface.
891 (module-symbol-interface): Removed.
c614a00b
MD
892 (resolve-interface): Process #:hide; Name custom interfaces
893 appropriately.
894 (module-use!, module-use-interfaces!): Remove existing interfaces
895 on the use-list based on module name rather than interface
896 identity so that custom interfaces truly replaces their previous
897 version.
109c2c9f 898
f595ccfe
MD
899 * boot-9.scm (module-override!, make-mutable-parameter,
900 lookup-duplicates-handlers, default-module-duplicates-handler):
901 New functions.
902 (process-duplicates): Don't call duplicates handlers for duplicate
903 bindings of the same variable.
904 (process-define-module): Process #:replace.
905 (compile-interface-spec, resolve-interface): Process #:prefix.
906
907 * format.scm (format): Marked as replacement.
908
909 * threads.scm (future, future-ref): Marked as replacements.
910
7b07e5ef
MD
9112003-03-07 Mikael Djurfeldt <djurfeldt@nada.kth.se>
912
913 These changes enables checking for duplicate imported bindings.
914
915 * boot-9.scm (process-define-module): Handle #:duplicates.
916 (module-use-interfaces! process-duplicates): New functions.
917 (duplicate-handlers): Dictionary of duplicate handlers.
918 (module-symbol-local-binding, module-symbol-binding): Bugfix.
919
1798b73d
MD
9202003-03-04 Mikael Djurfeldt <djurfeldt@nada.kth.se>
921
922 * session.scm (apropos): Use hash-for-each instead of
923 array-for-each.
924
c35738c1
MD
9252003-02-19 Mikael Djurfeldt <djurfeldt@nada.kth.se>
926
231a4ea8
MD
927 * boot-9.scm (make-module): Changed default size from 1021 to 31
928 (since the size now adapts).
929 (macro-table, xformer-table): Changed default size from 523 to 61.
930 (make-module): Don't call make-hash-table with zero size.
931
c35738c1
MD
932 * Makefile.am (ice9_sources): Added weak-vector.scm.
933
934 * weak-vector.scm: New file.
935
936 * boot-9.scm (module-clear!): Use hash-clear!.
937 (module-for-each): Use hash-for-each.
938 (module-map): Use hash-map.
939
f59a096e
MD
9402003-02-11 Mikael Djurfeldt <djurfeldt@nada.kth.se>
941
942 * boot-9.scm (make-hash-table): Turned primitive.
943
e963ac2c
MD
9442003-01-27 Mikael Djurfeldt <djurfeldt@nada.kth.se>
945
946 * syncase.scm (guile-macro): Strip syntactic information from
947 expression before trying to treat it as a Guile macro call.
948 (Thanks to Kevin Ryde.)
949
c2950e36
MD
9502003-01-24 Mikael Djurfeldt <djurfeldt@nada.kth.se>
951
952 * threads.scm (parallel, letpar): Rewritten.
953
f4719f31
MD
9542003-01-23 Mikael Djurfeldt <djurfeldt@nada.kth.se>
955
956 * threads.scm (par-mapper, n-par-map, n-par-for-each): Use
957 futures.
958
93f26b7b
MD
9592003-01-20 Mikael Djurfeldt <djurfeldt@nada.kth.se>
960
51407fa0
MD
961 * occam-channel.scm (alt): New syntax.
962
93f26b7b
MD
963 * psyntax.ss (self-evaluating?): Removed. Guile now provides this
964 operator as a primitive procedure.
965 (build-data): Quote vectors (psyntax.ss requires this).
966
9672003-01-19 Mikael Djurfeldt <djurfeldt@nada.kth.se>
968
969 * psyntax.ss (self-evaluating?): Allow procedures implanted in
970 source. (Guile uses this internally.)
971
80f225df
MD
9722003-01-16 Mikael Djurfeldt <djurfeldt@nada.kth.se>
973
974 * psyntax.ss (build-data): Don't quote self-evaluating expressions
975 in output. (We normally *would* like also these expressions to be
976 quoted, but until Guile's native macros and syncase cooperates
977 better, it is less destructive not to quote.)
978 (self-evaluating?): Removed null? (In Guile, the empty list is not
979 self-evaluating).
980 (sc-chi): Export chi as sc-chi.
981 (external-macro): New syntax type.
982
983 * psyntax.pp: Regenerated.
984
985 * compile-psyntax.scm: Set expansion-eval-closure.
7906d57d 986
cf743aea
MD
987 * boot-9.scm (use-syntax): Return *unspecified*.
988
7906d57d
MD
989 * syncase.scm: Set expansion-eval-closure to
990 the-syncase-eval-closure during booting so that variables are
cf743aea
MD
991 created in the correct module.
992 (syncase): Set expansion-eval-closure.
7906d57d
MD
993 (define-syntax define-syntax-public eval-when fluid-let-syntax
994 identifier-syntax let-syntax letrec-syntax syntax syntax-case
995 syntax-rules with-syntax include): Removed definitions (these are
996 created from within psyntax.pp).
80f225df
MD
997 Enable expansion of Guile macros during a syntax-case
998 transformation.
cf743aea 999
60eefd9c
MD
10002003-01-10 Mikael Djurfeldt <djurfeldt@nada.kth.se>
1001
8411a446 1002 * occam-channel.scm (make-channel): Renamed from channel.
fb831451 1003 (make-timer): New function.
8411a446 1004
60eefd9c
MD
1005 * Makefile.am (ice9_sources): Added occam-channel.scm.
1006
1007 * occam-channel.scm: New file. Implements occam-like channels.
1008
db853761
NJ
10092002-12-28 Neil Jerram <neil@ossau.uklinux.net>
1010
1011 * boot-9.scm (module-defined-hook): New hook, run whenever a new
1012 module is defined.
1013 (process-define-module): Run this hook.
1014
62d4fd94
MD
10152002-12-18 Mikael Djurfeldt <mdj@kvast.blakulla.net>
1016
1017 * threads.scm: Removed bogus definition of future-ref.
1018
87623595
MD
10192002-12-15 Mikael Djurfeldt <djurfeldt@nada.kth.se>
1020
1021 * threads.scm (par-map, par-for-each): Reimplemented using
1022 joing-thread.
1023 (parallel): Reimplemented using futures.
1024 (n-par-map, n-for-each): New procedures.
1025
edeea67b
MV
10262002-12-12 Marius Vollmer <mvo@zagadka.ping.de>
1027
1028 * optargs.scm (improper-list-copy): New.
1029 (parse-arglist): Use it instead of list-copy.
1030
fc85d095
MD
10312002-12-09 Mikael Djurfeldt <djurfeldt@nada.kth.se>
1032
1033 * threads.scm (letpar): New macro.
1034
b2cbe8d8
RB
10352002-12-08 Rob Browning <rlb@defaultvalue.org>
1036
1037 * debugger/breakpoints/Makefile.am (subpkgdatadir): VERSION ->
1038 GUILE_EFFECTIVE_VERSION.
1039
1040 * debugger/Makefile.am (subpkgdatadir): VERSION ->
1041 GUILE_EFFECTIVE_VERSION.
1042
1043 * Makefile.am (subpkgdatadir): VERSION -> GUILE_EFFECTIVE_VERSION.
1044
abce330c
MD
10452002-12-04 Mikael Djurfeldt <mdj@linnaeus>
1046
fc85d095
MD
1047 * threads.scm (parallel): New macro.
1048 (par-map, par-for-each): New procedures.
abce330c
MD
1049
1050 * documentation.scm (object-documentation): Added support for
1051 defmacros.
1052
f2cbc0e5
DH
10532002-11-24 Dirk Herrmann <D.Herrmann@tu-bs.de>
1054
1055 * boot-9.scm (re-export-syntax): Re-introduced after accidentally
1056 removing it in my patch from 2002-11-16.
1057
9123414e
DH
10582002-11-24 Dirk Herrmann <D.Herrmann@tu-bs.de>
1059
1060 Thanks to Mikael Djurfeldt for a bugreport which led to the
1061 following changes:
1062
1063 * slib.scm (%system-define): Removed.
1064
1065 (define): Changed to use define-private instead of
1066 %system-define.
1067
1068 * boot-9.scm (define-private): Undid my changes from 2002-11-16
1069 until Guile supports hygienic macros.
1070
50a63003
NJ
10712002-11-17 Neil Jerram <neil@ossau.uklinux.net>
1072
1073 * emacs.scm (emacs-load): Locally define `read-and-eval!', as it
1074 has been removed from the core.
1075
c55bcb32
DH
10762002-11-16 Dirk Herrmann <D.Herrmann@tu-bs.de>
1077
1078 * syncase.scm (define-syntax, eval-when, fluid-let-syntax,
1079 identifier-syntax, let-syntax, letrec-syntax, syntax, syntax-case,
1080 syntax-rules, with-syntax, include): Changed definitions to form
1081 'real' macro definitions.
1082
6aa9ea7c
DH
10832002-11-16 Dirk Herrmann <D.Herrmann@tu-bs.de>
1084
1085 * boot-9.scm (define-private, export-syntax, export-syntax):
1086 Fixed my previous fix (blush).
1087
ab382f52
DH
10882002-11-16 Dirk Herrmann <D.Herrmann@tu-bs.de>
1089
1090 * boot-9.scm (define-private, export-syntax, export-syntax):
1091 Changed definitions to form 'real' macro definitions.
1092
81cf290d
MV
10932002-11-07 Marius Vollmer <marius.vollmer@uni-dortmund.de>
1094
1095 * format.scm (format): Use 'monitor' properly. Not the definition
1096 needs to be restricted, the actual function needs to be.
1097
3f619266
NJ
10982002-11-05 Neil Jerram <neil@ossau.uklinux.net>
1099
1100 * boot-9.scm (define-option-interface): Fix to "simplification"
1101 change below.
1102
1103 * debugger/breakpoints/source.scm: Enable source property
1104 recording when module is loaded.
1105 (##): Cope with ports whose `filename' is not a string.
1106
9124ba8d
NJ
11072002-11-04 Neil Jerram <neil@ossau.uklinux.net>
1108
0983f67f
NJ
1109 * boot-9.scm (define-option-interface): Simplify code-generation
1110 code.
1111
9124ba8d
NJ
1112 * debugger/command-loop.scm (read-and-dispatch-command): Import
1113 set-readline-prompt dynamically if we need to. (Previous
1114 arrangement didn't work if this module was loaded before (ice-9
1115 readline).)
1116
eb2c5dcb
MV
11172002-11-03 Marius Vollmer <mvo@zagadka.ping.de>
1118
1119 * format.scm (format): Wrap a monitor around format:format since
1120 it is not thread-safe.
1121
132fe7af
MV
11222002-10-27 Marius Vollmer <mvo@zagadka.ping.de>
1123
1124 * threads.scm (%thread-handler): Explicitely return '#f'. This
1125 value will be returned by join-thread.
1126
8ee7506b
NJ
11272002-10-26 Neil Jerram <neil@ossau.uklinux.net>
1128
1129 Merging debugger enhancements previously in separate
1130 `guile-debugger' package ...
1131
1132 * debugger.scm: Factored out into the following constituent parts
1133 - see comment in file for more details.
1134 (*not-yet-introduced*): New (avoids repeatedly introducing the
1135 debugger when entering it from breakpoints).
1136 (debug-stack): New.
1137 (debug): Rewrite to use more general `debug-stack'.
1138
1139 * debugger/commands.scm, debugger/command-loop.scm,
1140 debugger/state.scm, debugger/utils.scm: New files containing bits
1141 of old (ice-9 debugger), plus some rewriting and enhancements for
1142 breakpoint support ...
1143
1144 * debugger/state.scm (state-rtd): Add flags field.
1145 (make-state): Extend to optionally take flags.
1146 (state-flags): New, accessor for flags field.
1147 (set-state-index!, set-stack-index!): New.
1148 (write-state-short): Rewritten to print out the current source
1149 location in a way that is more easily trackable by Emacs.
1150
1151 * debugger/commands.scm (assert-continuable, continue, finish,
1152 trace-finish, step, next): New debugger commands for continuing
1153 execution from a breakpoint.
1154
1155 * debugger/behaviour.scm, debugger/breakpoints.scm,
1156 debugger/breakpoints/procedural.scm,
1157 debugger/breakpoints/range.scm, debugger/breakpoints/source.scm,
1158 debugger/trap-hooks.scm, debugger/trc.scm: New files - breakpoint
1159 support.
1160
1161 * Makefile.am (SUBDIRS): Add debugger subdirectory.
1162
1163 * debugger/Makefile.am, debugger/breakpoints/Makefile.am: New.
1164
03453b05
MV
11652002-10-21 Marius Vollmer <mvo@zagadka.ping.de>
1166
1167 * threads.scm (%thread-handler): Do not call unmask-signals, that
1168 should be unnecessary now.
1169
a7785f36
MD
11702002-10-20 Mikael Djurfeldt <mdj@linnaeus>
1171
1172 * boot-9.scm (top-repl): Look for use-emacs-interface in
1173 guile-user-module (should it be there?) instead of
1174 the-root-module.
1175
acfa1f52
MV
11762002-10-10 Marius Vollmer <mvo@zagadka.ping.de>
1177
1178 * boot-9.scm (top-repl): Use 2 as the limit when saving the stack.
1179 (error-catching-loop): use call-with-blocked-asyncs and
1180 call-with-unblocked-asyncs instead of mask-signals and
1181 unmask-signals.
1182
34010f56
NJ
11832002-10-09 Neil Jerram <neil@ossau.uklinux.net>
1184
1185 * buffered-input.scm (make-buffered-input-port): Build an
1186 input-waiting thunk for just extended version of make-soft-port.
1187
9bc54879
RB
11882002-10-04 Rob Browning <rlb@defaultvalue.org>
1189
1190 * boot-9.scm (expt): switch if sense and use negative? rather than
1191 >= 0.
1192
3538c2b2
MV
11932002-10-04 Marius Vollmer <mvo@zagadka.ping.de>
1194
1195 * boot-9.scm (top-repl): Use "1" instead of "%deliver-signals" to
1196 limit the signal stack.
1197
f4232aa6
MV
11982002-09-15 Marius Vollmer <mvo@zagadka.ping.de>
1199
1200 * boot-9.scm (feature?): Added deprecation message.
1201
5fc0857e
RB
12022002-09-14 Rob Browning <rlb@defaultvalue.org>
1203
1204 * boot-9.scm (sqrt): minor indentation fix.
1205
cfcdb8e9
MV
12062002-09-05 Marius Vollmer <mvo@zagadka.ping.de>
1207
1208 * syncase.scm: Set the module transformer of the-syncase-module so
1209 that we can use define-syntax.
1210 (define-syntax-public): New and exported.
1211
12122002-09-04 Marius Vollmer <mvo@zagadka.ping.de>
1213
1214 * syncase.scm (expansion-eval-closure, env->eval-closure): New.
1215 (sc-macro): Set the expansion-eval-closure expanding the form.
1216 (putprop, getprop): Use the expansion-eval-closure to find
1217 variables instead of the current module.
1218
fdf7e1d7
MV
12192002-07-08 Marius Vollmer <mvo@zagadka.ping.de>
1220
1221 * slib.scm (make-exchanger): Added. Thanks to Clinton Ebadi!
1222
7c38399f
DH
12232002-07-07 Dirk Herrmann <D.Herrmann@tu-bs.de>
1224
1225 * boot-9.scm (define-option-interface): Replaced "macro" by
1226 mmacro.
1227
1334c61a
GH
12282002-06-01 Gary Houston <ghouston@arglist.com>
1229
1230 * boot-9.scm (file-set-position): Make third argument optional,
1231 for SCM compatibility.
1232 (file-position): simplify definition.
1233
be87cdb7
MV
12342002-06-01 Marius Vollmer <mvo@zagadka.ping.de>
1235
1236 * boot-9.scm (file-set-position): Use seek instead of fseek.
1237
e717bf46
MV
12382002-05-09 Marius Vollmer <mvo@zagadka.ping.de>
1239
1240 * format.scm (format:out-inf-nan): New.
1241 (format:out-fixed, format:out-expon, format:out-general): Use it
1242 to print infs and nans.
1243
1244 * boot-9.scm (unsetenv): New, for completeness.
1245
9ea4ac37
MV
12462002-05-08 Marius Vollmer <mvo@zagadka.ping.de>
1247
1248 * format.scm (format:fn-max): Increase to 400 so ~f and ~g can
1249 print long real numbers with large positive and negative
1250 exponents.
1251
45845efe
MV
12522002-05-06 Marius Vollmer <mvo@zagadka.ping.de>
1253
1254 * syncase.scm: Use (ice-9 threads) so that with-mutex is defined.
1255
0bd1b44f
TTN
12562002-04-30 Thien-Thi Nguyen <ttn@giblet.glug.org>
1257
1258 * gap-buffer.scm: New file.
1259
1260 * Makefile.am (ice9_sources): Add gap-buffer.scm.
1261
c87af2d5
RB
12622002-03-12 Rob Browning <rlb@defaultvalue.org>
1263
1264 * syncase.scm: fix bad let.
1265 (gensym): fix failure on non-threaded
1266
6c5b8521
TTN
12672002-03-05 Thien-Thi Nguyen <ttn@giblet.glug.org>
1268
1269 * ftw.scm: New file.
1270
1271 * Makefile.am (ice9_sources): Add ftw.scm.
1272
327d4dd3
TTN
12732002-02-26 Thien-Thi Nguyen <ttn@giblet.glug.org>
1274
1275 * Makefile.am: Update path to pre-inst-guile automake frag.
1276
d51b42e2
TTN
1277 * boot-9.scm: Comment grammar fixes; nfc.
1278 Thanks to Christopher Cramer.
1279
46151112
RB
12802002-02-24 Rob Browning <rlb@defaultvalue.org>
1281
1282 * syncase.scm (gensym): redefine locally so we can control it's
1283 properties. This is in preparation for changing the future public
1284 gensym to produce unreadable symbols.
1285
1286 * psyntax.pp: updated to reflect new syncase.scm.
1287
90d4a6b0
TTN
12882002-02-07 Thien-Thi Nguyen <ttn@giblet.glug.org>
1289
1290 * regex.scm: Add commentary; nfc.
1291
0187b4f4
TTN
12922002-02-05 Thien-Thi Nguyen <ttn@giblet.glug.org>
1293
1294 * Makefile.am: Include $(top_srcdir)/pre-inst-guile.am.
1295
1296 (psyntax.pp): Use $(preinstguile).
1297
dd580bd6
MV
12982002-01-14 Marius Vollmer <mvo@zagadka.ping.de>
1299
1300 * psyntax.ss (datum->syntax-object): Removed assertion in
1301 datum->syntax-object that checked if the first argument, a
1302 syntax-object, is an identifier. This was a unconvenient and
1303 unnecessary restriction. Thanks to Dorai Sitaram!
1304
0e6f7775
MV
13052002-01-12 Marius Vollmer <mvo@zagadka.ping.de>
1306
a2f00b9b 1307 More options for pretty-print. Thanks to Matthias Köppe!
0187b4f4 1308
0e6f7775
MV
1309 * pretty-print.scm (generic-write): New per-line-prefix argument.
1310 (pretty-print): Check whether the new keyword argument style is
1311 used and dispatch to pretty-print-with-keys accordingly.
1312
ff0e175c
MV
13132001-11-27 Marius Vollmer <mvo@zagadka.ping.de>
1314
0e6f7775
MV
1315 * format.scm (string-index, list-head): Removed, we already have
1316 these in the core.
ff0e175c 1317
7ab89df1
MV
13182001-11-06 Marius Vollmer <mvo@zagadka.ping.de>
1319
1320 * boot-9.scm (turn-on-debugging): New function, to be used by
1321 scm_compile_shell_switches.
1322
1323 * debug.scm: Do not enable debugging and recording of source
1324 positions.
1325
1a179b03
MD
13262001-10-21 Mikael Djurfeldt <mdj@linnaeus>
1327
1328 * slib.scm (array-indexes): New procedure.
1329 (*features*): Extend. (Probably some of these options should be
1330 set elsewhere.) (Thanks to Aubrey Jaffer.)
1331
1332 * and-let-star-compat.scm, and-let-star.scm, calling.scm,
1333 channel.scm, common-list.scm, debug.scm, debugger.scm,
1334 expect.scm, hcons.scm, lineio.scm, ls.scm, mapping.scm,
1335 null.scm, optargs.scm, poe.scm, popen.scm, pretty-print.scm,
1336 q.scm, r5rs.scm, rdelim.scm, regex.scm, runq.scm, safe-r5rs.scm,
1337 safe.scm, session.scm, slib.scm, streams.scm, string-fun.scm,
1338 syncase.scm, threads.scm: Move module the system directives
1339 `export', `export-syntax', `re-export' and `re-export-syntax'
1340 into the `define-module' form. This is the recommended way of
1341 exporting bindings.
1342
39819fa9
MD
13432001-10-17 Mikael Djurfeldt <mdj@linnaeus>
1344
1345 * boot-9.scm (process-define-module): New options: :export-syntax,
1346 :re-export-syntax
1347
89759084
MD
13482001-10-14 Mikael Djurfeldt <mdj@linnaeus>
1349
1350 * arrays.scm (read:uniform-vector): Return *unspecified* instead
1351 of raising an exception if hash extend character isn't followed by
1352 the array list. (This prevents parsing of uniform vectors from
1353 interfering with parsing of numbers.)
1354
c81f296a
MD
13552001-10-08 Mikael Djurfeldt <mdj@linnaeus>
1356
1357 * emacs.scm (%%load-port, %%emacs-load, %%emacs-eval-request,
1358 %%emacs-select-frame, %%emacs-frame-eval, %%emacs-symdoc,
1359 %%apropos-internal): Use module-define! instead of
1360 builtin-variable.
1361
5d20b8c7
MD
13622001-09-24 Mikael Djurfeldt <mdj@linnaeus>
1363
1364 * boot-9.scm (process-define-module): Added :re-export.
1365
a7a6705e
TTN
13662001-09-19 Thien-Thi Nguyen <ttn@glug.org>
1367
af40357b
TTN
1368 * expect.scm: Commentary fix; nfc.
1369
a7a6705e
TTN
1370 * boot-9.scm (process-use-modules): Fix typo.
1371
29251bef
MD
13722001-09-18 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1373
1374 * Makefile.am (psyntax.pp): Reference compile-psyntax.scm in
1375 $(srcdir) in order to support separate build trees.
1376
2851e5bc
TTN
13772001-09-08 Thien-Thi Nguyen <ttn@revel.glug.org>
1378
1379 * optargs.scm (lambda*): Record the broken-down argument list in
1380 the `arglist' procedure property.
1381 * session.scm (arity): Use new `arglist' procedure property to
1382 present a more detailed argument list.
1383
a2f00b9b 1384 Thanks to Matthias Köppe!
2851e5bc 1385
95e2cd37
TTN
13862001-09-07 Thien-Thi Nguyen <ttn@revel.glug.org>
1387
1388 * getopt-long.scm (process-options, getopt-long): Fix omission
1389 bug: Handle multiple occurrances of an option. Thanks to Daniel
1390 Skarda.
1391
8c494e99
DH
13922001-08-31 Dirk Herrmann <D.Herrmann@tu-bs.de>
1393
1394 * boot-9.scm: Don't load module (ice-9 rdelim).
1395
1396 (feature?): Deprecated.
1397
1398 (id, -1+, return-it, string-character-length, flags,
1399 eval-in-module, split-c-module-name,
1400 (convert-c-registered-modules, registered-modules,
1401 register-modules, warn-autoload-deprecation, init-dynamic-module,
1402 dynamic-maybe-call, dynamic-maybe-link,
1403 find-and-link-dynamic-module, try-using-libtool-name,
1404 try-using-sharlib-name, link-dynamic-module, try-module-linked,
1405 try-module-dynamic-link): Removed.
1406
1407 (module-make-local-var!, module-ensure-local-variable!,
ea2c3968 1408 module-define!): Eliminate call to `variable-set-name-hint!'.
8c494e99
DH
1409
1410 (try-load-module, use-syntax, module-export!): Remove deprecated
1411 functionality.
1412
1413 * format.scm: Remove deprecated definition of format that was
1414 needed to trick export.
1415
431e2ac1
DH
14162001-08-31 Dirk Herrmann <D.Herrmann@tu-bs.de>
1417
1418 * optargs.scm: Remove #& reader extension.
1419
fc6629a7
DH
14202001-08-31 Dirk Herrmann <D.Herrmann@tu-bs.de>
1421
1422 * and-let-star-compat.scm: Deleted.
1423
1424 * Makefile.am: Remove references to and-let-star-compat.scm.
1425
e09c8eb7
TTN
14262001-08-30 Thien-Thi Nguyen <ttn@revel.glug.org>
1427
1428 * boot-9.scm (resolve-interface): When returning a custom
1429 interface, also consult source module's entire binding set,
1430 not just its exported bindings, before throwing error.
1431
b573e744
MV
14322001-08-25 Marius Vollmer <mvo@zagadka.ping.de>
1433
1434 * boot-9.scm (resolve-interface): Get variables from the public
1435 interface of a module instead of from the module itselfs.
1436
969e8e45
MV
14372001-08-25 Marius Vollmer <mvo@zagadka.ping.de>
1438
1439 * Makefile.am (AUTOMAKE_OPTIONS): Change "foreign" to "gnu".
1440
4030287e
TTN
14412001-08-12 Thien-Thi Nguyen <ttn@revel.glug.org>
1442
1443 * getopt-long.scm: Rewrite.
1444 Touch up docstrings.
1445 Augment commentary.
1446
d3b924ba
NJ
14472001-08-02 Neil Jerram <neil@ossau.uklinux.net>
1448
1449 * debugger.scm (run-last-command): Return current state if
1450 last-command fluid is not yet set.
1451
8940c16b
TTN
14522001-08-02 Thien-Thi Nguyen <ttn@revel.glug.org>
1453
1454 * getopt-long.scm: Refill to fit in 80 columns.
1455
1456 (process-long-option): Fix bug: Keep track of `optional'
1457 value-required info and use this to determine whether or not the
1458 next element is to be taken as the option arg.
1459
88c4ba2a
KN
14602001-07-31 Keisuke Nishida <knishida@nurs.or.jp>
1461
29aa75ea
KN
1462 * boot-9.scm (process-define-module): Fixed a bug that did not
1463 handle :use-syntax correctly.
88c4ba2a 1464
11057044
MV
14652001-07-24 Marius Vollmer <mvo@zagadka.ping.de>
1466
1467 * syncase.scm (psyncomp): Removed, it is now in
1468 compile-psyntax.scm.
1469
14702001-07-23 Marius Vollmer <mvo@zagadka.ping.de>
1471
1472 * Makefile.am (psyntax.pp): Enable rule for psyntax.pp only in
1473 maintainer mode. Use compile-psyntax.scm for actual compilation.
1474 Make sure the uninstalled guile is used.
1475 (EXTRA_DIST): Distribute compile-psyntax.scm
1476 * compile-psyntax.scm: New file.
1477
e39bbe80
MG
14782001-07-18 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1479
1480 * and-let-star.scm, debug.scm, debugger.scm, history.scm,
1481 lineio.scm, null.scm, optargs.scm, r4rs.scm, r5rs.scm,
1482 receive.scm, safe-r5rs.scm, streams.scm: Updated copyright notice.
1483
90ee03da
MG
14842001-07-17 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1485
1486 * r5rs.scm: Use `re-export' instead of `export' for re-exported
1487 primitives. Thanks Neil!
1488
22647fef
MV
14892001-07-13 Marius Vollmer <mvo@zagadka.ping.de>
1490
1491 * safe-r5rs.scm: Use `re-export' instead of `export' for
1492 re-exported core bindings. Do not re-export `numerator',
1493 `denominator' and `rationalize' since Guile does not have them.
1494 Continue to use `export' for `null-environment'.
1495
1496 * null.scm: Use `re-export' instead of `export' for re-exported
1497 core bindings. Do not export `unquote' and `unquote-splicing'
1498 since there aren't definitions for them.
1499
1500 * boot-9.scm (compile-interface-spec): Bug fix: the keyword
1501 argument is "renamer" not "rename".
1502
4aea9e7b
RB
15032001-07-09 Rob Browning <rlb@defaultvalue.org>
1504
1505 * boot-9.scm: Fixed the sense of the error message when read-eval?
1506 is #f. Thanks to Matthias for catching this.
1507
8630fdfc
RB
15082001-07-06 Rob Browning <rlb@defaultvalue.org>
1509
1510 * boot-9.scm: added fix suggested by Matthias for #. read
1511 extension -- now only works if read-eval? is not #f.
1512
197edeea
DH
15132001-06-30 Dirk Herrmann <D.Herrmann@tu-bs.de>
1514
1515 * arrays.scm: Don't install a read-hash-extension for 'b': #b
1516 is already defined by R5RS. Further, there is already a working
1517 read syntax for bitvectors, starting with #*.
1518
5dc13e98
MG
15192001-06-30 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1520
1521 * Makefile.am (ice9_sources): Removed tags.scm.
1522
1523 * tags.scm: Removed file.
1524
941614c6
NJ
15252001-06-29 Neil Jerram <neil@ossau.uklinux.net>
1526
1527 Changes to support tracing other than inside the repl-stack that
1528 is set up by the REPL code in boot-9.scm.
8940c16b 1529
941614c6
NJ
1530 * debug.scm (trace-entry, trace-exit): Conditionalize tracing on
1531 whether the current stack id is in `traced-stack-ids'.
1532 (traced-stack-ids, trace-all-stacks?, trace-stack, untrace-stack):
1533 New.
1534
4cda41f6
MV
15352001-06-27 Marius Vollmer <mvo@zagadka.ping.de>
1536
1537 * common-list.scm (member-if): Put in docstring for member-if, it
1538 was a cut-n-paste error previously.
1539
d95c0b76
NJ
15402001-06-26 Neil Jerram <neil@ossau.uklinux.net>
1541
1542 * debug.scm (trace): Set evaluator trap options to handle tracing.
1543 Don't reset trace-level to 0.
8940c16b 1544
d95c0b76
NJ
1545 * boot-9.scm (lazy-handler-dispatch): Remove enter-frame-handler,
1546 apply-frame-handler and exit-frame-handler. (They're replaced by
1547 evaluator trap options.)
1548
fc7a9e81
ML
15492001-06-25 Michael Livshin <mlivshin@bigfoot.com>
1550
1551 * streams.scm (stream-for-each-many): typo fix.
1552
f6581113
MV
15532001-06-25 Marius Vollmer <mvo@zagadka.ping.de>
1554
1555 * boot-9.scm (re-export-syntax): New.
1556
eb6c2de8
MV
15572001-06-16 Marius Vollmer <mvo@zagadka.ping.de>
1558
1559 * boot-9.scm (system-error-errno): New.
1560
0f002b27
MV
15612001-06-14 Marius Vollmer <mvo@zagadka.ping.de>
1562
1563 * common-list.scm (remove-if, remove-if-not): Fix typo: use
1564 `pred', not `pred?', in the body.
1565
60850aed
TTN
15662001-06-13 Thien-Thi Nguyen <ttn@revel.glug.org>
1567
95717232
TTN
1568 * match.scm:
1569 No longer use module `(ice-9 slib)'.
1570 Use module `(ice-9 pretty-print)'.
1571 No longer require `pretty-print'.
1572
1573 (slib:error): Delete.
1574 (match:error, match:syntax-err): Rewrite.
1575
1576 Thanks to Dale P. Smith.
1577
b4b50361 1578 * README: New file.
95717232 1579
60850aed
TTN
1580 * common-list.scm:
1581 Clean up some docstrings; nfc.
1582 Add Commentary.
1583 Update copyright.
1584
7c95e366
MV
15852001-06-11 Marius Vollmer <mvo@zagadka.ping.de>
1586
1587 * boot-9.scm: Use `begin-deprecated' instead of testing
1588 `include-deprecated-features' when conditionally using the (ice-9
1589 rdelim) module. See below.
1590
495c67e5
GH
15912001-06-10 Gary Houston <ghouston@arglist.com>
1592
1593 * boot-9.scm: use the (ice-9 rdelim) module if
1594 include-deprecated-features is true.
1595
6a9003d3
MV
15962001-06-09 Marius Vollmer <mvo@zagadka.ping.de>
1597
1598 * pretty-print.scm (generic-write): Use `object->string' to print
1599 unknown objects.
1600
1601 * optargs.scm (lambda*): Make sure that BODY is always put into a
1602 real body context so that it can contain internal definitions.
a2f00b9b 1603 Thanks to Matthias Köppe!
60850aed 1604
6a9003d3
MV
1605 * format.scm: Use (ice-9 and-let-star).
1606 (format:out): Initialize format:output-col with current column of
1607 `port', if it has one. Else leave it alone. Thanks to Matthias
a2f00b9b 1608 Köppe!
6a9003d3 1609
feeedafb
MV
16102001-06-05 Marius Vollmer <mvo@zagadka.ping.de>
1611
1612 * boot-9.scm (module-ensure-local-variable!): Renamed from
1613 `module-ensure-variable!'. Make sure that there really is a local
1614 variable, not just a visible one.
1615 (module-ensure-variable!): See above.
1616 (module-export!): Behave like always when deprecated features are
1617 enabled, but issue a warning when re-exporting a variable. When
1618 deprecated features are disabled, only export local variables,
1619 creating them uninitialized when they don't yet exist.
1620 (module-re-export!): New. Use this for re-exporting imported
1621 variables.
1622 (re-export): New, to go with `module-re-export!'.
60850aed 1623
feeedafb
MV
1624 * format.scm: Added kluge at top that keeps `export' from
1625 re-exporting the `format' variable of the `(guile)' module.
1626
16272001-06-04 Marius Vollmer <mvo@zagadka.ping.de>
1628
1629 * boot-9.scm (named-module-use!, top-repl): Use resolve-interface
1630 instead of resolve-module to get at the used module.
1631
4bcdfe46
GH
16322001-06-04 Gary Houston <ghouston@arglist.com>
1633
1634 * rw.scm: export write-string/partial.
1635
f480396b
MV
16362001-06-04 Marius Vollmer <mvo@zagadka.ping.de>
1637
1638 Added exception notice to all files.
60850aed 1639
f480396b
MV
1640 * boot-9.scm (module-export!): Revert 2001-06-02 change. It
1641 caused more problems than it solved by accidentally re-exporting
1642 importing bindings once in a while.
1643
c794483c
MV
16442001-06-03 Marius Vollmer <mvo@zagadka.ping.de>
1645
1646 * boot-9.scm (try-load-module): Bracket calls to try-module-linked
1647 and try-module-dynamic-link with `begin-deprecated'.
1648 (split-c-module-name, convert-c-registered-modules,
1649 registered-modules, register-modules, warn-autoload-deprecation,
1650 init-dynamic-module, dynamic-maybe-call, dynamic-maybe-link,
1651 find-and-link-dynamic-module, try-using-libtool-name,
1652 try-using-sharlib-name, link-dynamic-module, try-module-linked,
1653 try-module-dynamic-link): Deprecated. Activate deprecation
1654 message.
f480396b
MV
1655 (define-public): Define binding before exporting it. This is to
1656 avoid accidentally re-exporting a imported binding.
c794483c 1657
b0c16cd9
MV
16582001-06-02 Marius Vollmer <mvo@zagadka.ping.de>
1659
1660 * Makefile.am (psyntax.pp): Make it dependent on psyntax.ss and
1661 fix command so that it works.
1662
1663 * session.scm (apropos-fold, submodules, apropos): Be careful not
1664 to access unbound variables.
1665
1666 * boot-9.scm (module-ensure-variable!): New.
1667 (module-export!): Use it to ensure that there is a variable to
1668 export. Previously, we would always create a new variable, copy
1669 the value over, and export the new variable. This confused
1670 syncase since it keys important properties on variables.
1671
05c64f52
MV
16722001-06-01 Marius Vollmer <mvo@zagadka.ping.de>
1673
1674 * boot-9.scm (top-repl): Revert part of the 2001-05-19 change.
1675 When defining the guile-user module, do not use any modules. Add
1676 them to guile-user when `top-repl' is called.
63b62b73
MV
1677 (resolve-interface): Expect keyword arguments instead of a `spec'.
1678 (compile-interface-spec, compile-define-module-args): New.
1679 (define-module): Use compile-define-module-args to construct
1680 argument for process-define-module.
1681 (use-modules, use-syntax): Use compile-interface-spec to construct
1682 arguments for process-use-modules.
1683 (process-define-module): Expect keywords in argument list.
05c64f52 1684
0120801d
MV
16852001-05-25 Marius Vollmer <mvo@zagadka.ping.de>
1686
f4e0611e
MV
1687 * boot-9.scm (cond-expand): Define using
1688 `procedure->memoizing-macro' to get at the lexical environment.
1689 Use `env-module' instead of `current-module' to get the right
1690 module.
1691
0120801d
MV
1692 * Makefile.am (ice9_sources): Added "pretty-print.scm".
1693 * pretty-print.scm: New file, copied from SLIB.
f4e0611e
MV
1694 (generic-write): Return the `unspecified' value.
1695
0120801d
MV
1696 * format.scm: Autoload `pretty-print'.
1697
b9b8f9da
MG
16982001-05-23 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1699
1700 * boot-9.scm (%cond-expand-table): New hash table mapping modules
1701 to feature lists.
1702 (cond-expand): Use feature information associated with modules.
1703
17042001-05-21 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1705
1706 * boot-9.scm (use-srfis): Do not extend the srfi-0 feature list.
1707 (cond-expand-provide): New procedure.
60850aed 1708
a6219f22
MV
17092001-05-22 Marius Vollmer <mvo@zagadka.ping.de>
1710
1711 * boot-9.scm (define-module): Return the new module.
1712 (process-define-module): Use `spec' instead of `module-name' when
a2f00b9b 1713 getting the syntax transformer. Thanks to Matthias Köppe!
a6219f22 1714
311b6a3c
MV
17152001-05-21 Marius Vollmer <mvo@zagadka.ping.de>
1716
bab34d2a
MV
1717 * boot-9.scm (use-syntax): Do not set scm:eval-transformer when
1718 deprecated features have been removed. Thanks to Dale P. Smith!
1719
311b6a3c
MV
1720 * optargs.scm (#\&): Use `issue-deprecation-warning' instead of
1721 `display'.
1722
e4e1ea73
MV
17232001-05-19 Marius Vollmer <mvo@zagadka.ping.de>
1724
1725 * psyntax.ss (build-lexical-var): Use gensym instead of gentemp.
1726 * match.scm: Likewise.
1727 * expect.scm: Likewise.
1728 * psyntax.pp: Regenerated.
60850aed 1729
e4e1ea73
MV
1730 * rdelim.scm: Call `%init-rdelim-builtins'.
1731
1732 * rw.scm: Call `%init-rw-builtins'.
1733
1734 * boot-9.scm (process-define-module): Do not call
1735 set-current-module.
1736 (define-module): Do it here, in the expansion.
1737 (top-repl): Do not define '(guile-user)' module and conditionally
1738 load `(ice-9 threads)' and/or `(ice-9 regex)' here. Do it on
1739 top-level as the last thing in boot-9.scm instead.
1740 (%load-path): Use `list' instead of `cons' to create a single
1741 element list when adding "." to it.
1742 (process-define-module, process-use-modules, module-export!): Add
1743 dummy definitions prior to booting the mdule system.
1744
adcbdb16
TTN
17452001-05-18 Thien-Thi Nguyen <ttn@revel.glug.org>
1746
d28690d7
TTN
1747 * boot-9.scm: (resolve-interface, use-srfis): Small
1748 cleanup; nfc.
1749 (process-define-module): Internal proc `unrecognized'
1750 now accepts arg; update callers.
1751 Reverse order of interfaces added to module to be
1752 consistent with that specified in `define-module' form.
1753
d58f1edf
TTN
1754 * session.scm: (help): Use `provided?' instead of `feature?'.
1755 Factor "TYPE not found for X" output into internal proc.
1756 Support `(quote SYMBOL)'; call `search-documentation-files'.
1757 (help-doc): If initial search fails, try using
1758 `search-documentation-files'.
1759 (apropos-fold-accessible, apropos-fold-all): Use `identity'
1760 instead of `(lambda (x) x)'. "An identity edit", ha ha.
3125fbe0 1761 (help-usage): Mention support for "(help 'NAME)".
d58f1edf 1762
adcbdb16
TTN
1763 * documentation.scm: Fix documentation for Guile Documentation
1764 Format Version 2: Mention required terminating newlines.
1765
1766 (find-documentation): Delete.
1767 (search-documentation-files): New proc, exported.
1768 (object-documentation): Use `search-documentation-files'.
1769
f41be016
MG
17702001-05-15 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1771
1772 * boot-9.scm (cond-expand-features): Made the feature list public,
1773 so it can be manipulated by `use-srfis'.
1774 (use-srfis): New procedure.
1775
7dfc3d0f
TTN
17762001-05-15 Thien-Thi Nguyen <ttn@revel.glug.org>
1777
1778 * boot-9.scm (resolve-interface): Signal error now also if
1779 used module's public interface is not available.
1780 No longer call `beautify-user-module!'.
1781 Signal error now also if selected binding not found.
1782
f3f9dcbc
MV
17832001-05-10 Marius Vollmer <mvo@zagadka.ping.de>
1784
1785 Merge from mvo-vcell-clenaup-1-branch.
7dfc3d0f 1786
f3f9dcbc
MV
1787 * session.scm (apropos): Do not use `builtin-bindings', always use
1788 the module obarray.
1789 (apropos-fold): Likewise.
1790
1791 * optargs.scm (bound?): Removed. We should not play games with
1792 the magical undefined value.
1793 (let-o-k-template): Use `#f' instead of the undefined value as
1794 the default default for bindings.
7dfc3d0f 1795
f3f9dcbc
MV
1796 * boot-9.scm (module-make-local-var!): Do not pass name hint to
1797 make-undefined-variable, use `variable-set-name-hint!' instead.
1798 (root-module-closure): Removed.
1799 (make-root-module): Set the obarray of the module to the
1800 `pre-modules-obarray'. Do not use a lazy binder.
1801 (scm-module-closure): Removed.
1802 (make-root-module): Set the obarray of the module to the
1803 `pre-modules-obarray'. Do not use a lazy binder. Set the
1804 eval-closure to a `standard-interface-eval-closure'.
1805 (module-define!): Do not pass name hint to make-variable, use
1806 `variable-set-name-hint!' instead.
1807 (make-modules-in, beautify-user-module, resolve-module): Moved
1808 towards the beginning of boot-9.scm, across the call to
1809 set-current-module that boots the module system. These
1810 definitions need to be visible at the time of the first
1811 `set-current-module' call.
1812 (try-module-autoload): Define a `#f' before the call to
1813 set-current-module. It is redefined later.
1814
1815 * debug.scm: Use `module-set!' instead of `variable-set!' to set
1816 insert `debug-options' into the-root-module.
1817 * format.scm: Likewise, for `format'.
1818
11bbab47
MV
18192001-05-15 Marius Vollmer <mvo@zagadka.ping.de>
1820
1821 * boot-9.scm (error-catching-repl): Call the E
1822 ("eval'er") procedure via call-with-values and call the P
a2f00b9b 1823 ("printer") for each produced value. Thanks to Matthias Köppe!
11bbab47 1824
1d00af09
MG
18252001-05-14 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1826
1827 * boot-9.scm (cond-expand): Reduce feature list to built-in
1828 features.
1829
5cd06d5e
DH
18302001-05-14 Dirk Herrmann <D.Herrmann@tu-bs.de>
1831
1832 * boot-9.scm (-1+, return-it, string-character-length, flags):
1833 Deprecated.
1834
7f24bc58
MG
18352001-05-11 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1836
1837 * boot-9.scm: Added `cond-expand' (SRFI-0) for portable feature
1838 checking.
1839
7787297b
TTN
18402001-05-10 Thien-Thi Nguyen <ttn@revel.glug.org>
1841
1842 * boot-9.scm (resolve-module): Abstraction maintenance: Use
1843 `module-public-interface'.
f3f9dcbc 1844 (resolve-interface): Extend to handle selection and renaming in spec.
7787297b
TTN
1845 Arg is now `spec' which can be a simple module name (list of symbols)
1846 or a interface spec.
1847 (symbol-prefix-proc): New proc.
1848 (%autoloader-developer-mode): Delete.
1849 (process-define-module): Use "define-module" in error messages
1850 instead of "defmodule". Factor error into internal proc.
1851 Rewrite `use-module' and `use-syntax' handlers.
1852 Replace some single-arm `if-not' constructs w/ `or'.
1853 (process-use-modules): Arg is now `module-interface-specs',
1854 which is passed through to `resolve-interface' as before; nfc.
1855 (named-module-use!, top-repl): Abstraction maintenance: Use
1856 `provided?'.
1857
7874f3d0
TTN
18582001-05-06 Thien-Thi Nguyen <ttn@revel.glug.org>
1859
1860 * q.scm, runq.scm, getopt-long.scm: Update copyright.
1861 Surround commentary w/ standard markers; nfc.
1862
1863 * expect.scm: Update copyright.
1864 Fix commentary typo; nfc.
1865
677cd590
RB
18662001-05-05 Rob Browning <rlb@cs.utexas.edu>
1867
1868 * psyntax.ss: make sure emacs knows it's scheme code.
1869
4879243c
NJ
18702001-05-05 Neil Jerram <neil@ossau.uklinux.net>
1871
1872 * boot-9.scm (use-syntax): Change error message to say
1873 `use-syntax' rather than `use-modules'.
1874
c2c43dab
MG
18752001-05-02 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1876
1877 * safe-r5rs.scm: Fix typo: make-rectangualr => make-rectangular.
1878
41ed8fed
MV
18792001-05-02 Marius Vollmer <mvo@zagadka.ping.de>
1880
1881 * boot-9.scm (begin-deprecated): New.
1882 (call-with-deprecation): Removed.
1883 (id): Use `issue-deprecation-warning' instead of
1884 `call-with-deprecation'. Wrap definition in `begin-deprecated'.
1885 (eval-in-module): Manifest deprecation via `begin-deprecation' and
1886 `issue-deprecation-warning'.
1887 (warn-autoload-deprecation): Deactivated.
7874f3d0 1888
c8127e2f
MV
18892001-04-26 Marius Vollmer <mvo@zagadka.ping.de>
1890
1891 * boot-9.scm (the-module, set-current-module, current-module):
1892 Removed, they are now defined in libguile.
1893
9a6fb164
GH
18942001-04-29 Gary Houston <ghouston@arglist.com>
1895
1896 * rw.scm: new file, for module (ice-9 rw).
1897 * Makefile.am: add rw.scm.
1898
a7981b6d
TTN
18992001-04-28 Thien-Thi Nguyen <ttn@revel.glug.org>
1900
1901 * boot-9.scm, optargs.scm:
1902 Surround commentary w/ standard markers; nfc.
1903
1904 * threads.scm, time.scm, channel.scm, expect.scm:
1905 Add commentary; nfc.
1906
835b2c87
TTN
19072001-04-27 Thien-Thi Nguyen <ttn@revel.glug.org>
1908
1909 * documentation.scm: Update copyright.
1910 Add commentary.
1911 Use `define-module' `:export' clause instead of `define-public'.
1912 Autoload (ice-9 regex) on `match:suffix'.
1913
1914 (default-in-line-re, default-after-line-re): New vars.
1915 (default-scrub): New proc.
1916 (file-commentary): New proc, exported.
1917 (object-documentation): Expand docstring; nfc.
1918
1919 * session.scm: Update copyright.
1920 Use (ice-9 rdelim).
1921
1922 (help): Consider a list of symbols that does not start with
1923 `quote' as a module name and call `module-commentary' on it.
1924 (module-filename, module-commentary): New procs.
1925 (id): Delete.
1926 (apropos): Use `identity' instead of deprecated `id'.
1927 (help-usage): Add blurb about "(help (my module))" support.
1928
7a6a68b1
MG
19292001-04-27 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1930
1931 * Makefile.am (ice9_sources): Remove srfi-8.scm.
1932
89448795
RB
19332001-04-26 Rob Browning <rlb@cs.utexas.edu>
1934
1935 * srfi-8.scm: removed in favor of srfi/srfi-8.scm - (wasn't ever
1936 in a production release).
1937
2d857fb1
KN
19382001-04-25 Keisuke Nishida <kxn30@po.cwru.edu>
1939
1940 * channel.scm: New file.
0d3e064b 1941 * Makefile.am (ice9_sources): Include channel.scm.
2d857fb1 1942
454a8a8f
KN
19432001-04-19 Keisuke Nishida <kxn30@po.cwru.edu>
1944
1945 * receive.scm (receive): Use `define-macro'.
1946
ff5546f5
KN
19472001-04-15 Keisuke Nishida <kxn30@po.cwru.edu>
1948
1949 * boot-9.scm (load-compiled): New variable, initialized in the VM.
1950 (try-module-autoload): Try loading compiled modules if applicable.
1951
6b08d75b
KN
19522001-04-15 Keisuke Nishida <kxn30@po.cwru.edu>
1953
1954 * boot-9.scm (call-with-deprecation): New procedure.
1955 (identity): New procedure.
835b2c87 1956 (id): Deprecated.
6b08d75b 1957
8add1522
KN
19582001-04-15 Keisuke Nishida <kxn30@po.cwru.edu>
1959
1960 * boot-9.scm (defmacro, define-macro, define-syntax-macro):
1961 Define only at the top level.
1962
a8944ae1
TTN
19632001-04-06 Thien-Thi Nguyen <ttn@revel.glug.org>
1964
1965 * threads.scm: Update copyright.
1966
1967 Use `export' and `export-syntax' instead of
1968 `define-public' and `defmacro-public'.
1969
1970 (make-thread): Rename first arg to `proc'; nfc.
1971 (begin-thread, monitor): Rename second arg to `rest'; nfc.
1972 (with-mutex): Rename second arg to `body'; nfc.
1973
64143414
NJ
19742001-04-06 Neil Jerram <neil@ossau.uklinux.net>
1975
1976 * boot-9.scm (warn-autoload-deprecation): Close parenthesis in
1977 "You just tried to autoload ..." message.
1978
5273f7c9
KN
19792001-04-05 Keisuke Nishida <kxn30@po.cwru.edu>
1980
1981 * Makefile.am (ice9_sources): Add history.scm.
b727d0bd 1982 * history.scm: Create the module (value-history) at the beginning.
5273f7c9 1983
16c634ec
MV
19842001-03-29 Marius Vollmer <mvo@zagadka.ping.de>
1985
1986 * boot-9.scm (init-dynamic-module): Fix typo in call to
1987 warn-autoload-deprecation. I feel silly.
1988
8c2c9967
MV
19892001-03-27 Marius Vollmer <mvo@zagadka.ping.de>
1990
1991 * r4rs.scm (call-with-values): New definition, defers to
1992 @call-with-values.
1993
19942001-03-26 Marius Vollmer <mvo@zagadka.ping.de>
1995
1996 * boot-9.scm (warn-autoload-deprecation): New function.
1997 (init-dynamic-module): Use it here to print warning. Only give
1998 warning when a module has actually been found.
1999
62532db3
MV
20002001-03-25 Marius Vollmer <mvo@zagadka.ping.de>
2001
8c2c9967
MV
2002 * boot-9.scm (init-dynamic-module): Issue warning about
2003 auto-loading of compiled code modules being deprecated.
2004
62532db3
MV
2005 * Makefile.am (ice9_sources): Added "time.scm".
2006
3b9e23a7
KN
20072001-03-20 Keisuke Nishida <kxn30@po.cwru.edu>
2008
2009 * time.scm (time): Reimplemented as a procedure call.
2010 (Thanks to Marius Vollmer)
2011
c40eb594
KN
20122001-03-20 Keisuke Nishida <kxn30@po.cwru.edu>
2013
2014 * safe-r5rs.scm (list): Export.
2015
870777d7
KN
20162001-03-17 Keisuke Nishida <kxn30@po.cwru.edu>
2017
2018 * boot-9.scm (before-eval-hook, after-eval-hook,
2019 before-print-hook, after-print-hook): New hooks.
2020 (scm-style-repl): Call these hooks.
2021
2022 * history.scm: New file.
2023
5e38caf1
KN
20242001-03-17 Keisuke Nishida <kxn30@po.cwru.edu>
2025
2026 * time.scm: New file.
2027
656dfde1
DH
20282001-03-17 Dirk Herrmann <D.Herrmann@tu-bs.de>
2029
2030 * oldprint.scm: Removed.
2031
8cdeee7d
MD
20322001-03-12 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
2033
2034 * arrays.scm (make-array): Added quote in front of ().
2035
d69947f7
KN
20362001-03-12 Keisuke Nishida <kxn30@po.cwru.edu>
2037
2038 * common-list.scm (count-if): New procedure.
2039
451d273a
NJ
20402001-03-10 Neil Jerram <neil@ossau.uklinux.net>
2041
2042 * buffered-input.scm (make-buffered-input-port): New, more general
2043 buffered input procedure. Does not assume that a newline
2044 character should be interpolated between chunks of input returned
2045 by the reader proc.
2046 (make-line-buffered-input-port): Redefine in terms of
2047 make-buffered-input-port.
2048
406d8344
KN
20492001-03-09 Keisuke Nishida <kxn30@po.cwru.edu>
2050
2051 * match.scm: Don't export defstruct. Use (unquote defstruct) instead.
2052
0c6f9602
MD
20532001-03-09 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
2054
2055 * Makefile.am (psyntax.pp): Added rule for producing psyntax.pp.
2056
a55134ed
KN
20572001-03-09 Keisuke Nishida <kxn30@po.cwru.edu>
2058
2059 * match.scm: export defstruct.
2060
86b96c16
MD
20612001-03-08 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
2062
2063 * psyntax.ss: Added FSF copyright notice. Added a notice of
3ffd876a
MD
2064 changes in order to comply with paragraph 2a of the GPL. (Thanks
2065 to Keith Wright.)
86b96c16 2066
403a3345
NJ
20672001-03-07 Neil Jerram <neil@ossau.uklinux.net>
2068
2069 * buffered-input.scm (make-line-buffered-input-port): Don't set
2070 the continuation flag for leading whitespace. Thanks to Dirk
2071 Herrmann for the suggestion.
2072
9155e458
NJ
20732001-03-05 Neil Jerram <neil@ossau.uklinux.net>
2074
61819670
NJ
2075 * optargs.scm (rest-arg->keyword-binding-list): Use "'()" instead
2076 of "()".
2077
9155e458
NJ
2078 * buffered-input.scm: New file, with guts of line buffered input
2079 port implementation extracted from guile-readline/readline.scm.
2080
0109c4bf
MD
20812001-03-03 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
2082
2083 * stack-catch.scm: New file.
2084
2085 * Makefile.am (ice9_sources): Added stack-catch.scm.
2086
2fd945df
MV
20872001-03-03 Marius Vollmer <mvo@zagadka.ping.de>
2088
2089 * boot-9.scm, rdelim.scm: Use "'()" instead of "()" in all places
2090 where the empty list is meant.
2091
704f4e86
MD
20922001-02-26 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
2093
2094 * boot-9.scm (save-stack): Use `primitive-eval' for stack
2095 cutting. Makes backtraces work again! Also added a reference to
2096 save-stack from the place in the repl where the primitive-eval
2097 frame is invoked.
2098
c8762438
KN
20992001-02-25 Keisuke Nishida <kxn30@po.cwru.edu>
2100
2101 * match.scm: New file, including Andrew K. Wright's pattern matcher.
51e7dab6 2102 * Makefile.am (ice9_sources): Added match.scm.
c8762438 2103
b8d69b37
MV
21042001-02-16 Marius Vollmer <mvo@zagadka.ping.de>
2105
2106 * boot-9.scm (eval-when, eval-case): Renamed `eval-when' to
2107 `eval-case', everywhere.
2108
7af4defe
MV
21092001-02-13 Marius Vollmer <mvo@zagadka.ping.de>
2110
2111 * boot-9.scm (define-public): Removed spurious call to
2112 `interaction-evironment'.
2113 (define-public, defmacro-public): Use `export' instead of explicit
2114 module magic.
2115 (eval-when): New macro.
2116 (define-module, use-modules, use-syntax, export): Use it to
2117 restrict the use of these forms to the top level.
2118 (define-public, defmacro-public): Only export binding when on
2119 top-level.
2120 (process-define-module): Call `set-current-module' with the
2121 defined module.
2122 (define-module): Simply call `process-define-module' without any
2123 fuss (but only on top-level).
2124 (named-module-use!): New function.
2125 (top-repl): Do not use `define-module'. Use equivalent low-level
2126 means instead.
a8944ae1 2127
ec9709f0
MV
21282001-02-11 Marius Vollmer <mvo@zagadka.ping.de>
2129
2130 * boot-9.scm (scm-style-repl): Use `primitive-eval' instead of
2131 `eval'.
2132 (define-public): Do not use `eval'.
2133
548728ea
MV
21342001-02-08 Marius Vollmer <marius.vollmer@uni-dortmund.de>
2135
2136 * and-let-star-compat.scm: Display the warning to the
2137 `current-error-port'.
a8944ae1 2138
fbf0c8c7
MV
21392001-02-04 Marius Vollmer <mvo@zagadka.ping.de>
2140
2141 Avoid the use of "*" in file names for the benefit of lesser
2142 operating systems.
a8944ae1 2143
fbf0c8c7
MV
2144 * and-let-star.scm, and-let*.scm: Renamed `and-let*.scm' to
2145 `and-let-star.scm'. Updated module name as well.
2146 * and-let-star-compat.scm: New file, installed as `and-let*.scm'.
2147 * Makefile.am (ice9_sources): Replaced "and-let*.scm" with
2148 "and-let-star.scm".
2149 (install-data-local): Install "and-let-star-compat.scm" as
2150 "and-let*.scm", ignoring errors.
2151 (EXTRA_DIST): Distribute `and-let-star-compat.scm'.
a8944ae1 2152
e9bab9df
DH
21532001-01-26 Dirk Herrmann <D.Herrmann@tu-bs.de>
2154
2155 This patch fixes a problem reported by Martin Grabmueller about
2156 the impossibility to access readline's run-time options.
2157
2158 * boot-9.scm (define-option-interface): New macro. Allows to
2159 conveniently define a group of option interface functions.
2160
2161 (readline-options readline-enable readline-disable,
2162 readline-set!): Moved to guile-readline/readline.scm.
2163
6d36532c
GH
21642001-01-24 Gary Houston <ghouston@arglist.com>
2165
2166 * boot-9.scm: don't import (ice-9 rdelim) here. it's done
2167 in C for now.
2168 * rdelim.scm: export the C primitives too.
2169 * documentation.scm: use (ice-9 rdelim).
2170
9d774814
GH
21712001-01-21 Gary Houston <ghouston@arglist.com>
2172
2173 * rdelim.scm: new file implementing module (ice-9 rdelim).
2174 * ice-9.scm (scm-line-incrementors read-line! read-delimited!
2175 read-delimited read-line): moved to rdelim.scm.
2176 scm-line-incrementors is not exported.
2177 * boot-9.scm: import (ice-9 rdelim) for backwards compatibility,
2178 for now.
2179 * lineio.scm: use module (ice-9 rdelim).
2180 * Makefile.am (ice9_sources): add rdelim.scm.
2181
17466330
DH
21822000-12-29 Dirk Herrmann <D.Herrmann@tu-bs.de>
2183
2184 * boot-9.scm (root-module-closure, scm-module-closure): Remove
2185 calls '(symbol-interned? #f s)'. Formerly, these calls were
2186 basically no-ops, guaranteed to return #t if 's' was a symbol.
2187 After the separation of symbols and bindings, a call to
2188 '(symbol-interned? #f s)' will only return #t if there really is a
2189 binding for 's' in the scm_symhash table. Thanks to Dale P. Smith
2190 for providing a test case that helped finding this bug.
2191
10764e3c
DH
21922000-12-13 Dirk Herrmann <D.Herrmann@tu-bs.de>
2193
2194 * session.scm (apropos): Completed the last patch, which did only
2195 half the job. Thanks to Dale P. Smith.
2196
b52e071b
DH
21972000-12-12 Dirk Herrmann <D.Herrmann@tu-bs.de>
2198
2199 * session.scm (apropos, apropos-fold): There are no weak bindings
2200 any more.
2201
6b098fec
DH
22022000-12-12 Dirk Herrmann <D.Herrmann@tu-bs.de>
2203
2204 * boot-9.scm (top-repl): Lookup 'use-emacs-interface in
2205 the-root-module.
2206
40fa5c3f
NJ
22072000-12-07 Neil Jerram <neil@ossau.uklinux.net>
2208
2209 * emacs.scm (flush-whitespace): Fix spelling typo ("recieving").
2210
4e15fee8
DH
22112000-11-28 Dirk Herrmann <D.Herrmann@tu-bs.de>
2212
2213 * boot-9.scm (read-delimited), lineio.scm
2214 (make-line-buffering-input-port), regex.scm (match:prefix,
2215 match:suffix, match:substring, regexp-substitute/global), slib.scm
2216 (slib-parent-dir), string-fun.scm (split-after-char,
2217 split-before-char, split-discarding-char, split-after-char-last,
2218 split-before-char-last, split-discarding-char-last,
2219 split-before-predicate, split-after-predicate,
2220 split-discarding-predicate, separate-fields-discarding-char,
2221 separate-fields-after-char, separate-fields-before-char,
2222 string-prefix-predicate, sans-surrounding-whitespace,
2223 sans-trailing-whitespace, sans-leading-whitespace,
2224 sans-final-newline): Use substring instead of
2225 make-shared-substring.
2226
3923fa6d
GH
22272000-11-26 Gary Houston <ghouston@arglist.com>
2228
2229 * boot-9.scm: values?, get-values, values, call-with-values:
2230 removed. values and call-with-values are now primitives and
2231 the other two were only exported by accident. don't define
2232 *values-rtd* record type or handle multiple values in
2233 scm-style-repl.
2234
a9c632a2
GH
22352000-11-07 Gary Houston <ghouston@arglist.com>
2236
2237 * popen.scm (open-output-pipe): added docstrings for open-input-pipe
2238 and open-output-pipe.
2239
8ccc61e8
GH
22402000-11-06 Gary Houston <ghouston@arglist.com>
2241
2242 * popen.scm (open-process): bug fix: don't use
2243 close-all-ports-except to close ports in the child process, since
2244 it causes port buffers to be flushed. they may be flushed again
2245 in the parent, causing duplicate output. use a more elaborate
2246 method for setting up the child descriptors (thanks to David
2247 Pirotte for the bug report).
2248 standard file descriptors 0, 1, 2 in the child process
2249 are now set up from current-input-port etc., where possible.
a8944ae1 2250
f304437e
DH
22512000-10-10 Dirk Herrmann <D.Herrmann@tu-bs.de>
2252
2253 * syncase.scm (eval): string=? requires a string argument.
2254 Thanks to Dale P. Smith for the patch.
2255
b4ad0dda
NJ
22562000-10-15 Neil Jerram <neil@ossau.uklinux.net>
2257
2258 * optargs.scm: Fix typos in commentary for bound? and lambda*.
2259
4adc3028
DH
22602000-10-10 Dirk Herrmann <D.Herrmann@tu-bs.de>
2261
2262 * session.scm (apropos, apropos-fold): regexp-exec does not
2263 accept symbol arguments any more. Thanks to Dale P. Smith for the
2264 patch.
2265
deaecea7
GH
22662000-09-30 Gary Houston <ghouston@arglist.com>
2267
2268 * posix.scm (setgrent): pass #t, not #f. thanks to
2269 Jacques A. Vidrine.
2270
db611983
NJ
22712000-09-29 Neil Jerram <neil@ossau.uklinux.net>
2272
2273 * documentation.scm (find-documentation-in-file): Modified
2274 according to changed format of guile-procedures.txt caused by my
2275 snarfing/makeinfo changes in libguile.
2276
2277 * session.scm (help-doc): Improvements to (help) output: (i) a
2278 friendlier Emacs-style introduction line; (ii) where the help arg
2279 matches multiple documented entries, print an initial list of the
2280 entries for which documentation is found, before printing the
2281 actual documentation entries themselves.
2282
f7b0a8d1
MV
22832000-09-20 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2284
2285 * boot-9.scm: Removed comment. (Thanks to Brad Knotwell.)
2286
a5b265e3
DH
22872000-09-12 Dirk Herrmann <D.Herrmann@tu-bs.de>
2288
2289 * syncase.scm (putprop): Use the high-level property interface.
2290
0eee4466
MD
22912000-09-12 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
2292
2293 * psyntax.ss (build-lexical-var): Use gentemp instead of gensym;
2294 Convert first argument to a string.
2295
2296 * calling.scm (excursion-function-syntax,
2297 getter-and-setter-syntax,
2298 delegating-getter-and-setter-syntax): Call gensym with string
2299 argument. (Thanks to Dale P. Smith.)
2300
2301 * oldprint.scm (print-table-add!): Ditto.
2302
2303 * boot-9.scm (gentemp): Moved to symbols.c.
2304
8c142820
MV
23052000-08-27 Marius Vollmer <mvo@zagadka.ping.de>
2306
2307 * boot-9.scm (make-object-property): New function.
2308
0745d387
MD
23092000-08-26 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
2310
2311 * boot-9.scm (make-record-type): Use `string-append' instead of
2312 `symbol-append'.
2313 (symbol-append): Map `symbol->string' on
2314 args.
2315 (obarray-symbol-append, obarray-gensym): Simply removed. I don't
2316 think I'll announce this in NEWS even. One of the functions never
2317 even worked... /mdj.
2318 (find-and-link-dynamic-module, keyword->symbol): Use
2319 `symbol->string'.
2320 (try-module-autoload, process-define-module): Rewrote using R5RS
2321 semantics.
2322
9f174131
MD
23232000-08-24 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2324
2325 * psyntax.ss (set!): Added generalized set! support to core syntax
2326 form set!.
2327
5aba8e27
MV
23282000-08-19 Marius Vollmer <mvo@zagadka.ping.de>
2329
2330 * optargs.scm (#\&): Changed #:allow-other-keys-value to
2331 #:allow-other-keys. Thanks to Bill Schottstaedt!
2332
6219924c
MV
23332000-08-17 Marius Vollmer <mvo@zagadka.ping.de>
2334
2335 * optargs.scm (#\&): Emit warning about `#&' being deprecated.
2336
76ef92f3
MV
23372000-08-16 Marius Vollmer <mvo@zagadka.ping.de>
2338
2339 * optargs.scm: Replaced `#&' reader syntax with keywords.
2340
d6f37755
MD
23412000-08-14 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2342
2343 * format.scm (format:obj->str): Made tail-recursive. (Thanks to
a2f00b9b 2344 Matthias Köppe.)
d6f37755 2345
c4778010
MD
23462000-08-13 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
2347
2348 * psyntax.ss (top-level-eval-hook, local-eval-hook): Pass
2349 `(interaction-environment)' as second arg to `eval'. This is
2350 completely equivalent with the state before the change to eval of
2351 2000-08-11, but we should extend psyntax.ss to be module aware.
2352 (Thanks to Ian Bicking.)
2353
2354 * emacs.scm (emacs-symdoc): Parenthesis fix.
2355
3a33a9b1
MD
23562000-08-11 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
2357
f7de400a
MD
2358 * r5rs.scm (interaction-environment): Removed definition. (Is now
2359 provided by libguile/modules.c.)
2360
2361 * safe-r5rs.scm (null-environment): Bugfix: Should include
2362 syntactic bindings.
2363
3a33a9b1
MD
2364 * boot-9.scm (record-constructor, record-accessor,
2365 record-modifier, scm-style-repl): Add second arg to eval.
2366 (read-hash-extend #\.): Ditto. (This is actually a bugfix!)
2367 (eval-in-module): Redefined to be eval and deprecated.
2368
2369 * syncase.scm (eval): Add second arg both in definition and use.
2370
2371 * slib.scm (slib:eval): Use eval instead of eval-in-module.
2372 (defmacro:eval): Eval in (interaction-environment).
2373
2374 * safe-r5rs.scm (eval): Removed definition.
2375
a8944ae1 2376 * emacs.scm (emacs-eval-request):
3a33a9b1
MD
2377 (emacs-symdoc): (This procedure needs updating!)
2378
1807c7b8
MD
23792000-08-10 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
2380
3a33a9b1
MD
2381 * boot-9.scm: Added note about dependency in modules.h to
2382 definition of module-type.
2383
1807c7b8
MD
2384 * Makefile.am (ice9_sources): Added receive.scm, srfi-8.scm.
2385
2386 * receive.scm, srfi-8.scm: New files.
2387
2388 * boot-9.scm (scm-style-repl): Print multiple values on successive
2389 lines.
2390 (process-define-module): Bugfix: Make sure that exports are done
2391 *after* all used interfaces has been added.
2392
b73bde31
MV
23932000-07-24 Marius Vollmer <mvo@zagadka.ping.de>
2394
2395 * common-list.scm (uniq): Made tail-recursive. Thanks to thi!
2396
22381005
DH
23972000-07-13 Dirk Herrmann <D.Herrmann@tu-bs.de>
2398
2399 * boot-9.scm (expt): In case of negative integer exponents return
2400 an exact result if the input paramters were exact. Thanks to
2401 Mikael for the suggestion.
2402
24511502
DH
24032000-07-12 Dirk Herrmann <D.Herrmann@tu-bs.de>
2404
2405 * boot-9.scm (expt): Make sure that integer-expt is only called
2406 if the exponent is a non-negative integer.
2407
45036de1
MD
24082000-07-01 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
2409
2410 * boot-9.scm (process-define-module): Bugfix: Only check the CDR
2411 for export args.
2412
ac373580
DH
24132000-06-27 Dirk Herrmann <D.Herrmann@tu-bs.de>
2414
2415 * popen.scm: gc-thunk is deprecated. Use after-gc-hook instead.
2416
e5d2c2fa
DH
24172000-06-16 Dirk Herrmann <D.Herrmann@tu-bs.de>
2418
2419 * common-list.scm (intersection, set-difference, remove-if,
2420 remove-if-not): Made tail-recursive. Thanks to William Webber
2421 for the hint.
2422
2423 (delete-if!, delete-if-not!): Renamed parameter from `list' to
2424 `l' in order to avoid confusion. Note: These functions are not
2425 tail recursive yet.
2426
c0997079
MD
24272000-06-21 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
2428
2b6e0d2b
MD
2429 * boot-9.scm: Turned `the-module', `*top-level-lookup-closure*',
2430 and `scm:eval-transformer' into fluids.
2431
c0997079
MD
2432 * boot-9.scm (purify-module!, module-export!): New procedures.
2433 (export): Rewritten using `module-export!'.
2434 (process-define-module): New define-module options: pure, export.
2435 See NEWS.
2b6e0d2b 2436 (scm-style-repl): Added optional module argument.
a8944ae1 2437
c0997079
MD
2438 * null.scm, r5rs.scm, safe-r5rs.scm, safe.scm: New modules.
2439
8b2294f7
MD
24402000-06-20 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2441
2442 * session.scm (make-fold-modules): Detect circular references in
a2f00b9b 2443 module graph. (Thanks to Matthias Köppe.)
8b2294f7 2444
b5074b23
MD
24452000-06-20 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
2446
2447 * session.scm: Use module (ice-9 regex).
2448 (help): Regexp-quote a name given as a symbol.
2449
79494f15
DH
24502000-06-16 Dirk Herrmann <D.Herrmann@tu-bs.de>
2451
2452 * common-list.scm (list*): Removed, since this function is
2453 implemented as a primitive in libguile/list.c.
2454
341f78c9
MD
24552000-06-12 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
2456
8f820364
MD
2457 * session.scm (help): Warn user if 'regex isn't provided.
2458
341f78c9
MD
2459 * Makefile.am (ice9_sources): Removed getopt-gnu-style.scm.
2460
2461 * getopt-gnu-style.scm: Removed deprecated module.
2462
59321178
MD
24632000-06-11 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
2464
2465 * boot-9.scm (make-autoload-interface): Set init value for uses to
2466 '() instead of #f.
2467 (make-modules-in): Name modules with their real (= full) names.
2468 (the-root-module, the-scm-module): Named `(guile)' instead of
2469 `the-root-module'.
2470 (the-scm-module): Set kind to 'interface.
2471
2472 * Makefile.am (ice9_sources): Replaced doc.scm with
2473 documentation.scm.
2474
2475 * session.scm (ice-9): Use module (ice-9 documentation).
2476 (name): Use the name property if everything else fails.
2477 (apropos-fold): New procedure.
2478 (apropos-internal): Re-implement in terms of `apropos-fold'.
2479 (help): Rewritten.
2480
2481 * doc.scm: Removed module (ice-9 doc).
2482
2483 * documentation.scm: New module (ice-9 documentation).
2484
24852000-06-08 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
2486
2487 * doc.scm (documentation-files): Renamed from `doc-files'.
2488 (write-all): Removed.
2489 (find-documentation): Renamed from `documentation'. Return
2490 documentation string instead of printing it. Not exported.
2491
80edbc33
GB
2492Tue Jun 6 09:21:28 2000 Greg J. Badros <gregb@go2net.com>
2493
2494 * session.scm: Update references to `proc-doc' to be
2495 `proc-documentation'
2496
2497 * doc.scm: Cleaned up a great deal. Put variables at the top of
2498 the file, eliminated `object-documentation' that was broken
2499 (referencing Scwm), drop `help' as session.scm has a better
2500 supported version of that procedure. Rename `proc-doc' to
2501 `proc-documentation' -- `procedure-documentation' is a primitive
2502 getter function, so I use the shorter name for this more useful
2503 function. (Alternatively, we could rename the primitive
2504 getter...)
2505
1f496b05
MD
25062000-06-05 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2507
2508 * boot-9.scm (error-catching-loop): Inform about debugger on error.
2509
2c4fc472
MD
25102000-06-04 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
2511
2512 * boot-9.scm (scm-module-closure): New procedure: Was previously
2513 anonymous. Now needed in modules.c.
2514 (make-module): Use `standard-eval-closure' to create the eval
2515 closure.
2516
32f1b9fd
GH
25172000-05-14 Gary Houston <ghouston@arglist.com>
2518
2519 * boot-9.scm (load-user-init): rewritten. first work out the home
2520 directory and then try to open the file (previously it could try
2521 to open a file in more than one place). catch exceptions when
2522 trying to get a directory from the user database. don't check
2523 that ~/.guile is not a directory before trying to load it (a lack
2524 of ~/.guile is not a crime, but if the file is not valid for any
2525 reason then primitive-load will raise an error).
2526
5ea6d531
DH
25272000-05-11 Dirk Herrmann <D.Herrmann@tu-bs.de>
2528
2529 * boot-9.scm (abs): Don't set to magnitude. abs now does not
2530 accept complex numbers as parameter.
2531
7bbe9dee
MV
25322000-05-09 Marius Vollmer <mvo@zagadka.ping.de>
2533
2534 * common-list.scm (delete-if-not!): Bug fix of bug fix: change
2535 label of named let to `delete-if-not'. Sorry.
2536
e2d1d99d
MV
25372000-05-08 Marius Vollmer <mvo@zagadka.ping.de>
2538
2539 * common-list.scm (doc fixes): Talk about `true values' instead of
2540 `#t' when a function treats all non-#f valuers the same.
2541 (remove-if-not): Bug fix: call remove-if-not
2542 instead of remove-if when iterating.
2543 (delete-if-not!): Bug fix: call delete-if-not! instead of
2544 delete-if! when iterating.
2545
a0128ebe
MD
25462000-04-16 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
2547
2548 * r4rs.scm (close-input-port, close-output-port): Removed.
2549
068cb539
MD
25502000-04-13 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
2551
2552 * session.scm (help): New macro. Prints helpful information.
2553
d8859d6b
GH
25542000-04-10 Gary Houston <ghouston@arglist.com>
2555
2556 * popen.scm (open-process): after forking, close all ports except
2557 the end of the pipe to the parent. otherwise move->fdes and
2558 the exec'd program and the exit handlers can interfere with file
2559 descriptors still in use in parent ports.
2560
bf0e28d8
GH
25612000-04-09 Gary Houston <ghouston@arglist.com>
2562
2563 * popen.scm (close-process-quietly): new procedure. use it from
2564 reap-pipes to avoid errors or hanging during background cleanup.
2565
304b56da
MD
25662000-04-04 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2567
2568 * format.scm (format:obj->str): Handle circular references. Also,
2569 print improper lists with (x y . z) syntax rather than as
2570 individual pairs. (This code should probably be integrated into C
2571 level facilities. It is currently terribly slow.)
2572
b87e3d4d
ML
25732000-04-03 Michael Livshin <mlivshin@bigfoot.com>
2574
a8944ae1 2575 * streams.scm (stream-fold, stream-for-each): don't use named let,
b87e3d4d
ML
2576 because it prevents the gc from junking the stream argument.
2577
df8bb2dc
GB
2578Thu Mar 9 08:05:08 2000 Greg J. Badros <gjb@cs.washington.edu>
2579
2580 * slib.scm: Back-out change to software-type -- renamed
2581 slib:software-type to software-type, and leave it non-public.
2582
e510ed37
GB
2583Thu Mar 2 12:20:52 2000 Greg J. Badros <gjb@cs.washington.edu>
2584
2585 * boot-9.scm: Drop unused definition of sfx function -- thanks
2586 Dirk Hermann!
2587
0f202d3f
GB
2588Wed Mar 1 12:21:02 2000 Greg J. Badros <gjb@cs.washington.edu>
2589
2590 * streams.scm: Doc patch from Richard Kim, using MIT Scheme as
2591 source of the numerous very short changes.
2592
92540145
GB
2593Sun Feb 13 18:03:19 2000 Greg J. Badros <gjb@cs.washington.edu>
2594
a8944ae1 2595 * slib.scm: Rename software-type to slib:software-type and make it
92540145
GB
2596 public.
2597
2598 * r4rs.scm: Added documentation; largely cut and pasted from R4RS
2599 info pages.
2600
2601Sun Feb 13 17:49:29 2000 Greg J. Badros <gjb@cs.washington.edu>
2602
2603 * common-list.scm: Added documentation; largely cut and pasted
2604 from slib docs.
2605
b1c7c8f1
MD
26062000-02-11 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2607
2608 * format.scm (format): Reintroduce (define format format:format)
2609 so that the binding in the public interface of the module will be OK.
2610
bd9e24b3
GH
26112000-01-30 Gary Houston <ghouston@arglist.com>
2612
2613 * boot-9.scm (find-and-link-dynamic-module): pass strings, not symbols,
2614 to string-append.
2615
28d77376
GH
26162000-01-29 Gary Houston <ghouston@arglist.com>
2617
2618 * expect.scm (expect): don't call char-ready? before expect-select,
2619 since select now checks port buffers itself. don't bother to check
2620 the time first either, since expect-select does it.
2621
078e9092
GB
2622Thu Jan 20 12:57:36 2000 Greg J. Badros <gjb@cs.washington.edu>
2623
2624 * format.scm: Use (variable-set! (builtin-variable 'format)) to
2625 re-define format to be format:format (instead of just define,
2626 which interacts poorly with the module system). Thanks to Shuji
2627 Narazaki for this change.
2628
7965d98f
GB
2629Tue Jan 11 10:49:22 2000 Greg J. Badros <gjb@cs.washington.edu>
2630
2631 * boot-9.scm expect.scm, syncase.scm: Switch to new style
2632 `simple-format' message strings: substitute ~A for %s, and ~S for
2633 %S.
2634
2635 * boot-9.scm: Added (define format simple-format) to expose that
2636 primitive via the simpler name until format.scm is loaded.
2637
f73d2411
MV
26382000-01-09 Marius Vollmer <mvo@zagadka.ping.de>
2639
2640 * boot-9.scm (try-using-libtool-name): Do not bother to look
2641 inside libtool ".la" file, dynamic-link does this for us now.
2642
f353a9e2
GH
26431999-12-15 Gary Houston <ghouston@freewire.co.uk>
2644
a8944ae1 2645 * slib.scm (library-vicinity, home-vicinity,
f353a9e2
GH
2646 scheme-implementation-type, scheme-implemenation-version):
2647 use define-public to export from the module.
2648
e18a3a4d
GB
2649Wed Dec 15 08:32:09 1999 Greg J. Badros <gjb@cs.washington.edu>
2650
2651 * doc.scm: Use `%library-dir' and the other system directories,
2652 not the quickly defuncted `library-dir' that I added before
2653 realizing the former existed. Thanks Brad Knotwell!
2654
62b82274
GB
2655Sun Dec 12 19:18:52 1999 Greg J. Badros <gjb@cs.washington.edu>
2656
2657 * Makefile.am, doc.scm: Added doc.scm.
2658
5622c630
GB
26591999-12-12 18:54:06 1999 Greg J. Badros <gjb@cs.washington.edu>
2660
2661 * popen.scm, slib.scm: Added some docstrings for procedures that
2662 were primitives that I encountered in posix.texi.
a8944ae1 2663
afe5177e
GH
26641999-11-19 Gary Houston <ghouston@freewire.co.uk>
2665
2666 * Makefile.am (ice9_sources): add arrays.scm.
2667
2668 * boot-9.scm: load arrays.scm if 'array is provided.
2669
2670 * arrays.scm: new file with stuff from boot-9.scm.
2671
5c11cc9d
GH
26721999-11-18 Gary Houston <ghouston@freewire.co.uk>
2673
2674 * boot-9.scm (read-hash-extend to set up arrays): add 'l' for
2675 long_long uniform vectors.
2676
26771999-11-17 Gary Houston <ghouston@freewire.co.uk>
2678
2679 * networking.scm (sethostent, setnetent, setprotoent, setservent):
2680 take an optional argument STAYOPEN. default is #f.
2681
0c1221ab
JB
26821999-10-05 Jim Blandy <jimb@savonarola.red-bean.com>
2683
2684 * Makefile.in: Deleted from CVS repository. Run the autogen.sh
2685 script to create generated files like this one.
2686
52cfc69b
GH
26871999-09-23 Gary Houston <ghouston@freewire.co.uk>
2688
2689 * boot-9.scm (load-user-init): check that the posix feature is
2690 available before using getpw and getuid.
2691 (top-repl): don't install handlers for SIGINT etc., without posix.
a8944ae1 2692 (file-is-directory?): use 'posix instead of i/o-extensions to
52cfc69b
GH
2693 check for stat.
2694 (load-user-init): use file-exists? and file-is-directory? to
2695 check for .guile, instead of stat.
2696 (file-is-directory?): don't display the file name if posix not
2697 available.
2698 (feature?): I guess this is deprecated. redefined using "provided?"
2699 and changed users in boot-9.scm to "provided?".
2700 Conditionally load posix.scm and networking.scm.
2701
2702 posix.scm, networking.scm: new files. Move definitions from
2703 boot-9.scm if they are only useful with posix/networking available.
a8944ae1 2704
52cfc69b
GH
2705 * Makefile.am (ice9_sources): add posix.scm, networking.scm.
2706
4c59297c
MD
27071999-09-17 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
2708
09cbffcd
MD
2709 * debugger.scm (read-and-dispatch-commands): Handle other throws
2710 than 'exit-debugger.
2711
2712 * boot-9.scm (before-signal-stack): New fluid.
2713 (top-repl): Set before-signal-stack in the signal handler.
2714
4c59297c
MD
2715 * debugger.scm (eval-handler): Handle unhandled exceptions.
2716
b50408e5
MD
27171999-09-16 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
2718
2719 * debugger.scm ("p"): New alias for "evaluate";
2720 Mark module with :no-backtrace.
2721 ("position"): New command.
2722 (source-position, display-position): New procedures.
2723 (display-source): Display position of expression, if available.
2724 (catch-user-errors): Return #f on error. (Commands are expected
2725 to return a valid state.)
2726 (read-and-dispatch-command): Bugfix: Return old state on error.
2727
bbfba545
JB
27281999-09-16 Jim Blandy <jimb@savonarola.red-bean.com>
2729
2730 * regex.scm (regexp-substitute/global): Handle the end of the
2731 match list and an empty match list identically. (Thanks to Greg
2732 Badros.)
2733
5eb548fc
MD
27341999-09-15 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
2735
2736 * debugger.scm ("evaluate"): Replaced `write-line' with calls to
2737 `write' and `newline' since write-line doesn't write but displays.
2738
69fafe46
MD
27391999-09-12 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
2740
0fdcbcaa
MD
2741 * debugger.scm ("evaluate"): Newline after no env announcement.
2742
30772a34 2743 * debug.scm, emacs.scm: Updated copyright notices.
03ce8ed1
MD
2744
2745 * boot-9.scm (make-autoload-interface): Bugfix.
2746 (top-repl): Autoload debugger.
2747
69fafe46
MD
2748 * debugger.scm ("backtrace"): Don't pass length param to
2749 display-backtrace if it wasn't explicitly given by the user.
2750 (write-frame-long/application): Also print corresponding source
2751 expression.
2752 ("evaluate"): Evaluate in local environment frame, if existent;
2753 Handle errors.
2754
b142c81d
JB
27551999-09-11 Jim Blandy <jimb@savonarola.red-bean.com>
2756
2757 * format.scm (format:format-work): Use #\tab and #\page instead of
2758 slib:form-feed and slib:tab. (Thanks to Ceri Storey.)
2759
2760 * format.scm (format:abort): Call error, not slib:error.
2761
f14d3ff8
MD
27621999-09-11 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
2763
0fdcbcaa 2764 * boot-9.scm (using-readline?): New procedure: Returns #t if
f14d3ff8
MD
2765 readline is used by the repl run by this thread.
2766 (handle-system-error): Print "Backtrace:" before backtrace since
2767 this is no longer done by display-backtrace.
a8944ae1 2768
f14d3ff8
MD
2769 * debug.scm (frame-number->index): Optionally take stack as
2770 argument.
2771
2772 * debugger.scm: Use the frame number abstraction which allows for
2773 both forward and backward views of the stack
2774 (write-frame-index-short, write-frame-index-long):
2775 Use selector `frame-number';
2776 (select-frame-absolute): Use frame-number->index.
2777 ("backtrace"): Use builtin backtrace printing.
2778 Use (ice-9 debug).
2779 Use readline conditionally.
a8944ae1 2780
50ff2ecb
JB
27811999-09-11 Jim Blandy <jimb@savonarola.red-bean.com>
2782
2783 * regex.scm (fold-matches, list-matches): New functions.
2784 (regexp-substitute/global): Rewritten again in terms of
2785 list-matches, to get null match behavior correct.
2786
2787 * regex.scm (regexp-substitute/global): Rewrite so that 'post at
2788 the end of the item list actually causes a tail call. (Thanks to
2789 Jan Nieuwenhuizen.)
2790
98baa684
MV
27911999-09-11 Marius Vollmer <mvo@zagadka.ping.de>
2792
2793 * readline.scm: Moved to ../guile-readline.
2794
50ff2ecb 2795 * boot-9.scm (top-repl): Removed code for activating readline.
98baa684
MV
2796
2797 * Makefile.am: Removed mention of readline.scm.
2798
2799 * Makefile.in: Regenerated.
a8944ae1 2800
e1f20ec6
JB
28011999-09-11 Jim Blandy <jimb@savonarola.red-bean.com>
2802
2803 Delete the test which compares the configuration date of libguile
2804 with the configuration date of ice-9. This test yields too many
2805 false positives to be helpful. For example, if you build Guile
2806 for several architectures but have them all share a "share"
2807 directory (which is supposed to work), then all but one
2808 architecture's Guile will complain that the configuration dates
2809 don't match. Which is true, but indicates nothing wrong.
2810 * boot-9.scm: Delete code which compares ice-9-config-stamp with
2811 libguile-config-stamp.
2812 * version.scm.in: Delete.
2813 * Makefile.am (ice9_generated): Delete.
2814 (subpkgdata_DATA): Remove ice9_generated.
2815 (EXTRA_DIST): Remove version.scm.in.
2816 * Makefile.in: Regenerate.
2817
d61d2039
MD
28181999-09-11 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
2819
0fdcbcaa 2820 * debugger.scm: New file: Initial version of the Guile debugger
d61d2039
MD
2821 written by Chris Hanson. (The debugger isn't finished, but is
2822 included in Guile anyway since it is already quite useful.)
2823
0fdcbcaa 2824 * boot-9.scm (top-repl): Use (ice-9 debug) (ice-9 debugger) (ice-9
d61d2039
MD
2825 session) (ice-9 threads) (ice-9 regex) from guile-user only if
2826 top-repl is called. This makes startup time for scripts 30% of
2827 what it was before... Removed redundant code for loading of
2828 readline.
2829
2830 * Makefile.am (ice9_sources): Added debugger.scm.
2831
a48a7629
MD
28321999-08-29 Keisuke Nishida <kxn30@po.cwru.edu>
2833
2834 * boot-9.scm (try-module-autoload): Use %search-load-path.
a8944ae1 2835
6822fe53
MD
28361999-08-24 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
2837
2838 * boot-9.scm: Removed old style hooks.
2839 (inherit-print-state): Rwwritten to use port-with-print-state.
2840
f8c9d497
JB
28411999-08-20 James Blandy <jimb@mule.m17n.org>
2842
2843 Remove support for the #/ path list syntax entirely.
2844 * boot-9.scm (read-path-list-notation,
2845 read-path-list-notation-warning): Deleted.
2846 Don't register read-path-list-notation-warning as a reader for
2847 objects starting with '#/'.
2848
eba96884
MD
28491999-08-05 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
2850
2851 GOOPS needs the observer protocol specified for the new module
2852 system. Here's a simple version for the old module system:
2853 * boot-9.scm (module-observers, module-weak-observers,
2854 module-observer-id, set-module-observers!,
2855 set-module-observer-id!): New accessors.
2856 (module-type): Added slots `observers', `weak-observers' and
2857 `observer-id'.
2858 (module-observe, module-observe-weak, module-unobserve,
1a961d7e 2859 module-modified): New procedures.
eba96884 2860 (module-make-local-var!, module-add!, module-remove!,
1a961d7e 2861 module-clear!, module-define!, module-use!): Call module-modified.
eba96884 2862
2a52b429
MD
28631999-07-29 Marius Vollmer <mvo@zagadka.ping.de>
2864
2865 * boot-9.scm (error-catching-loop): Correct non-RnRS usage of internal
2866 defines.
2867
a3bb43e5
JB
28681999-07-19 Jim Blandy <jimb@savonarola.red-bean.com>
2869
59526439
JB
2870 * streams.scm: New module, contributed by Michael Livshin.
2871 * Makefile.am (ice9_sources): List it.
2872 * Makefile.in: Regenerated.
2873
a3bb43e5
JB
2874 * boot-9.scm (read-delimited!): Put the terminator in the correct
2875 position.
2876
40ed3fe6
MD
28771999-06-29 Mikael Djurfeldt <mdj@mdj-pc.nada.kth.se>
2878
2879 * readline.scm: Bugfix: Avoid getting the continued-lines prompt
2880 at multiple calls to read.
2881 (promtp2): Variable for continued-lines prompt.
2882 (make-readline-port): Use prompt2.
2883 (set-readline-prompt!): New optional arg which sets
2884 continued-lines prompt.
2885
2886 * boot-9.scm (top-repl): Set/clear readline prompts before/after
2887 reading expressions.
2888
d21ffe26
JB
28891999-06-18 Jim Blandy <jimb@savonarola.red-bean.com>
2890
2891 * ls.scm (ls, lls): Handle no arguments as meaning to look in
2892 `(current-module)'. (Patch from Thien-Thi Nguyen.)
2893
8044bbc8
JB
28941999-06-14 Jim Blandy <jimb@savonarola.red-bean.com>
2895
2896 * string-fun.scm (split-before-predicate, split-after-predicate,
2897 split-discarding-predicate): Make these public. (Thanks to
2898 Thien-Thi Nguyen.)
2899
2900 1999-06-13 Gary Houston <ghouston@easynet.co.uk>
2901
2902 * more changes to expect.scm, to avoid the one-character lookhead
2903 that was introduced to fix the $ problem:
2904
2905 * expect.scm (expect): call the match proc an extra time at end
a8944ae1 2906 of file and set the eof? argument appropriately. call
8044bbc8
JB
2907 expect-eof-proc only if the last call didn't match.
2908 * expect.scm (expect-strings): change port to eof? in match proc.
2909 * expect.scm (expect-regexec): take an eof indicator as an argument
2910 instead of a port.
2911
027ffa31 29121999-06-09 Jim Blandy <jimb@savonarola.red-bean.com>
aad827f4
JB
2913
2914 * Makefile.am (ice9_sources): Add popen.scm to list.
2915 * Makefile.in: Regenerated.
2916
8ed3c2fb
JB
2917 Fixes for expect from Gary Houston <ghouston@easynet.co.uk>:
2918
2919 * expect.scm (expect-regexec): define 'eof-next?'. I don't
2920 know why it was missing. also don't peek for end of lines
027ffa31 2921 unless expect-strings-exec-flags contains regexp/noteol.
8ed3c2fb
JB
2922 (expect-strings-exec-flags): initialise to regexp/noteol.
2923
aad827f4
JB
2924 Gary Houston's open-buffer port patches:
2925
2926 1999-04-01 Gary Houston <ghouston@easynet.co.uk>
2927
2928 * popen.scm: applied fixes from Greg Harvey. use a guardian
2929 and a gc-thunk so that cleanup is done if a pipe is garbage
a8944ae1 2930 collected or closed with close-port. use a weak hash-table instead of
aad827f4 2931 an alist.
a8944ae1 2932
aad827f4
JB
2933 1999-03-20 Gary Houston <ghouston@easynet.co.uk>
2934
ad226f25 2935 * expect.scm (expect): call the match proc with the port instead.
aad827f4
JB
2936 (expect-strings): use peek-char to get the next char. this has
2937 the advantage of getting the handling of $ "correct", but the
2938 disadvantage of needing to get (and maybe block for) an extra character
2939 from the port when it may not be needed. hence:
ad226f25 2940 (expect-strings-exec-flags): new variable/parameter, supplies
027ffa31 2941 flags for regexp-exec. if this includes regexp/noteol, then
a8944ae1 2942 automatic regexp/noteol handling (requiring an extra peeked char)
aad827f4 2943 is enabled. default is regexp/noteol.
027ffa31
JB
2944 (expect-strings-compile-flags): new variable/parameter, supplies
2945 flags for make-regexp. default is regexp/newline.
aad827f4
JB
2946
2947 1999-03-15 Gary Houston <ghouston@easynet.co.uk>
2948
ad226f25 2949 * expect.scm (expect): call the match proc with an extra char,
aad827f4
JB
2950 peeked from the stream.
2951 (expect-strings): build a match proc which takes the extra char.
2952 (expect-regexec): take an extra arg "eof-next?" and use it
2953 to decide whether the regexp/noteol flag should be added.
2954
2955 1999-02-26 Gary Houston <ghouston@easynet.co.uk>
2956
2957 * boot-9.scm (top-repl): don't flush all ports at exit.
2958 (error-catching-loop): likewise.
2959
2960 1998-12-23 Gary Houston <ghouston@easynet.co.uk>
2961
2962 * boot-9.scm (scm-style-repl): -read: don't call
2963 consume-trailing-whitespace if val is eof object. Allows
2964 exiting repl with single control-D.
2965
2966 1998-12-06 Gary Houston <ghouston@easynet.co.uk>
2967
2968 * boot-9.scm (error-catching-loop): don't force output within
2969 error catching loop after quit received.
2970 (top-repl): flush all ports when the repl terminates.
2971
a8944ae1
TTN
2972 * boot-9.scm (error-catching-loop): flush all ports before
2973 primitive exit if non-interactive.
aad827f4
JB
2974 force-output on current-error-port if interactive.
2975
2976 * boot-9.scm (reopen-file): deleted.
2977 * popen.scm (open-output-pipe, open-input-pipe): moved from
2978 boot-9.scm.
2979 * popen.scm: new file.
2980
15631a33
MD
29811999-06-04 Dirk Herrmann <D.Herrmann@tu-bs.de>
2982
2983 * boot-9.scm (iota): replaced by a tail recursive version.
027ffa31 2984 (reverse-iota): removed.
15631a33 2985
8d8fc9da
MD
29861999-06-03 Mikael Djurfeldt <mdj@mdj-pc.nada.kth.se>
2987
2988 * optargs.scm (lambda*): Bugfix: Replaced ARGLIST -->
2989 non-optional-args. (Thanks to David Lutterkort.)
2990
027ffa31 29911999-05-09 Jim Blandy <jimb@savonarola.red-bean.com>
7c1ce4ee
JB
2992
2993 * string-case.scm: Removed; functions moved to libguile/strop.c
2994 (which could be dynamically linked in the future anyway).
e7d37b0a
JB
2995 * Makefile.am (ice9_sources): Don't list string-case.scm.
2996 * Makefile.in: Regenerated.
7c1ce4ee
JB
2997 * format.scm: Don't bother importing (ice-9 string-case).
2998
027ffa31 29991999-05-02 Jim Blandy <jimb@savonarola.red-bean.com>
b7e13f65
JB
3000
3001 * boot-9.scm (provided?): New function.
3002
3003 * Makefile.am: Add string-case.scm and format.scm to ice9_sources.
3004 * Makefile.in: Regenerated.
a8944ae1 3005
b7e13f65
JB
3006 * string-case.scm: New file, brought in from SLIB, and adapted to
3007 Guile's module system.
3008
3009 * format.scm: New file, brought in from SLIB, with the following
3010 changes:
3011 (format:format): If the first argument is the format string, stick
3012 a #f on the front of it, so it is now a valid CL format argument
3013 list. This is easier than changing everyplace else (like the
3014 error formatter) that expects it to be in CL form. The other
3015 clause which explicitly tests for this case is now dead code.
3016 (format:format-work): Allow `@' and `:' in either order, as per
3017 modern CL behavior.
3018 (format:num->cardinal): Don't assume that an elseless if returns
3019 '() when the condition is false.
a8944ae1 3020
027ffa31 30211999-04-17 Jim Blandy <jimb@savonarola.red-bean.com>
cceae55d
JB
3022
3023 * Makefile.in: Regenerated.
3024
d2b8d4ff
MD
30251999-04-08 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3026
3027 * boot-9.scm: Provide 'values.
3028
b6e17c63
MD
30291999-03-21 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
3030
3031 * boot-9.scm (process-define-module, use-syntax): Bugfix:
3032 :use-syntax should add syntax to using module, not current module.
3033 (internal-use-syntax): Removed.
3034
e059c0b7
MD
30351999-03-21 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3036
3037 * session.scm (apropos-internal): Modified to comply with new
3038 argument order for hash-fold.
3039
275b2a7e
MD
30401999-03-19 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
3041
027ffa31 3042 * boot-9.scm (try-load-module): New procedure. Broken out from
275b2a7e
MD
3043 resolve-module.
3044 (resolve-module): Bugfix: Make it possible for a module at a
3045 deeper level (x y z) to depend on a module on a higher (x y).
33f8ad2b
MD
3046
3047 This also has the desired side-effect that multiple attempts to
3048 load a module (e.g. with `use-modules') work until source is
3049 actually found for the module (e.g. because the correct catalog
3050 has been added to the load path).
a8944ae1 3051
275b2a7e
MD
3052 Use try-load-module.
3053
deea77eb
MD
30541999-03-18 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3055
3056 * session.scm (system-module): New procedure. Used to switch a
3057 module between system and user state.
3058
2251c7a4
MD
30591999-03-16 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3060
3061 * session.scm (apropos-internal): Rewritten using hash-fold.
3062
3063 * emacs.scm, session.scm, slib.scm): Added :no-backtrace in module
3064 definition.
3065
6ee350ad
MD
30661999-03-14 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
3067
3068 * boot-9.scm (make-record-type): Use `set-struct-vtable-name!' to
3069 associate a name to the record type descriptor so that the object
3070 system can create a wrapper class for it.
3071
88124126
MD
30721999-03-12 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3073
3074 Improvement of backtraces: Introduces a new stack narrowing
3075 specifier, #t, for the inner cut. If the inner cut is specified
3076 by #t, `make-stack' will throw away inner stack frames (most
3077 recent calls on call chain) up to but excluding the first user
3078 stack frame encountered.
3079
3080 This specifier is now used in `save-stack' so that the call
3081 `(save-stack)' will get the new behaviour. [It is recommended that
3082 any error reporting functions written by the user have this call
3083 on the outermost expression level (i.e. as a member of the lambda
3084 list).]
3085
3086 Modules are partitioned into "user" and "system" modules. [I know
3087 that some names used here are silly, but I don't have more time to
3088 spend on a better solution, especially considering that the module
3089 system will be replaced. But if people have better ideas, then
3090 please tell me!]
3091
3092 System modules are created by adding :no-backtrace among the
3093 define-module switches:
3094
3095 (define-module (foo)
3096 :no-backtrace)
3097
3098 Modules which doesn't have the :no-backtrace specifier are user
3099 modules.
a8944ae1 3100
88124126
MD
3101 A stack frame is classified as a user frame if it has source code
3102 associated with it and if this source code can be proven to come
3103 from a user module. If it can be proven to come from a system
3104 module it is a system frame.
3105
3106 Frames which can't be classified, e.g. application frames, are cut
3107 away if they occur between system frames, but are left on the
3108 stack if they occur between the last system frame and the first
027ffa31 3109 user frame encountered. (Note that the first user frame
88124126
MD
3110 encountered is the last user code being evaluated!)
3111
3112 In some cases the system part of the call chain is introduced by
3113 frames which should but can't be proven to be system frames. The
3114 following workaround has been implemented: The cutting proceeds
3115 over application frames where the operator is marked by the
3116 `system-procedure' property. (This has been used to cut away
3117 generic function dispatch code in the object system.)
3118
3119 * boot-9.scm (set-system-module!): New procedure: Set system/user
3120 status of a module.;
3121 Mark `the-root-module' and `the-scm-module' as system modules.
3122 (process-define-module): Add new keyword :no-backtrace.
3123
3124 * boot-9.scm (environment-module): Bugfixed.
3125 (set-module-eval-closure!): Add a pointer back from the eval
3126 closure to the module.
3127
3128 * emacs.scm (emacs-load): Reset port filename after transfer.
3129
41f50369
MD
31301999-03-03 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3131
3132 * slib.scm (make-random-state): Added for compatibility.
3133
fcdd6672
MS
31341999-02-16 Maciej Stachowiak <mstachow@alum.mit.edu>
3135
3136 * optargs.scm (lambda*): Handle empty argument lists properly.
3137
027ffa31 31381999-02-15 Jim Blandy <jimb@savonarola.red-bean.com>
8d21a2ff
JB
3139
3140 Fix from Russ McManus:
3141 * getopt-long.scm (parse-option-spec): Store 'optional as the
3142 value-required? field for options that take optional values.
3143 (process-short-option): Grab a value for the option when it takes
3144 either an optional or required value.
3145
027ffa31 31461999-02-12 Jim Blandy <jimb@savonarola.red-bean.com>
deaceb4e
JB
3147
3148 * getopt-long.scm: Remove debugging calls to `pk'.
3149
4ca48ad4
JB
3150 * getopt-long.scm: Return list of ordinary arguments as the value
3151 of the '() key, not `rest'.
3152
deaceb4e
JB
3153 A new argument-processing package from Russ McManus.
3154 * getopt-long.scm: New file.
3155 * Makefile.am (ice9_sources): Added getopt-long.scm.
3156 * Makefile.in: Regenerated.
3157
08394899
MS
31581999-02-09 Maciej Stachowiak <mstachow@alum.mit.edu>
3159
a8944ae1 3160 * optargs.scm: New file.
08394899 3161 * Makefile.am (ice9_sources): Add optargs.scm here. Makefile.in
027ffa31 3162 not regenerated because I don't have the right version of Automake.
deaceb4e 3163
027ffa31 31641999-02-06 Jim Blandy <jimb@zwingli.cygnus.com>
2e132553
JB
3165
3166 * and-let*.scm: New file, from Michael Livshin.
3167 * Makefile.am (ice9_sources): Add and-let* here.
3168 * Makefile.in: Regenerated.
3169
65a5dccb
MD
31701999-01-11 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3171
3172 * slib.scm (install-require-module): Fixed the kludge which loads
3173 the slib catalog: Doesn't anylonger assume that the feature tested
3174 for isn't loaded.
3175
027ffa31 31761998-12-14 Jim Blandy <jimb@zwingli.cygnus.com>
333a4791
JB
3177
3178 * Makefile.in: Regenerated.
3179
45a02a29
MD
31801998-12-14 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3181
3182 * boot-9.scm (process-define-module): Reverted the change of
3183 1998-11-23 which caused loading of object code if :use-module was
3184 applied to the module itself.
3185
e7b6c834
MD
31861998-12-11 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
3187
3188 * Makefile.am: Removed setf.scm.
3189
027ffa31 3190 * setf.scm: Removed. 1. It was buggy. 2. It was unschemey.
e7b6c834
MD
3191 (These shortcomings were my fault.)
3192
bf3c93d1
MD
31931998-12-10 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3194
9705d5c2 3195 * boot-9.scm (environment-module): New procedure.
bf3c93d1 3196
bc9a9137
MD
31971998-12-07 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
3198
3199 * Makefile.am: Added setf.scm.
3200
32011998-12-05 Christian Lynbech <chl@tbit.dk>
3202
3203 * setf.scm: New file. Adds the new forms `setf!' and `setter'
3204 which implements generalized references a la Common LISP.
3205
71225060
MD
32061998-12-02 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
3207
3208 * boot-9.scm (process-define-module): Added new specifier
3209 :autoload MODULENAME BINDINGS to the define-module form.
3210 The autoload specifier tells the module system to load the module
3211 MODULENAME at the first occasion that any variable with its name
3212 among BINDINGS is referenced.
3213 (make-autoload-interface): New procedure: Constructs a stand-in
3214 for the public interface for the module to be autoloaded.
3215
3b3085c6
MD
32161998-12-01 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3217
3218 * boot-9.scm (*suppress-old-style-hook-warning*): Set this to #t
3219 if you don't want the old style hook warnings.
3220
49e5d550
MD
32211998-12-01 Christian Lynbech <chl@tbit.dk>
3222
3223 * boot-9.scm (try-using-libtool-name): Fix check on dlname to make
3224 sure that it isn't empty, as it is when we are only buidling
3225 static libraries.
3226
afae5cbd
MD
32271998-11-27 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3228
3229 * session.scm (arity): New procedure.
3230
3763ac3c
MD
32311998-11-26 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3232
3233 * boot-9.scm: Use run-hook instead of run-hooks everywhere.
3234
7a79c6b4
MD
32351998-11-26 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
3236
3237 * boot-9.scm (run-hooks, add-hook!, remove-hook!): Added temporary
3238 code for backward compatibility until people have had time to
3239 adapt to the new hooks.
3240
a56eeb46
MD
32411998-11-23 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
3242
3243 * boot-9.scm (beautify-user-module!): Beautify also if public
027ffa31 3244 interface is set to the module itself. In this way we can use
a56eeb46
MD
3245 beautify-user-module! to beautify a module prepared for object
3246 code.
3247 (process-define-module): Special case: Try to load object code as
3248 well if a module does :use-module on itself.
3249
3250 * boot-9.scm: Bugfix: Since boot-9.scm is now loaded from
3251 invoke_main_func, we can no longer be sure that all modules have
3252 been registered when boot-9.scm is loaded.
3253 (register-modules): New function: Register and tag modules
3254 registered by scm_register_module_xxx since last call to this
3255 function. Modules are tagged with the dynamic object passed as
3256 argument. (Already linked modules should be tagged with #f.)
3257 (init-dynamic-module, link-dynamic-module): Call register-modules
3258 first to register linked modules.
3259
3260 * boot-9.scm (init-dynamic-module): Remove module from
3261 registered-modules as soon as possible in case we are recursively
3262 invoked; Set public interface before doing the dynamic-call.
a8944ae1 3263
a56eeb46
MD
3264 * boot-9.scm (map-in-order): Removed (replaced by scm_serial_map).
3265 (abort-hook, before-error-hook, after-error-hook,
3266 before-backtrace-hook, after-backtrace-hook, before-read-hook,
3267 after-read-hook, exit-hook): Make hooks with `make-hook'.
3268
3269 * boot-9.scm: Make hooks first class citizens and make them easier
3270 to use from C:
3271 (make-hook, add-hook!, remove-hook!, run-hooks): Moved to
3272 libguile/feature.c.
7e414627
MD
3273
3274 * boot-9.scm: Added warnings about bindings used in
3275 libguile/modules.c: the-module, set-current-module,
a56eeb46 3276 make-modules-in, beautify-user-module!, module-eval-closure.
7e414627 3277
dc61592f
MD
32781998-11-21 Mikael Djurfeldt <mdj@kenneth>
3279
3280 * boot-9.scm (the-environment): New special form: Returns an
3281 object representing the current local evaluation environment.
3282 This object can be used in `local-eval' and `defined?'.
3283
7398c2c2
MD
32841998-11-13 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
3285
3286 * boot-9.scm (collect): New syntax. Similar to begin but returns
3287 a list of the results of all forms in the sequence instead of the
3288 result of the last form.
3289
6162a00d 32901998-11-10 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
e586be78 3291
00f4b2e8
MD
3292 * boot-9.scm (values, call-with-values): Moved here from
3293 syncase.scm.
3294
3295 * syncase.scm (values, call-with-values): Moved to boot-9.scm.
3296
e586be78
MD
3297 * boot-9.scm (readline-options, readline-enable, readline.disable,
3298 readline-set!: New options interface.
3299
6162a00d
MD
3300 * readline.scm (readline-port): Use readline-options-interface.
3301
4fdf8b2c
MD
33021998-11-05 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
3303
3304 * boot-9.scm: Set the repl start module in `top-repl' instead of
3305 at the end of boot-9.scm.
3306
0b6925fe
MD
33071998-11-01 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3308
3309 * emacs.scm (format): Bugfix: Handle multiple arguments
3310 correctly. (Thanks to Thien-Thi Nguyen.)
3311
e4eae9b1
MD
33121998-11-01 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
3313
3314 * boot-9.scm (exit-hook): New hook: Is run at the very end of an
3315 interactive session.
3316 (top-repl): Run exit-hook on exit.
3317
3318 * readline.scm (readline-port): Maybe read history; Maybe write
3319 history at exit (add to exit-hook).
3320
cad4d45b
MD
3321Fri Oct 30 15:15:37 1998 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3322
3323 * readline.scm (make-readline-port): Bugfixed last change...
3324
24bf9166
MD
33251998-10-28 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
3326
3327 * readline.scm (make-readline-port): Don't set prompt to "... " if
3328 read line was empty.
3329
027ffa31 33301998-10-19 Jim Blandy <jimb@zwingli.cygnus.com>
f4be1689 3331
1f6fe22a 3332 * boot-9.scm, debug.scm, expect.scm, hcons.scm, lineio.scm,
027ffa31 3333 r4rs.scm, slib.scm, threads.scm: Update copyright years.
1f6fe22a 3334
33432c79
JB
3335 * getopt-gnu-style.scm, slib.scm: Add copyright notice.
3336
3337 Talked to Stallman. Actually, the syntax-case copyright is no
3338 problem. Duh.
3339 * Makefile.am (ice9_sources): Revert last change.
3340 * syncase.scm, psyntax.pp, psyntax.ss: Added again.
3341 * Makefile.in: Regeneretade.
3342
f4be1689
JB
3343 * boot-9.scm: Don't assume that this file is loaded just before
3344 entering a read-eval-print loop. Turn code to load (ice-9 emacs)
3345 into...
3346 (load-emacs-interface): New function.
3347 (top-repl): Call it, if use-emacs-interface is defined and true.
3348 At this point, we *do* know we're about to enter a REPL.
3349
3350 We can't include Kent Dybvig's syntax-case macro expander in the
027ffa31
JB
3351 core Guile distribution, because we don't have copyright
3352 assignments for this code. We can certainly distribute them as a
3353 separate package, but Guile should be FSF code.
f4be1689
JB
3354 * syncase.scm, psyntax.pp, psyntax.ss: Removed.
3355 * Makefile.am (ice9_sources): Removed syncase.scm, psyntax.pp, and
3356 psyntax.ss.
3357 * Makefile.in: Regenerated.
3358
3359 * Makefile.am (ice9_sources): Add getopt-gnu-style.scm.
3360 * Makefile.in: Regenerated.
3361
c8f11b97
MD
33621998-10-18 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
3363
3364 * boot-9.scm: Added extended read syntax for byte vectors #y(...)
3365 and short vectors #h(...).
3366
027ffa31 33671998-10-14 Jim Blandy <jimb@zwingli.cygnus.com>
bb2a4165
JB
3368
3369 * calling.scm (excursion-function-syntax): Use a sequence of
3370 set!'s, not a single multi-variable set!; we removed support for
3371 that syntax a long time ago. (Thanks to Shuji Narazaki.)
3372
027ffa31 33731998-10-12 Jim Blandy <jimb@zwingli.cygnus.com>
c8983d6a 3374
94e3e95e 3375 * r4rs.scm (OPEN_READ, OPEN_WRITE, OPEN_BOTH): Don't bother
c8983d6a
JB
3376 testing software-type here. That's the least of our Windows
3377 porting issues, and it's done wrong anyway.
3378
027ffa31 33791998-10-09 Jim Blandy <jimb@zwingli.cygnus.com>
77052259 3380
98330fd2
JB
3381 * boot-9.scm (read-path-list-notation-warning): New function:
3382 print a warning the first time we see `#/' notation.
3383
77052259 3384 * q.scm (sync-q!, q?, q-remove!, q-push!, enq!): Lots of bugs, and
027ffa31
JB
3385 (eq? #f '()) assumptions. Make functions that aren't documented
3386 to return anything else return the queue itself. (Bug report from
3387 Michael Livshin --- thanks!)
77052259 3388
c9dd46af
MD
33891998-08-21 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3390
3391 * debug.scm (trace-entry, trace-exit): Removed re-enabling of
3392 trace flag.
3393
3394 * boot-9.scm (make-options): Bugfix: Changed pair? --> list? in
3395 order to allow the empty list as arg.
3396 (error-catching-loop): Use `with-traps' to create a dynamic
3397 context with traps enabled.
3398
5ef4ef4e
MD
33991998-08-19 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
3400
3401 * boot-9.scm: Removed (ice-9 regex) from use-list of (guile)
3402 module.
3403 (try-using-libtool-name): Removed dependency on (ice-9 regex).
3404
325f42e0
MD
34051998-08-15 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
3406
3407 * boot-9.scm: Make the root module use (ice-9 regex) if
3408 available. The dynamic linking facilities in boot-9.scm are
3409 currently dependent upon regular expressions. My change of
3410 1998-07-14 removed (ice-9 regex) from the use-list of the root
3411 module and thereby destroyed dynamic linking.
3412
027ffa31 34131998-07-29 Jim Blandy <jimb@zwingli.cygnus.com>
0dcbc17a
JB
3414
3415 * Makefile.in: Regenerated using the last public version of
3416 automake, not the hacked Cygnus version.
3417
027ffa31 34181998-07-28 Jim Blandy <jimb@zwingli.cygnus.com>
1f5ae2fd
JB
3419
3420 * Makefile.in: Regenerated, after removing Totoro kludge.
3421
027ffa31 34221998-07-28 Jim Blandy <jimb@totoro.red-bean.com>
1a0106ef
JB
3423
3424 * getopt-gnu-style.scm: New file. (Thanks to Russ McManus.)
3425
027ffa31 34261998-07-26 Jim Blandy <jimb@zwingli.cygnus.com>
e99cbcd6
JB
3427
3428 * Makefile.in Rebuilt, for config changes in parent dir.
3429
6f4d9622
MD
34301998-07-21 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3431
3432 * readline.scm (make-readline-port): Set prompt string to "... "
027ffa31 3433 after first read line. (Thanks to Richard Polton.)
6f4d9622 3434
027ffa31 34351998-07-19 Jim Blandy <jimb@zwingli.cygnus.com>
3ec4ec9a
JB
3436
3437 * lineio.scm (make-line-buffering-input-port): Don't use
3438 ungetc-char-ready?, since we don't provide that function any
3439 more. The unread-string function doesn't interact properly with
3440 any of the standard I/O functions anyway. (Thanks to Andrew
3441 Archibald.)
3442
3443 * hcons.scm (hashq-cons-assoc): Don't assume the empty list is
027ffa31 3444 false. Return false when we cannot find a matching entry in the
3ec4ec9a
JB
3445 list. (Thanks to Andrew Archibald.)
3446
a0cc0a01
MD
34471998-07-16 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
3448
3449 * boot-9.scm (export, export-syntax): New special forms: Export
027ffa31 3450 bindings from a module. `(export name1 name2 ...)' can be used at
a0cc0a01
MD
3451 the top of a module (after `define-module') to specify which names
3452 should be exported. It can be used as an alternative to
3453 `define-public'. `export-syntax' works equivalently to `export'
3454 but is intended for export of syntactic keywords.
3455 (Thanks to Thien-Thi Nguyen.)
3456
39bc9948
MD
34571998-07-15 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
3458
3459 * boot-9.scm: Renamed module `(guile-repl)' --> `(guile-user)'.
3460
13e341bb
MD
34611998-07-14 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3462
ae996c08
MD
3463 * boot-9.scm: Let the user start in module `(guile-repl)' instead
3464 of module `(guile)'. Also make sure that `(guile-repl)' uses
3465 suitable modules. This change improves Guile stability
3466 substantially since bindings will only be copied from the root
3467 module: If the user redefines builtins in `(guile-repl)' it won't
3468 affect the internal operation of Guile itself.
13e341bb 3469
c6775c40
MD
34701998-06-19 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
3471
3472 * boot-9.scm (load-module): When loading files from within files
3473 themselves being loaded: Use the directory path of the file being
027ffa31 3474 loaded as root for relative filenames. (After suggestion by
c6775c40
MD
3475 Steven G. Johnson.)
3476
ef0d04e5
MD
34771998-06-15 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3478
3479 * emacs.scm (emacs-load): New feature: Eval in specified module.
3480
4ffd142c
MD
34811998-06-14 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3482
3483 * readline.scm: Typo in regex module name.
3484
edd9ac21
MD
34851998-06-13 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
3486
3487 * readline.scm (apropos-completion-function): regexp-quote text to
3488 be completed.
3489
a66c53a8
MD
34901998-06-11 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3491
edd9ac21 3492 * debug.scm, emacs.scm: Bugfix: Treat `the-last-stack' as a fluid.
a66c53a8 3493
d38a6802
MD
34941998-06-09 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3495
3496 * boot-9.scm: Check that (current-input-port) is a tty before
3497 enabling readline. (Thanks to Michael N. Livshin.)
3498
cf266109
MD
34991998-06-07 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3500
3501 * boot-9.scm (use-syntax): Turned into a macro inorder to be
3502 similar in use to `use-modules'.
3503 Example: (use-syntax (ice-9 syncase)) will 1. load the module
3504 (ice-9 syncase), and, 2. install the procedure `syncase' as eval
3505 transformer.
3506 (internal-use-syntax): New procedure.
3507 (process-define-module): Use `internal-use-syntax'.
3508
67da6c57
MD
35091998-05-19 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3510
3511 * Makefile.am (ice9_sources): Add emacs.scm.
3512
1b558afd
MD
35131998-05-13 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3514
3515 * readline.scm: Use the new readline facilities: Add the
3516 possibility to control input and output ports; Add apropos
3517 completion.
3518
3519 * boot-9.scm: Antirevert Jim's readline code which he reverted
3520 19971027 and adapt it to the current readline interface.
a8944ae1 3521
1b558afd
MD
3522 * boot-9.scm (top-repl): Only enable readline if not using the
3523 Emacs interface; Only use repl prompt when using the readline port
027ffa31 3524 from repl-read. (We don't want to see it when calling `read'.)
1b558afd
MD
3525
3526 * boot-9.scm (remove-hook!): Parenthesis bug.
3527
f246e585
MD
35281998-05-11 Mikael Djurfeldt <mdj@kenneth>
3529
3530 * boot-9.scm: Load readline module if readline is present.
3531
3532 * readline.scm (apropos-completion-function): New procedure:
3533 Symbolic completion. (Thanks to Andrew Archibald!)
3534
f714ca8e
MD
35351998-04-22 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3536
3537 * boot-9.scm (process-define-module): Added keyword use-syntax.
3538
3ede541d
MD
35391998-04-19 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3540
3541 * nonblocking.scm: Removed. libguile is now inherently
3542 nonblocking through the use of scm_internal_select.
a8944ae1 3543
3ede541d
MD
3544 * emacs.scm: Removed use of nonblocking.scm.
3545
027ffa31 3546 * gwish.scm, gtcl.scm: Removed. tcltk.scm has made these
3ede541d 3547 obsolete.
a8944ae1 3548
608cf70c
MD
35491998-04-15 Mikael Djurfeldt <mdj@nada.kth.se>
3550
3551 * runq.scm (runq-control): Corrected spelling of enqueue!.
3552 (Thanks to Karl M. Hegbloom.)
3553
16b8ebbe
MD
35541998-03-30 Mikael Djurfeldt <mdj@nada.kth.se>
3555
3556 * boot-9.scm: Added new run-time option interface eval-options.
3557
abf06c12
MD
35581998-03-28 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3559
027ffa31 3560 * boot-9.scm (remove-hook!): New macro. (Thanks to Maciej
abf06c12
MD
3561 Stachowiak.)
3562
13dc0cae
MD
35631998-01-30 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3564
3565 * threads.scm: Added simple error and signal handler.
027ffa31 3566 (make-thread, begin-handler): Use this handler. The most
13dc0cae
MD
3567 important effect of this is that signals get unmasked.
3568 Previously, when a signal was thrown signals remained masked
3569 (signals get masked when a signal is taken) which influenced other
3570 threads.
3571
027ffa31 35721998-01-01 Tim Pierce <twp@skepsis.com>
841d28d7
TP
3573
3574 A better fix to the SLIB identity problem -- thanks to Marius Vollmer.
3575 * slib.scm (identity): Unmake public.
3576 (slib:eval): Evaluate inside `slib-module'.
3577
027ffa31 35781997-12-24 Tim Pierce <twp@skepsis.com>
ad76c8d9 3579
249cdba6
TP
3580 * boot-9.scm: Doc fix.
3581
ad76c8d9
TP
3582 * slib.scm (identity): Made public.
3583 (home-vicinity): New function (from SLIB/Template.scm).
3584
027ffa31 35851997-12-13 Tim Pierce <twp@skepsis.com>
848f2a01 3586
f4be1689 3587 * boot-9.scm (read-line): Rewritten to call %read-line for
027ffa31 3588 improved speed. Minor user-visible changes: the new functions are
848f2a01
TP
3589 hardwired to treat the LFD character as signifying end-of-line, so
3590 changing `scm-line-incrementors' will no longer affect the
027ffa31 3591 behavior of read-line. On platforms which do not represent
848f2a01
TP
3592 end-of-line with a LFD character, read-line should behave more
3593 like native line-processing facilities, but there is still a ways
3594 to go here.
3595
8bb7f646
MD
3596Sat Nov 29 01:24:46 1997 Mikael Djurfeldt <mdj@kenneth>
3597
3598 * boot-9.scm (error-catching-loop, save-stack): `the-last-stack'
3599 is now a fluid.
3600
027ffa31 36011997-11-28 Tim Pierce <twp@skepsis.com>
ebd79f62 3602
848f2a01
TP
3603 * boot-9.scm (find-and-link-dynamic-module): If a module directory
3604 contains a .la file (a libtool support file), attempt to extract
027ffa31
JB
3605 the shared library name from that file. If the .la file does not
3606 exist, try to link against a .so file. Libtool-generated compiled
848f2a01 3607 modules should load more cleanly in Guile now.
ebd79f62
TP
3608 (try-using-libtool-name, try-using-sharlib-name): New functions.
3609
027ffa31 3610Sun Nov 9 06:10:59 1997 Gary Houston <ghouston@actrix.gen.nz>
28d8ab3c
GH
3611
3612 * boot-9.scm (set-batch-mode?!, batch-mode?): initialize more
3613 usefully so they will work from a script.
3614
13a7ee16
MV
36151997-10-31 Marius Vollmer <mvo@zagadka.ping.de>
3616
3617 * boot-9.scm (inherit-print-state): Moved definition to the
3618 neighborhood of the record code.
3619
930b16c0
JB
3620Mon Oct 27 02:05:49 1997 Jim Blandy <jimb@totoro.red-bean.com>
3621
027ffa31
JB
3622 * boot-9.scm: Revert changes to this file from Oct 23. It turns
3623 out to interact badly with the Emacs support and the Tcl/Tk
3624 support. It's not a high enough priority at the moment to be
3625 worth fixing. I'm leaving the other readline support in, though.
930b16c0 3626
3fa5bb75
JB
3627Sat Oct 25 14:23:22 1997 Jim Blandy <jimb@totoro.red-bean.com>
3628
3629 * Makefile.am: Include readline.scm in the list of files to be
3630 installed, so Guile can find it for interactive use.
3631 * Makefile.in: Regenerated.
3632
2e368582
JB
3633Thu Oct 23 01:00:33 1997 Jim Blandy <jimb@totoro.red-bean.com>
3634
3635 Add support for readline function.
3636 * readline.scm: New module.
3637 * boot-9.scm (repl-reader): New function.
3638 (scm-style-repl): Call repl-reader, instead of doing the reading
3639 ourselves. Remove repl-report-reset; it was never used for
3640 anything.
3641 (top-repl): If we've got the readline primitives, then redefine
3642 repl-reader to use them.
3643 If we've got the readline primitives, import the readline module.
3644
3645 * ls.scm (ls, lls): Don't assume (eq? #f '()).
3646
3647Wed Oct 22 18:26:57 1997 Jim Blandy <jimb@totoro.red-bean.com>
3648
3649 * calling.scm, common-list.scm, ls.scm, q.scm, runq.scm,
3650 string-fun.scm: Added copyright notices; reformatted.
3651
027ffa31 3652Thu Oct 9 05:44:00 1997 Gary Houston <ghouston@actrix.gen.nz>
4bbbcd5c
GH
3653
3654 * expect.scm: (expect-regexec): new procedure, use it in
3655 expect-strings to fix the => syntax under the new regex system.
3656 (top): include regex module in define-module statement.
3657
027ffa31 3658Wed Oct 8 03:16:01 1997 Gary Houston <ghouston@actrix.gen.nz>
4bbbcd5c
GH
3659
3660 * (error-catching-loop): new local variable "interactive". if
3661 #f, abort terminates the process.
a8944ae1 3662 (set-batch-mode?!, batch-mode?): new closures, defined in
4bbbcd5c
GH
3663 error-catching-loop. the names are from scsh.
3664
c115b54b
MV
36651997-10-06 Marius Vollmer <mvo@zagadka.ping.de>
3666
3667 * boot-9.scm (inherit-print-state): If NEW-PORT contains a
3668 print-state, throw it away.
3669
027ffa31 3670Fri Oct 3 12:00:00 Mikael Djurfeldt <mdj@nada.kth.se>
9f9aa47b
MD
3671
3672 * boot-9.scm (struct-layout): Use `vtable-index-layout' instead of
3673 `0'.
3674
027ffa31 3675Thu Oct 2 12:00:00 Mikael Djurfeldt <mdj@nada.kth.se>
9f9aa47b
MD
3676
3677 * boot-9.scm (struct-printer, make-struct-printer,
3678 set-struct-printer-in-vtable!, *struct-printer*): Removed.
3679 (record-type-vtable, make-record-type): Don't use make-struct-printer.
3680 (record-type-vtable): User fields "prpr" (printer is no longer a
3681 user field).
3682 (record-type-name, record-type-fields): Decreased slot index by
3683 one; Use `vtable-offset-user'.
3684
027ffa31 3685Thu Oct 2 12:00:00 Marius Vollmer <mvo@zagadka.ping.de>
21fdbaee
MV
3686
3687 * boot-9.scm (inherit-print-state): New experimental function.
3688
adc14c93
JB
3689Tue Sep 30 13:12:48 1997 Jim Blandy <jimb@totoro.red-bean.com>
3690
3691 Suggestion and script from Maciej Stachowiak:
3692 * boot-9.scm: Split off modules into separate, autoloadable files.
3693 This reduces startup time from 10.5s to 5.5s (user cpu).
3694 * calling.scm, common-list.scm, ls.scm, q.scm, runq.scm,
027ffa31 3695 string-fun.scm: New files, containing stuff that used to be in
adc14c93
JB
3696 boot-9.scm.
3697 * Makefile.am (ice9_sources): List new files here, for
3698 distribution and installation.
3699 * Makefile.in: Regenerated.
3700
5aa28c1e
JB
3701Mon Sep 29 23:53:55 1997 Jim Blandy <jimb@totoro.red-bean.com>
3702
3703 * Makefile.in: Regenerated with automake 1.2c.
3704
2f110c3c
MD
3705Mon Sep 29 03:21:24 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3706
d1005e3c
MD
3707 * slib.scm (slib:load): slib:load first tries to load the file
3708 named NAME, then NAME.scm. On error, report the error occuring at
3709 the first attempt (NAME) rather than the second (NAME.scm).
3710
2f110c3c 3711 * boot-9.scm: Bugfix: Hard-solder the print-option procedure into
027ffa31 3712 the make-options macro so that we needn't refer to a global
2f110c3c
MD
3713 symbol.
3714
83b38198
MD
3715Sun Sep 28 21:40:24 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3716
3717 * debug.scm: Moved options interface procedures to boot-9.scm.
3718
3719 * boot-9.scm: Define options interface procedures here instead.
3720
af01fdcd
JB
3721Sat Sep 27 20:19:20 1997 Jim Blandy <jimb@totoro.red-bean.com>
3722
3723 * boot-9.scm (separate-fields-discarding-char,
3724 separate-fields-after-char, separate-fields-before-char): Call
3725 continuation function, RET, as advertised: with each separated
3726 field a separate argument.
3727
3728 * Makefile.in: Regenerated with automake 1.2a.
3729
534a0099
MD
3730Sat Sep 20 14:23:53 1997 Mikael Djurfeldt <mdj@kenneth>
3731
3732 * slib.scm (slib:load): Export.
3733
3734 * boot-9.scm (in-vicinity): Bugfix: Don't add "/" to an empty
3735 vicinity;
3736 Provide defmacro.
3737
8fa5faad
MD
3738Thu Sep 18 01:24:31 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3739
3740 * r4rs.scm (apply): Set name property to 'apply.
3741
11b05261
MD
3742Tue Sep 16 22:09:50 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3743
3744 * boot-9.scm (keyword->symbol, display-usage-report): Changed
027ffa31 3745 length --> string-length. (Thanks to Aleksandar Bakic.)
0a54457d 3746 (separate-fields-discarding-char, separate-fields-after-char,
027ffa31 3747 separate-fields-before-char): Bugfix from Maciej Stachowiak
0a54457d 3748 <mstachow@mit.edu>. Thanks!
a4f9b1f6
MD
3749 (try-module-linked): Try to find module among those already
3750 registered.
3751 (try-module-dynamic-link): Removed the first test which
3752 corresponds to a call to `try-module-linked'.
3753 (resolve-module): Resolve modules in this order: 1. Already
3754 registered modules (for example those which have been statically
3755 linked), 2. Try to autoload an .scm-file, 3. Try to dynamically
3756 link a .so-file.
11b05261 3757
24b2aac7
MD
3758Mon Sep 15 23:39:54 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3759
3760 * boot-9.scm (iota): Renamed list-reverse! --> reverse!
3761
7cfae7e6
MD
3762Thu Sep 11 02:31:38 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3763
3764 * session.scm (name): New procedure: Gives name of object.
3765 (source): New procedure: Gives source of object.
3766
7a0ff2f8
MD
3767Wed Sep 10 20:12:45 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3768
f4be1689 3769 * boot-9.scm (primitive-macro?): New procedure.
7a0ff2f8
MD
3770
3771 * slib.scm: Added hack which transfers syntactic information from
3772 the builtin variable `define' to the slib version if module (ice-9
3773 syncase) has been loaded. This is necessary to get correct
3774 expansion inside the slib module.
3775
3776 * psyntax.ss (build-let, build-named-let): New output
027ffa31 3777 constructors.
7a0ff2f8
MD
3778 (build-lexical-var): Seed gensym with symbolic name.
3779 (self-evaluating?): Add keywords among self-evaluating types.
3780 (let): New core form.
3781 (if): Removed from core language.
3782 (or, and, let, cond): Removed syntactic definitions.
3783 (sc-expand3): New procedure: Expander which takes optional mode
027ffa31 3784 and eval-syntactic-expanders-when arguments.
7a0ff2f8
MD
3785
3786 * syncase.scm (psyncomp): New procedure: Recompiles psyntax.pp.
3787 Should be used inside the (ice-9 syncase) module with (use-syntax
3788 syncase) and with the current directory containing the psyntax.ss
3789 source.
3790 Added hack to transfer syntactic information from the builtin
3791 variable `define' to the slib version if module (ice-9 slib) has
3792 been loaded.
a8944ae1 3793
027ffa31 3794Fri Sep 5 05:47:36 1997 Mikael Djurfeldt <mdj@faun.nada.kth.se>
7a0ff2f8
MD
3795
3796 * syncase.scm (sc-interface, sc-expand): Removed hook setup.
3797 (syncase): Publish syntax transformer to be used with
3798 `use-syntax'.
3799 (sc-macro): Use this as the value when publishing macros.
3800
3801 * boot-9.scm (module-type): Added `transformer'.
3802 (make-module): Modified initialization.
3803 (module-transformer, set-module-transformer!): Selector and
027ffa31 3804 mutator for module-associated transformer.
7a0ff2f8 3805 (set-current-module): Use module-transformer to set
027ffa31 3806 `scm:eval-transformer'.
7a0ff2f8 3807 (module-use!): Previous change reverted.
f4be1689 3808 (use-syntax): New function: Install a transformer in current
027ffa31 3809 module.
7a0ff2f8
MD
3810 (sc-interface, sc-expand): Removed! :)
3811
027ffa31 3812Fri Sep 5 03:09:09 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
d43f8c97
MD
3813
3814 * emacs.scm (emacs-load): Added new parameter `module'.
3815
3816 * syncase.scm (putprop, getprop): Modified to use the object
027ffa31
JB
3817 properties of the variable object corresponding to the symbol;
3818 This way we can ride on the mechanisms of the module system.
d43f8c97
MD
3819 Changed `builtin-variable' calls to `define-public' calls.
3820 Setup the hooks sc-expand and sc-interface.
3821
3822 * boot-9.scm (sc-interface, sc-expand): New builtin variables.
3823 (set-current-module): Switch to and from sc-expand as
3824 scm:eval-transformer when going into and out of modules using
3825 syncase macros.
3826 (module-use!): Set scm:eval-transformer to sc-expand when adding
3827 the syncase interface.
3828
027ffa31 3829Thu Sep 4 14:57:04 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1f355b4f
MD
3830
3831 * syncase.scm (putprop): Temporary fix which publishes new syntax
3832 globally (the old behaviour was complex and connected to the inner
3833 workings of the current module system).
3834
027ffa31 3835Wed Sep 3 21:29:13 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
e9b7bb80
MD
3836
3837 * psyntax.ss: Updated.
3838 psyntax.pp: Bugfix: Previous version had some leading "t":s cut
3839 off!
3840
027ffa31 3841Tue Sep 2 00:26:42 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
e672f1b5
MD
3842
3843 * boot-9.scm (gensym): Removed (replaced by primitive).
3844 (obarray-gensym): Rewritten to use `gensym'.
3845 (gentemp): Rewritten to use `gensym'.
3846
027ffa31 3847Mon Sep 1 20:08:32 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
30d732a6
MD
3848
3849 * gtcl.scm (make-tcl-binder): Rewritten to choose bindings
3850 according to the following priorities:
3851 1. tcl bindings which are present in override-scheme-list
3852 2. bindings from the-scm-module
3853 3. tcl bindings
3854 This way the gtcl module can occur first in the use-list without
3855 disabling the scheme interpreter.
3856 (new-interpreter): New function.
3857
3858 * gwish.scm: Moved initialization code for the-interpreter to
027ffa31
JB
3859 gtcl.scm; Moved name space cleaning code to gtcl.scm and rewrote
3860 it; Call `new-interpreter'; Don't :use-module (guile).
30d732a6 3861
1aa8162b
JB
3862Thu Aug 28 23:48:53 1997 Jim Blandy <jimb@totoro.red-bean.com>
3863
3864 * Makefile.in: Regenerated.
3865
34695603
JB
3866Wed Aug 27 11:35:09 1997 Jim Blandy <jimb@totoro.red-bean.com>
3867
3868 * Makefile.in: Regenerated, so it uses "tar", not "gtar".
3869
52f1b046
MD
3870Mon Aug 25 22:00:44 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3871
3872 * emacs.scm (object->string, format, error-args->string): New
3873 procedures.
3874 (emacs-frame-eval): Reworked.
3875
a5be27cd
MD
3876Mon Aug 25 16:15:55 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3877
3878 * session.scm (apropos-internal): Musn't initialize symbol
3879 accumulator with a constant pair. That led to mutation of the
3880 source!
3881
68aed3ea
MD
3882Sun Aug 24 01:03:10 1997 Mikael Djurfeldt <mdj@kenneth>
3883
3884 * session.scm (vector-for-each): Removed.
3885 (apropos): vector-for-each --> array-for-each.
3886 (apropos-internal): New function. Return list of accessible
3887 symbols matching regexp.
3888
3889 * debug.scm (frame-number->index): New function. Convert frame
3890 number (as displayed in the backtrace) to frame index (to be used
3891 in stack-ref).
3892
3893 * emacs.scm (emacs-load): New arguments: interactivep: when
027ffa31 3894 non-false, send back results to Emacs; colnum: Column number;
68aed3ea
MD
3895 Use modules (ice-9 debug) and (ice-9 session);
3896 (no-stack, no-source): New simple-actions;
3897 (result-to-emacs): New procedure. Sends data to Emacs via the
3898 result protocol;
3899 (get-frame-source, emacs-select-frame, emacs-frame-eval,
3900 emacs-symdoc): New procedures.
8c5a8bed 3901
555f21d8
MD
3902Wed Aug 20 13:21:11 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3903
eb7ec1e8 3904 * emacs.scm (emacs-load): Adjust stack narrowing.
8c3420ad 3905 (whitespace-chars): Include #\np.
eb7ec1e8 3906
555f21d8
MD
3907 * syncase.scm: Also turn off debugging evaluator and recording of
3908 procedure names during loading of psyntax.pp.
3909
3910 * psyntax.pp: Removed leading blanks => 800K -> 100K.
3911
230c4353
MD
3912Tue Aug 19 02:39:41 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3913
19ef2a9b 3914 * syncase.scm: Don't tamper with debug mode setting when enabling
027ffa31 3915 macros. Instead cut the stack with start-stack.
a48930c6 3916 Load psyntax.pp with recording of positions turned off.
19ef2a9b 3917
ceb177a4 3918 * psyntax.pp, psyntax.ss (quasiquote): Changed fx= --> =.
230c4353 3919
f4be1689 3920 * syncase.scm: New file: Guile-adaption for syntax-case macros.
027ffa31
JB
3921 * psyntax.pp, psyntax.ss: Syntax-case macros, portable version 2 by
3922 R. Kent Dybvig, Oscar Waddell, Bob Hieb and Carl Bruggeman
230c4353 3923
0e81dabd
MD
3924Mon Aug 18 21:58:25 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3925
f4be1689 3926 * session.scm: New file: Session support.
0e81dabd
MD
3927 (apropos): New procedure: List bindings given regexp.
3928
027ffa31 3929Sat Aug 16 18:44:24 1997 Gary Houston <ghouston@actrix.gen.nz>
6afcd3b2
GH
3930
3931 * boot-9.scm: define tms accessors: clock, utime, stime, cutime,
3932 cstime.
3933
096d5f90
MD
3934Thu Aug 14 19:55:37 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3935
db75135d
MD
3936 * emacs.scm (emacs-load): Something has changed in the reader so
3937 that we now should set the port line count to the specified value
3938 (linum) instead of (- linum 1).
3939
096d5f90 3940 * slib.scm (slib:load): Use load-from-path instead of
027ffa31
JB
3941 primitive-load-path so that backtraces get narrowed properly at
3942 the top.
096d5f90
MD
3943
3944 * boot-9.scm (top-repl): Save stack already in signal handler in
3945 order to narrow it correctly.
3946 (save-stack): Adjust narrowing tag for the top of load-stacks.
3947
027ffa31 3948Tue Jul 29 01:18:08 1997 Gary Houston <ghouston@actrix.gen.nz>
7a6f1ffa
GH
3949
3950 * boot-9.scm (move->fdes, dup->port): use dup->fdes, not primitive-dup.
3951 (dup->fdes): deleted, now done in C.
3952
027ffa31 3953Sat Jul 26 08:00:42 1997 Gary Houston <ghouston@actrix.gen.nz>
956055a9
GH
3954
3955 * boot-9.scm (setenv): new procedure, scsh compatible.
3956
485cb6eb
MV
3957Sat Jul 26 21:30:10 1997 Marius Vollmer <mvo@zagadka.ping.de>
3958
3959 * boot-9.scm (with-fluids): New macro to go with the
027ffa31 3960 builtin `with-fluids*'.
485cb6eb 3961
4d0d7ef9
MD
3962Thu Jul 24 04:28:11 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3963
3964 * slib.scm (install-require-module): In newer versions of slib
027ffa31 3965 *catalog* is #f until the first access. Therefore we call
4d0d7ef9
MD
3966 require:provided? for a random feature if *catalog* is #f.
3967
8309a10d
MD
3968Wed Jul 23 20:13:04 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3969
3970 * boot-9.scm: If using emacs interface, enable backtraces
3971 automatically.
3972
027ffa31 3973Mon Jul 21 06:45:45 1997 Gary Houston <ghouston@actrix.gen.nz>
e38303a2
GH
3974
3975 * boot-9.scm (dup->port, dup->inport, dup->outport, dup->fdes,
3976 dup, fdes->inport, fdes->outport, port->fdes): new procedures.
3977 (duplicate-port): was a C primitive, now it's here.
3978 (move->fdes): allow the first argument to be a file descriptor.
3979 Return the modified port or file descriptor (was unspecified.)
3980
2e3e9351
JB
3981Fri Jul 11 00:13:43 1997 Jim Blandy <jimb@floss.red-bean.com>
3982
32552d73
JB
3983 Changes to compile under gnu-win32, from Marcus Daniels:
3984 * boot-9.scm (load-user-init): If HOME is unset, provide
3985 a default of /.
3986
2e3e9351
JB
3987 * boot-9.scm (define-public): Changed to accomodate Hobbit.
3988
db561408
JB
3989Tue Jun 24 00:31:47 1997 Jim Blandy <jimb@floss.red-bean.com>
3990
fcff2c5c 3991 * boot-9.scm, debug.scm, hcons.scm, lineio.scm, mapping.scm,
027ffa31 3992 poe.scm, slib.scm, tags.scm, threads.scm: Use normal list
fcff2c5c
JB
3993 notation, instead of #/ notation.
3994
db561408
JB
3995 * expect.scm (expect-strings): Pass regexp/newline flag to
3996 make-regexp.
3997
2409cdfa
JB
3998Mon Jun 23 16:13:38 1997 Jim Blandy <jimb@floss.red-bean.com>
3999
db561408
JB
4000 Fix inconsistencies in parsing of #/ style lists.
4001 * boot-9.scm (read-path-list-notation): New function.
4002 (parse-path-symbol): Deleted. Replaced by above.
4003 Plug in read-path-list-notation as the parser for #/ lists,
4004 instead of the anonymous lambda form calling parse-path-symbol.
4005 (Thanks to Maurizio Vitale.)
a8944ae1 4006
2409cdfa
JB
4007 * boot-9.scm (make-list): Remove the definition of this function
4008 from the (ice-9 common-list) module; make the `init' argument
4009 optional in the scm module's definition, to match the deleted
027ffa31 4010 definition. Harmony reigneth? (Thanks to Bernard URBAN.)
2409cdfa 4011
91b28bb5
JB
4012Sun Jun 22 18:33:17 1997 Jim Blandy <jimb@floss.red-bean.com>
4013
4014 Try to detect when people are using one version of libguile and a
4015 different version of ice-9. People have been skewing things and
4016 sending in bug reports.
4017 * version.scm.in: New file, which the configure script munges to
4018 produce version.scm, which contains the ice-9 config stamp.
4019 * boot-9.scm: Compare the libguile and ice-9 config stamps;
4020 display a warning if the two are different.
4021 * Makefile.am: Install version.scm, but don't distribute it.
4022 Distribute version.scm.in, but don't install it.
4023 * Makefile.in: Regenerated.
4024
9fbdb48f
JB
4025Thu Jun 19 21:01:16 1997 Jim Blandy <jimb@floss.red-bean.com>
4026
4027 * slib.scm (slib:warn): Alias for WARN function.
4028
e320da2f
JB
4029Fri Jun 13 00:32:04 1997 Jim Blandy <jimb@floss.red-bean.com>
4030
4031 * boot-9.scm (struct-printer): Fix off-by-one error in range
027ffa31 4032 check. Correctly check for struct printer tag.
e320da2f
JB
4033
4034 * expect.scm: Turn this into a module, (ice-9 expect).
4035 (expect-port, expect-timeout, expect-timeout-proc,
027ffa31
JB
4036 expect-eof-proc, expect-char-proc, expect, expect-strings,
4037 expect-select): Make these public definitions.
e320da2f
JB
4038 (expect-strings): Use make-regexp and regexp-exec, instead of
4039 regcomp and regexec. We've omitted the REG_NEWLINE flag; hope
4040 that's okay.
4041
4042 * boot-9.scm (with-regexp-parts): Comment this out. It has no
027ffa31
JB
4043 users in the core, and relies on mildly hairy details of the old
4044 regexp interface.
e320da2f
JB
4045
4046 * test.scm: Re-enable tests asserting that '() is true, and not a
4047 boolean. This stuff has been true for a while.
4048
4049 * boot-9.scm (ipow-by-squaring, butlast): Fix uses of outdated
027ffa31 4050 function names.
e320da2f
JB
4051
4052 * boot-9.scm (with-excursion-getter-and-setter, q-rear): Doc
4053 fixes.
4054
3688473b
JB
4055Wed Jun 11 00:31:40 1997 Jim Blandy <jimb@floss.red-bean.com>
4056
4057 * Makefile.in: Regenerated after xtra_PLUGIN_guile_libs change in
4058 ../configure.in.
4059
027ffa31 4060Fri Jun 6 14:37:18 1997 Marius Vollmer <mvo@zagadka.ping.de>
0b46857f
MV
4061
4062 * boot-9.scm (struct-printer): Bugfix: Check the layout of the
027ffa31 4063 vtable and not the one of the struct.
0b46857f 4064
027ffa31 4065Wed Jun 4 23:27:16 1997 Marius Vollmer <mvo@zagadka.ping.de>
5dade857
MV
4066
4067 * boot-9.scm (struct-layout, %struct-printer-tag, struct-printer,
027ffa31
JB
4068 make-struct-printer, set-struct-printer-in-vtable!): New bindings
4069 to support printing of structures.
4070 (record-type-vtable, make-record-type): Add slot to hold printing
4071 function and initialize it with something appropriate. Removed
4072 commented out printing code.
5dade857
MV
4073 (record-type-name, record-type-fields): Adjusted slot offsets.
4074 (%print-module): Reduce argument list to "mod" and "port".
a8944ae1 4075
027ffa31 4076Tue Jun 3 17:04:18 1997 Jim Blandy <jimb@totoro.cyclic.com>
95d59d10
JB
4077
4078 * slib.scm (identity): New function, used by SLIB.
4079
027ffa31 4080Sat May 31 18:57:12 1997 Gary Houston <ghouston@actrix.gen.nz>
e1a191a8
GH
4081
4082 * boot-9.scm: signal-handler, alarm-thunk: removed.
4083 don't define ticks-interrupt etc.
4084 top-repl: install signal handlers for SIGINT, SIGFPE, SIGSEGV, SIGBUS
4085 during call to scm-style-repl.
a8944ae1 4086
19da35d0
JB
4087Fri May 30 18:08:10 1997 Jim Blandy <jimb@floss.cyclic.com>
4088
4089 * slib.scm (slib:load): Use primitive-load-path instead of
4090 basic-load. This is probably wrong, but hopefully the entire
4091 source access system will be revised soon anyway, and this will
4092 make require behave more like Emacs Lisp's require. If this
4093 breaks something, please let me know. Maybe this is real dumb.
4094
0e165281
JB
4095Thu May 29 02:36:48 1997 Jim Blandy <jimb@floss.cyclic.com>
4096
027ffa31 4097 * regex.scm: Add a module declaration. Use DEFINE-PUBLIC everywhere.
0e165281
JB
4098 * boot-9.scm: If the `regex' feature is present, use the module
4099 (ice-9 regex).
4100
737c9113
JB
4101Tue May 27 22:48:14 1997 Tim Pierce <twp@twp.tezcat.com>
4102
4103 * regex.scm: New file.
4104 * Makefile.am (subpkgdata_DATA): Add regex.scm.
4105 * Makefile.in: Regenerated.
4106
36539a15
JB
4107Mon May 26 17:24:48 1997 Jim Blandy <jimb@totoro.cyclic.com>
4108
4109 * COPYING, boot-9.scm, debug.scm, emacs.scm, expect.scm, gtcl.scm,
027ffa31
JB
4110 gwish.scm, hcons.scm, lineio.scm, mapping.scm, nonblocking.scm,
4111 oldprint.scm, poe.scm, r4rs.scm, source.scm, tags.scm, test.scm,
4112 threads.scm: New address for FSF.
36539a15 4113
142ad3d9
JB
4114Fri May 16 04:09:45 1997 Jim Blandy <jimb@floss.cyclic.com>
4115
4116 * debug.scm: Update copyright years; this file has been worked on
027ffa31 4117 in 1997.
142ad3d9 4118
027ffa31 4119Thu May 15 07:56:08 1997 Gary Houston <ghouston@actrix.gen.nz>
cafa4c68
GH
4120
4121 * expect.scm: use gettimeofday instead of get-internal-real-time
4122 and use a floating point timeout when calling select. Untested,
4123 since the regex library is currently AWOL.
4124
223be5f0
JB
4125Wed May 14 21:00:30 1997 Jim Blandy <jimb@floss.cyclic.com>
4126
4127 * boot-9.scm (eval-string): Function deleted; it was already
4128 implemented in C, so there's no point in making a divergable copy
4129 here.
4130
9b01064c
JB
4131Tue May 13 16:40:06 1997 Jim Blandy <jimb@floss.cyclic.com>
4132
4133 * Makefile.in: Regenerated, using automake-1.1p.
4134
4135Tue May 13 16:40:06 1997 Jim Blandy <jimb@floss.cyclic.com>
4136
4137 * Makefile.in: Regenerated, using automake-1.1p.
4138
027ffa31 4139Tue May 13 02:48:49 1997 Gary Houston <ghouston@actrix.gen.nz>
1fbc60b2
GH
4140
4141 * boot-9.scm (error-catching-loop): don't read a line from
4142 current input when quit is encountered, the previous change
4143 fixes this too.
4144
c7d97590
JB
4145Mon May 12 19:00:21 1997 Jim Blandy <jimb@floss.cyclic.com>
4146
4147 * boot-9.scm (scm-style-repl): After reading an expression,
4148 consume any trailing newline (perhaps preceded by whitespace), to
027ffa31 4149 avoid screwing up GDB. More detail in comments.
c7d97590 4150
027ffa31 4151Mon May 5 13:18:38 1997 Jim Blandy <jimb@floss.cyclic.com>
6b3f3366
JB
4152
4153 * Makefile.am (ETAGS_ARGS): New variable, since we're not treating
4154 the Scheme code like code yet.
4155 * Makefile.in: Resrac,husrched.
4156
eea324ee
MV
4157Wed Apr 30 15:25:15 1997 Marius Vollmer <mvo@zagadka.ping.de>
4158
4159 * boot-9.scm (link-dynamic-module): Do not catch errors from
027ffa31
JB
4160 dynamic-link and dynamic-call. When the shared library exists it
4161 is now assumed to be suitable for a dynamic C module.
a8944ae1 4162
ef79b65b
MV
4163Fri Apr 25 21:21:35 1997 Marius Vollmer <mvo@zagadka.ping.de>
4164
4165 * boot-9.scm (process-use-modules): New function to support the
027ffa31 4166 use-modules macro
ef79b65b
MV
4167 (use-modules): throw an error iff one of the requested modules
4168 can't be found.
a8944ae1 4169
027ffa31 4170Tue Apr 29 06:54:46 1997 Gary Houston <ghouston@actrix.gen.nz>
3be77013
GH
4171
4172 * boot-9.scm: don't define timer-thunk or gc-thunk.
4173
28c682fa
JB
4174Sun Apr 27 17:56:09 1997 Jim Blandy <jimb@floss.cyclic.com>
4175
4176 * aclocal.m4: Removed; unnecessary, given changes of Apr 24.
4177
4178 * Makefile.am (subpkgdatadir): Use "ice-9" instead of "@module@";
4179 we're not using AM_INIT_GUILE_MODULE any more.
4180 * Makefile.in: Regeneratitetedrerd.
4181
20108301
JB
4182Thu Apr 24 01:33:33 1997 Jim Blandy <jimb@floss.cyclic.com>
4183
819f936b
JB
4184 Get 'make dist' to work again.
4185 * Makefile.am (EXTRA_DIST): Remove PLUGIN files.
4186 * Makefile.in: Regenerated, like two tons of fleas.
4187
20108301
JB
4188 Changes for reduced Guile distribution: one configure script,
4189 no plugins.
4190 * configure.in, configure: Removed.
4191 * Makefile.in: Regenerated.
4192
dab94cac
JB
4193Sat Apr 19 08:03:50 1997 Jim Blandy <jimb@floss.cyclic.com>
4194
48d224d7 4195 * boot-9.scm (eval-string, command-line, load-user-init): New
dab94cac
JB
4196 functions.
4197
027ffa31 4198Sat Apr 12 08:27:05 1997 Gary Houston <ghouston@actrix.gen.nz>
65495221
GH
4199
4200 * boot-9.scm (log10): defined.
4201
027ffa31 4202Tue Apr 1 17:46:49 1997 Gary Houston <ghouston@actrix.gen.nz>
708bf0f3
GH
4203
4204 * expect.scm (expect-select): correct the millisecond timeout
4205 arithmetic (from Marko.Kohtala@ntc.nokia.com).
a8944ae1 4206
027ffa31 4207Mon Mar 31 03:23:19 1997 Gary Houston <ghouston@actrix.gen.nz>
708bf0f3
GH
4208
4209 * boot-9.scm (open-input-pipe, open-output-pipe): defined here
4210 instead of in libguile.
4211 (tm:sec etc.) new accessors for broken-down time.
4212 (set-tm:sec etc.) new setters for broken-down time.
4213
027ffa31 4214Thu Mar 27 05:06:00 1997 Gary Houston <ghouston@actrix.gen.nz>
9337637f
GH
4215
4216 * boot-9.scm (netent:addrtype, servent:port): added missing
4217 procedures.
4218 (netent:net, servent:proto): repaired.
4219 (utsname:sysname etc.): new accessors for uname.
4220
027ffa31 4221Tue Mar 25 03:04:03 1997 Gary Houston <ghouston@actrix.gen.nz>
9337637f
GH
4222
4223 * boot-9.scm (sockaddr:fam, sockaddr:path, sockaddr:addr,
4224 sockaddr:port): new functions.
4225
027ffa31 4226Wed Mar 19 04:50:34 1997 Gary Houston <ghouston@actrix.gen.nz>
bce074ee
GH
4227
4228 * boot-9.scm: define accessor procedures for the objects returned
4229 by getpw, getgr, gethost, getnet, getproto, getserv (e.g.,
4230 passwd:name, where the first component is the name of the C structure
027ffa31 4231 and the second is the unprefixed C member name.)
bce074ee 4232
027ffa31 4233Tue Mar 18 18:39:31 1997 Gary Houston <ghouston@actrix.gen.nz>
bce074ee 4234
095936d2 4235 * boot-9.scm (setpwent, setgrent, sethostent, setnetent, setprotoent,
bce074ee
GH
4236 setservent): no longer take an argument, it was bogus.
4237
027ffa31 4238Thu Mar 13 00:13:41 1997 Gary Houston <ghouston@actrix.gen.nz>
81e2a235
GH
4239
4240 * boot-9.scm (scm-error): deleted, reimplemented in C.
4241
04798288
MD
4242Mon Mar 10 15:48:31 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
4243
4244 * boot-9.scm (process-define-module): Modified to handle both
4245 keywords and symbols.
4246
027ffa31 4247Sat Mar 8 04:32:44 1997 Gary Houston <ghouston@actrix.gen.nz>
75a97b92
GH
4248
4249 * slib.scm: update read usage.
4250
4251 * r4rs.scm: update primitive-load usage.
4252 Don't define read-sharp.
4253
4254 * boot-9.scm: use read-hash-extend to install extra read syntax.
4255 (read-sharp): removed.
4256 Adjust usage of primitive-load-path, read, which no longer take
4257 case_i or read-sharp arguments.
4258
027ffa31 4259Sat Mar 8 00:07:54 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
63a3d814 4260
90d5e280
MD
4261 * boot-9.scm: Added loading of session support module.
4262
63a3d814 4263 * debug.scm: Removed `display-application'. (Replaced by
027ffa31 4264 primitive procedure.)
63a3d814
MD
4265
4266 * boot-9.scm (beautify-user-module!): Don't add the root module
4267 interface to the end of the use-list of the root module.
4268
027ffa31 4269Thu Mar 6 07:26:34 1997 Gary Houston <ghouston@actrix.gen.nz>
75a97b92
GH
4270
4271 * boot-9.scm: repl-quit, repl-abort: obsolete variables deleted.
4272
027ffa31 4273Wed Mar 5 20:30:24 1997 Gary Houston <ghouston@actrix.gen.nz>
f3c23298
GH
4274
4275 * boot-9.scm: check use-emacs-interface for emacs support.
4276
027ffa31 4277Sun Mar 2 19:47:14 1997 Gary Houston <ghouston@actrix.gen.nz>
7950df7c
GH
4278
4279 * boot-9.scm (scm-style-repl): call repl-report-start-timing if
4280 read gets EOF.
4281 * (exit): alias for quit.
4282
027ffa31 4283Sun Mar 2 05:25:11 1997 Gary Houston <ghouston@actrix.gen.nz>
8e44e7a0
GH
4284
4285 * boot-9.scm (error-catching-loop thunk): use a status variable to
4286 return the quit args.
4287 (scm-style-repl): call -quit, passing return value from
4288 error-catching-repl. Make -quit return its args.
1a36eef2 4289 stand-alone-repl: comment out, since it seems unused.
7950df7c 4290
8e44e7a0
GH
4291 (error-catching-loop thunk): discard trailing junk after a (quit).
4292
027ffa31 4293Sat Mar 1 15:24:39 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
9a942103 4294
06a02069
MD
4295 * boot-9.scm: Removed the old printer code.
4296
4297 * r4rs.scm (apply, call-with-current-continuation): Added comment
4298 explaining why apply and call/cc need to be closures.
4299
4300 * boot-9.scm (apply, call-with-current-continuation): Bugfix:
4301 Removed. These definitions are already present in r4rs.scm.
4302
9a942103 4303 * debug.scm (trace-entry, trace-exit): Check that we're on a repl
027ffa31
JB
4304 stack before printing traced frames; Re-enable trace flag at end
4305 of handlers.
9a942103 4306
027ffa31 4307Sat Mar 1 00:10:38 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
e6875011 4308
59e1116d
MD
4309 * debug.scm: Add hook for reset of trace level at abort.
4310
4311 * boot-9.scm (run-hooks): New procedure.
4312 (add-hooks!): New macro.
4313 Change hooks to use these functions.
4314
027ffa31
JB
4315 * debug.scm: *Warning* This feature is a bit premature. I add
4316 it anyway because 1. it is very useful, and, 2. you can start
e6875011
MD
4317 making it less premature by complaining to me and by modifying
4318 the source! :-)
4319 (trace): Given one or more procedure objects, trace each one.
027ffa31 4320 Given no arguments, show all traced procedures.
e6875011 4321 (untrace): Given one or more procedure objects, untrace each one.
027ffa31
JB
4322 Given no arguments, untrace all traced procedures. The tracing in
4323 Guile have an advantage to most other systems: We don't create new
4324 procedure objects, but mark the procedure objects themselves.
4325 This means that also anonymous and internal procedures can be
4326 traced.
e6875011
MD
4327
4328 * boot-9.scm (error-catching-loop): Added handling of apply-frame
4329 and exit-frame exceptions.
a8944ae1 4330
095936d2 4331 * boot-9.scm (assert-repl-prompt, the-prompt-string): Removed.
e6875011
MD
4332 (set-repl-prompt!): Setter for repl prompt.
4333 (scm-style-repl): If prompt is #f, don't prompt; if prompt is a
027ffa31
JB
4334 string, display it; if prompt is a thunk, call it and display its
4335 result; otherwise display "> ".
4336 (Change suggested by Roland Orre <orre@nada.kth.se>.)
0065d90e
MD
4337
4338 * r4rs.scm (%load-verbosely): Reverted change to
027ffa31
JB
4339 `module-defined?', since the module system isn't bootstrapped when
4340 we load r4rs.scm. This is just a temporary fix to make the
0065d90e
MD
4341 repository version runnable.
4342
eb52a06b
MD
4343Thu Feb 27 23:25:47 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
4344
4345 * boot-9.scm: Removed the enabling of debug evaluator and
027ffa31
JB
4346 recording of source code positions. This was placed there for our
4347 convenience, but it has already sneaked into the distribution
4348 once... so we'd better add this in our local copies instead when
4349 we need it. (These options are normally enabled at the end of
eb52a06b
MD
4350 boot-9.scm when loading the debug module.)
4351
d18d1b6d
MV
4352Thu Feb 27 16:04:45 1997 Marius Vollmer <mvo@zagadka.ping.de>
4353
4354 * boot-9.scm (module-defined?): New function.
4355 (macroexpand-1, macroexpand): Use local-ref instead of defined?
027ffa31 4356 and eval.
d18d1b6d 4357 * r4rs.scm (%load-verbosely): Use "module-defined?" instead of
027ffa31 4358 "defined?".
d18d1b6d 4359 * slib.scm (defined?): New function to take the place of the
027ffa31 4360 builtin "defined?". It allways examines the slib module.
d18d1b6d 4361
15ae1bee
MD
4362Mon Feb 24 21:46:15 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
4363
4364 * configure.in: Added AM_MAINTAINER_MODE
4365
027ffa31 4366Sat Feb 15 04:51:20 1997 Gary Houston <ghouston@actrix.gen.nz>
c2132276
GH
4367
4368 * boot-9.scm (read-sharp): define directly, don't go through a
4369 %read-sharp layer.
4370
027ffa31 4371Tue Feb 11 08:45:48 1997 Gary Houston <ghouston@actrix.gen.nz>
c2132276
GH
4372
4373 * boot-9.scm (uniform-vector-set!): use uniform-array-set1!, not
4374 uniform-vector-set1! which doesn't exist.
4375
d590bbf6
MD
4376Mon Feb 10 03:01:48 1997 Mikael Djurfeldt <mdj@kenneth>
4377
4378 * boot-9.scm (backtrace): Removed. (A C version now exists in
4379 backtrace.c.)
4380
027ffa31 4381Fri Jan 24 06:05:36 1997 Gary Houston <ghouston@actrix.gen.nz>
1e531c3a
GH
4382
4383 * boot-9.scm (read-line!, read-delimited!, read-delimited,
4384 read-line): new procedures, see libguile/ChangeLog.
4385
bb0102f7
MV
4386Thu Jan 16 17:07:03 1997 Marius Vollmer <mvo@zagadka.ping.de>
4387
4388 Added dynamic linking of modules. See libguile/DYNAMIC-LINKING.
4389
4390 * boot-9.scm (split-c-module-name, convert-c-registered-modules,
027ffa31
JB
4391 init-dynamic-module, dynamic-maybe-call,
4392 find-and-link-dynamic-module, link-dynamic-module,
4393 try-module-dynamic-link, registered-modules): New definitions for
4394 dynamic linking of modules.
bb0102f7 4395 (resolve-module): Try to dynamically link the requested module
027ffa31 4396 after failing to load it as Scheme code.
bb0102f7 4397
027ffa31 4398Wed Jan 8 05:50:14 1997 Gary Houston <ghouston@actrix.gen.nz>
920235cc
GH
4399
4400 * boot-9.scm (getservbyport, getservbyname): remove stray %.
4401
027ffa31 4402Tue Jan 7 20:02:24 1997 Jim Blandy <jimb@floss.cyclic.com>
198befde
JB
4403
4404 * boot-9.scm (and=>): Rename THUNK argument to PROCEDURE, 'cos
4405 that's what it is.
4406
4407 * lineio.scm (make-line-buffering-input-port): Properly test for
4408 the case of an empty buffer list. The old code assumed that '()
4409 was false.
4410
027ffa31 4411Mon Jan 6 01:13:53 1997 Mikael Djurfeldt <mdj@kenneth>
33cf699f 4412
095936d2 4413 * boot-9.scm (use-modules): New macro (from Marius Vollmer).
33cf699f 4414 (use-modules <module name> ...) Put the the modules named by
027ffa31 4415 <module name> ... on the use list of the current module.
33cf699f 4416
027ffa31 4417Sun Jan 5 15:52:59 1997 Jim Blandy <jimb@floss.cyclic.com>
7a818853
JB
4418
4419 * boot-9.scm (error-catching-loop): Remove message saying that
4420 typing "$" will put you in the debugger. This isn't implemented
4421 yet.
4422
506067f0
JB
4423Sun Dec 22 23:27:25 1996 Jim Blandy <jimb@floss.cyclic.com>
4424
4425 * boot-9.scm (delq-all!): Function deleted; delq!'s semantics have
4426 been fixed, so this function is superfluous.
4427 (transform-usage-lambda): Use delq!, not delq-all!.
4428
2ebf3156
MV
4429Tue Dec 17 20:36:45 1996 Marius Vollmer <mvo@zagadka.ping.de>
4430
7a818853 4431 * boot-9.scm (resolve-module): New optional parameter that
027ffa31 4432 controls whether autoloading is attempted or not. Default is #t.
2ebf3156
MV
4433 (process-define-module): Don't autoload the defined module.
4434 (try-module-autoload): Don't autoload the directory modules.
4435
7a818853 4436 * boot-9.scm (process-define-module): Ensure that the-scm-module
027ffa31
JB
4437 is last in the `uses' list to allow shadowing builtin
4438 bindings. All :use-module options are added in the order they
4439 appear in the arguments but before anything already on the list
4440 (such as the-scm-module).
2ebf3156 4441
027ffa31 4442Wed Dec 11 21:06:05 1996 Gary Houston <ghouston@actrix.gen.nz>
00f06035
GH
4443
4444 * slib.scm (slib-parent-dir): throw error if #f returned from
027ffa31 4445 %search-load-path.
00f06035 4446
733943b9
TT
4447Sat Nov 30 23:57:28 1996 Tom Tromey <tromey@cygnus.com>
4448
4449 * PLUGIN/greet, PLUGIN/split.sed, PLUGIN/this.configure: Removed.
4450 * Makefile.am, aclocal.m4: New files.
4451 * configure.in: Updated for Automake.
4452
84abd243
MV
4453Wed Nov 27 14:16:14 1996 Marius Vollmer <mvo@zagadka.ping.de>
4454
4455 * boot-9.scm (macroexpand-1, macroexpand), slib.scm
027ffa31
JB
4456 (slib:features), r4rs.scm (%load-verbosely): "defined?" is now a
4457 function, use it accordingly.
a8944ae1 4458
a31bc6fb
JB
4459Thu Nov 21 11:12:10 1996 Jim Blandy <jimb@floss.cyclic.com>
4460
4461 It's an "eval closure", not an "eval thunk." A thunk is a
4462 function of no arguments.
4463 * boot-9.scm (module-type): Rename module field.
4464 (make-module, eval-in-module, make-root-module,
a8944ae1 4465 set-current-module): Uses changed.
a31bc6fb
JB
4466 (module-eval-closure, set-module-eval-closure!,
4467 root-module-closure): Renamed from module-eval-thunk,
4468 set-module-eval-thunk!, root-module-thunk.
4469 (set-current-module): Change uses of *top-level-lookup-thunk* to
4470 *top-level-eval-closure*.
4471
3763761c
JB
4472Wed Nov 20 14:45:27 1996 Jim Blandy <jimb@totoro.cyclic.com>
4473
4474 * slib.scm (slib-parent-dir): Use string-length, not length.
4475 (Thanks to Bernard Urban.)
4476
027ffa31 4477Sat Nov 2 20:00:42 1996 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
7ad737b6 4478
7a818853 4479 * boot-9.scm: The debugging evaluator and recording of positions
7ad737b6
MD
4480 aren't enabled by default any longer (they are switched on in
4481 debug.scm). But during development we want to have them also
4482 *inside* boot-9.scm. Therefore, two lines are added at the
4483 beginning of boot-9.scm to enable these.
a8944ae1 4484
7ad737b6 4485 Call `provide' so that `records' are included among the
027ffa31 4486 `*features*'.
a8944ae1 4487
7ad737b6
MD
4488 The scheme for saving the stack has been adjusted: save-stack is
4489 now commonly available for saving the stack. Calling `save-stack'
4490 sets a flag `stack-saved?' which prevents overwriting the stack.
4491 `stack-saved?' is reset at `abort'.
a8944ae1 4492
7ad737b6 4493 Spelling correction: seperate --> separate.
a8944ae1 4494
7ad737b6 4495 Removed `:'s that had creeped into some comments.
a8944ae1 4496
7a818853 4497 The repl now doesn't print #<unspecified> results any longer
7ad737b6
MD
4498 If the user wants to see this, he can do
4499 (assert-repl-print-unspecified #t) in his startup file.
a8944ae1 4500
7a818853 4501 The user now gets a friendly message instead of a backtrace at
7ad737b6 4502 error.
a8944ae1 4503
7ad737b6 4504 Added `before-read-hook'.
a8944ae1 4505
7ad737b6 4506 Load module (ice-9 emacs) if option `-e' was specified.
a8944ae1 4507
7ad737b6 4508 (provide): New function.
a8944ae1 4509
7ad737b6
MD
4510 (error): Save stack at entry, so that Guile entrails won't show up
4511 in backtraces.
a8944ae1 4512
7ad737b6 4513 (backtrace): New function.
a8944ae1 4514
7a818853 4515 (save-stack): Can now take arbitrary number of stack narrowing
7ad737b6
MD
4516 specifier pairs. The first specifier in a pair controls inner
4517 border, the second the outer border. A number means cut that
4518 number of frames, a procedure object means cut until that object
4519 is found in operator position in a frame.
4520
4521 * debug.scm: Enable debugging evaluator and recording of positions
4522 by default.
4523
4524 * slib.scm (slib:load): Adapt to the new behavior of
4525 primitive-load: It doesn't any longer try both with and without
4526 ".scm" extension. (We don't want to use %search-load-path here.)
a8944ae1 4527
7ad737b6 4528 (implementation-vicinity): New function. slib requires it
a8944ae1 4529
7ad737b6 4530 (library-vicinity): Updated.
a8944ae1 4531
7ad737b6 4532 Load "require.scm" in the library-vicinity.
a8944ae1 4533
7ad737b6 4534 (install-require-vicinity, install-require-module): New functions.
a8944ae1 4535
99f97bfe
JB
4536Mon Oct 28 17:56:29 1996 Jim Blandy <jimb@floss.cyclic.com>
4537
581a242b
JB
4538 * boot-9.scm (load-from-path): New function.
4539
4540 * boot-9.scm (try-load, basic-try-load, try-load-module,
4541 try-load): Deleted. I don't think they're being used.
4542
48be3fb3
JB
4543 * Makefile.in (scm_files): Add r4rs.scm and test.scm to this list,
4544 so they'll get distributed.
4545
4546 Get Guile to be a little less chatty by default. The new user
4547 should see as little clutter as possible.
4548 * r4rs.scm (%load-verbosely): Make this #f by default.
4549 * boot-9.scm (scm-repl-verbose): Make this #f by default.
4550 (scm-style-repl): Don't run 'pk' on the value passed to quit.
4551
4552 * r4rs.scm: New file.
4553 * boot-9.scm: Load r4rs.scm, first thing.
4554 (OPEN_READ, OPEN_WRITE, OPEN_BOTH, *null-device*, open-input-file,
027ffa31
JB
4555 open-output-file, open-io-file, close-input-port,
4556 close-output-port, close-io-port, call-with-input-file,
4557 call-with-output-file, with-input-from-port, with-output-to-port,
4558 with-error-to-port, with-input-from-file, with-output-to-file,
4559 with-error-to-file, with-input-from-string, with-output-to-string,
4560 with-error-to-string, the-eof-object): Definitions moved to
48be3fb3
JB
4561 r4rs.scm. Not all of them are R4RS, but those that are use those
4562 that are not.
4563 (load, %load-verbosely, %load-announce): Moved, along with code to
4564 set %load-hook, to r4rs.scm.
4565
4566 * test.scm: New file.
4567
4568 * boot-9.scm (integer?): Definition deleted, in favor of the one
4569 present in libguile (which used to be called int?). I have no
4570 idea why integer? didn't just call int? to begin with.
4571
4572 * boot-9.scm (<, <=, =, >, >=): Definitions in terms of <?, <=?,
4573 =?, >?, and >=? deleted; they're defined that way by libguile now.
4574
99f97bfe 4575 * boot-9.scm (load): Simplified; primitive-load does most of this
027ffa31
JB
4576 work now.
4577 (%load-announce-win): Removed; no longer used. Set %load-hook to
4578 call %load-announce.
99f97bfe 4579
027ffa31 4580Sun Oct 27 07:47:03 1996 Gary Houston <ghouston@actrix.gen.nz>
3afb28ce 4581
4fe3604d
JB
4582 * boot-9.scm (stat:dev, stat:ino, stat:mode, stat:nlink, stat:uid,
4583 stat:gid, stat:rdev, stat:size, stat:atime, stat:mtime,
4584 stat:ctime, stat:blksize, stat:blocks) accessor functions for stat
4585 components.
3afb28ce
GH
4586 (file-is-directory?): use stat:type.
4587
3065a62a
JB
4588Fri Oct 25 03:34:47 1996 Jim Blandy <jimb@floss.cyclic.com>
4589
4590 * boot-9.scm (%read-sharp): Don't recognize the `#!' syntax here;
4591 that's now taken care of in libguile, and in a way compatible with
4592 SCSH (which this isn't).
4593
e4c5095f
JB
4594Mon Oct 21 18:52:36 1996 Jim Blandy <jimb@totoro.cyclic.com>
4595
4596 * boot-9.scm: Formatting tweaks.
4597
1bb961a3
MD
4598Fri Oct 18 01:03:08 1996 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
4599
4600 * boot-9.scm (handle-system-error): Added hooks before-error-hook,
027ffa31
JB
4601 after-error-hook, before-backtrace-hook and after-backtrace-hook
4602 to the error handler. E.g.: fancy emacs support could plug into
4603 these.
1bb961a3 4604 (save-stack): New function. The stack is now made differently
027ffa31
JB
4605 depending on the stack id. (The motivation is to make a better
4606 choice regarding what stack frames to present to the user.)
1bb961a3 4607 (error-catching-loop): Stack handling code moved outside into
027ffa31 4608 save-stack.
1bb961a3 4609
027ffa31 4610Thu Oct 17 20:33:08 1996 Gary Houston <ghouston@actrix.gen.nz>
9a0d70e2 4611
d7189b49
GH
4612 * Makefile.in (scm_files): add expect.scm.
4613
4614 * expect.scm: new file ported from guile-iii.
4615
9a0d70e2
GH
4616 * boot-9.scm: remove handle-system-error, after moving the code into
4617 error-catching-loop.
4618 Don't set 'throw-handler-default property on error keys.
4619 Just interpret (almost) any throw with 4 args as an error throw.
4620 Delete some try-load stuff that was already commented out.
4621
35c5db87
GH
4622 Second thoughts, keep handle-system-error but call it from
4623 error-catching-loop.
4624
d065b65f
JB
4625Tue Oct 15 17:07:20 1996 Jim Blandy <jimb@floss.cyclic.com>
4626
aa9576ad
JB
4627 * boot-9.scm: Doc fixes.
4628 (make-module): Rework for readability.
4629 (make-root-module, make-scm-module): USES argument to make-module
027ffa31 4630 should be '(), not #f.
aa9576ad 4631
d065b65f
JB
4632 * boot-9.scm (try-load): %sys-load-path has been renamed to
4633 primitive-load-path; adjust call here.
4634
c01c94bf
MD
4635Tue Oct 15 14:25:01 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
4636
d065b65f 4637 * boot-9.scm (signal-handler): Bugfix: Moved the recording of
027ffa31 4638 the stack to the correct place: when it is decided to generate an
c01c94bf
MD
4639 error-signal.
4640
2dfc85c0
MD
4641Mon Oct 14 22:20:30 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
4642
4643 * boot-9.scm (error-catching-loop, signal-handler,
027ffa31
JB
4644 handle-system-error): Backtracing now works for signals aswell;
4645 Backtracing mechanism can now identify the stack root created by
4646 start-stack so that the user isn't exposed to system stack frames.
2dfc85c0 4647
84d8ad97
MD
4648Mon Oct 14 06:05:42 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
4649
4650 * Makefile.in: Added threads.scm.
a8944ae1 4651
4f0292cf
MD
4652Mon Oct 14 04:21:51 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
4653
4654 * debug.scm (make-enable, make-disable): Simplified.
4655
4656 * boot-9.scm: Renamed %%throw-handler-default -->
027ffa31 4657 throw-handler-default.
4f0292cf
MD
4658 ((handle-system-error key . arg-list)): Changed the way errors are
4659 reported.
4660 ((scm-style-repl)): Wrap up the call to eval in a start-stack
027ffa31 4661 acro.
4f0292cf 4662 ((error-catching-loop thunk)): Introduce a lazy-catch into
027ffa31 4663 error-catching-loop so that the stack can be captured.
4f0292cf 4664
1eaceb61
JB
4665Thu Oct 10 22:27:32 1996 Jim Blandy <jimb@totoro.cyclic.com>
4666
4667 * mapping.scm (hash-table-mapping): Explicitly request that
027ffa31 4668 make-vector fill new vectors with '(); this will make it easier to
1eaceb61
JB
4669 port Guile Scheme code to other Schemes.
4670 * boot-9.scm (make-print-style, make-print-table): Same.
4671
027ffa31 4672Sun Oct 6 03:54:59 1996 Gary Houston <ghouston@actrix.gen.nz>
6fa8995c
GH
4673
4674 * boot-9.scm (load): rewritten again.
4675 Append "." to the default %load-path.
4676 (feature?): new function: checks for a symbol in the features list.
4677 (module-local-variable): remove apparently useless (caddr (list m v
4678 ...))
4679 (%load-announce): minor formatting change.
4680 (file-exists?): use access? if posix is featured.
4681 (file-is-directory?): use stat if i/o-extensions is featured.
a8944ae1 4682 (try-module-autoload module-name): use file-exists? before
6fa8995c
GH
4683 file-is-directory?
4684
027ffa31 4685Sat Oct 5 18:54:03 1996 Mikael Djurfeldt <mdj@kenneth>
8b4a21d1 4686
8acae5bb
MD
4687 * boot-9.scm: Added conditional loading of threads.scm.
4688
4689 * threads.scm: New file. Modified from the Cygnus-r0.3
4690 distribution.
4691
8b4a21d1
MD
4692 * boot-9.scm (error-catching-loop): Added handling of key
4693 `switch-repl'.
4694
4695 * boot-9.scm: Name change %%bad-throw --> bad-throw.
4696
027ffa31 4697Wed Oct 2 23:38:44 1996 Jim Blandy <jimb@totoro.cyclic.com>
c90c9685
JB
4698
4699 * boot-9.scm (make-record-type, record-constructor): Don't assume
4700 the empty list is false when parsing the argument list.
4701
4702Mon Sep 30 22:15:50 1996 Jim Blandy <jimb@totoro.cyclic.com>
4703
4704 * boot-9.scm (signal-handler): Clean up logic.
4705
4706 * boot-9.scm (load): Assume %load-path is always bound.
4707
027ffa31 4708Sat Sep 28 00:15:37 1996 Gary Houston <ghouston@actrix.gen.nz>
5552355a 4709
027ffa31
JB
4710 * boot-9.scm (error): replace another throw with scm-error. Throw
4711 to 'misc-error instead of 'error (no need to distinguish these.)
5552355a
GH
4712 Don't set up 'error as a key.
4713 Set up regex-error as a key, if regex is available.
4714 (signal-handler): use scm-error, not throw.
4715
7a818853 4716 (%try-load, try-load-with-path, %load, load-with-path,
5552355a
GH
4717 basic-try-load-with-path, basic-load-with-path,
4718 try-load-module-with-path,load-module-with-path): deleted, since
4719 they seem redundant.
4720 (try-load): define using %try-load, not try-load-with-path.
7a818853 4721 (load): rewritten. load tries to open the file directly and
5552355a
GH
4722 with a .scm extension before searching the library directories
4723 (should "." be added to %load-path? then load could still open
027ffa31 4724 directly files starting with "/").
5552355a
GH
4725 (try-module-autoload): use load, not load-with-path.
4726 (%load-indent): deleted, -2 was causing errors.
4727
4728 (%read-sharp): use port-line, not line-number.
4729
c90c9685
JB
4730Fri Sep 27 16:23:51 1996 Jim Blandy <jimb@totoro.cyclic.com>
4731
4732 * boot-9.scm (%%bad-throw): Delete definition. 1) It's very
027ffa31
JB
4733 straightforward to provide the equivalent functionality using
4734 (catch #t ...), so there's no need for the extra complexity. 2)
4735 Outside the context of a read-eval-print loop (which Guile should
4736 not require) it's not clear we should do anything more complicated
4737 than print an error and exit; the user or REPL can establish
4738 something better if it wants. 3) In that case, it's much more
4739 robust to just do it in the C code.
c90c9685 4740
027ffa31 4741Tue Sep 24 06:53:04 1996 Gary Houston <ghouston@actrix.gen.nz>
855c0eac 4742
027ffa31 4743 * boot-9.scm (%try-load): define using primitive-load. Previously
855c0eac
GH
4744 %try-load itself was the primitive.
4745 (load-with-path): use scm-error instead of %load-announce-lossage.
4746 Errors are thrown to 'misc-error instead of 'could-not-load.
4747 (%load-announce-lossage): deleted.
4748
a0c97697
MD
4749Mon Sep 23 00:16:31 1996 Mikael Djurfeldt <mdj@kenneth>
4750
4751 * boot-9.scm (warn, scm-style-repl): Use C printer instead of `print'.
4752 (make-record-type type-name fields): Temporarily remove support
4753 for printing of records (not possible yet with C printer).
4754
027ffa31 4755Fri Sep 20 00:24:27 1996 Gary Houston <ghouston@actrix.gen.nz>
be2d2c70
GH
4756
4757 * boot-9.scm (file-exists?, file-is-directory): catch only
4758 system-error, not every kind of error.
4759 (scm-error): new procedure.
4760
434bf5ce
JB
4761Thu Sep 19 16:02:46 1996 Jim Blandy <jimb@totoro.cyclic.com>
4762
4763 * boot-9.scm: Formatting tweaks.
4764
027ffa31 4765Wed Sep 18 09:07:37 1996 Gary Houston <ghouston@actrix.gen.nz>
2194b6f0
GH
4766
4767 * boot-9.scm (%%handle-system-error key): remove the code for
4768 SCM-style errors. handle the case that an unexpected number
4769 of args are supplied.
4770 (%%system-errors): removed.
4771 (error): redefine using a throw with key and 4 args.
4772 ('error): associate 'error, 'error-signal keys with
4773 %%handle-system-error.
4774 (%%default-error-handler): removed.
4775 (signal-handler): throw with 4 args and use the error-signal key.
4776 Create an error message instead of using numerical codes.
4777 (%%bad-throw): call error instead of throw if key not found.
4778
027ffa31 4779Tue Sep 17 04:11:28 1996 Gary Houston <ghouston@actrix.gen.nz>
2194b6f0
GH
4780
4781 * boot-9.scm: initialize new error keys (see libguile/ChangeLog).
4782 (%%handle-system-error key): check subr is not #f before printing.
4783 Recognize %s (embed an argument using "display") and
4784 %S (embed an argument using "write").
4785
027ffa31 4786Sun Sep 15 03:55:35 1996 Gary Houston <ghouston@actrix.gen.nz>
234f2da6
GH
4787
4788 * boot-9.scm (%%handle-system-error key): set args and rest to
4789 the empty list if they are #f.
4790 Initialize out-of-range as an error key.
4791
027ffa31 4792Sat Sep 14 03:41:15 1996 Gary Houston <ghouston@actrix.gen.nz>
e1724d20 4793
40c8906e
GH
4794 * PLUGIN/REQ: remove the "ice-9 lgh" line which causes a cycle.
4795
e1724d20
GH
4796 * boot-9.scm: remove leading %% from references to '%%system-error.
4797 (%%handle-system-error): don't pass all the thrown arguments when
4798 aborting, just the key and subr.
4799 Remove the code to "Install default handlers for built-in errors."
4800 Remove the definition of the syserror procedure.
4801 Associate 'numerical-overflow with default handler.
4802
1a80fb07
MD
4803Fri Sep 13 04:58:11 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
4804
4805 * boot-9.scm: Name change: value-ref --> local-ref
4806 resolved-ref --> nested-ref Motivation: conformance to the other
4807 dictionary operators: list-ref operates on list, vector-ref
4808 operates on vector, nested-ref operates on nested namespace,
4809 local-ref operates on the local nested namespace.
4810
027ffa31 4811Sat Sep 7 06:44:47 1996 Gary Houston <ghouston@actrix.gen.nz>
7cb1d4d3
GH
4812
4813 * boot-9.scm (%%handle-system-error): recognise errors thrown
4814 by lgh-error (fill-message etc.)
9561554c 4815 (fill-message): check first whether args is null.
a949b3f2 4816 (fill-message): bug fix and check that args is a list.
7cb1d4d3 4817
027ffa31 4818Thu Sep 5 11:33:41 1996 Jim Blandy <jimb@floss.cyclic.com>
393ee9a8
JB
4819
4820 * boot-9.scm: %load-path is initialized in C code now.
4821 (implementation-vicinity, parse-path): Deleted, along with code to
4822 initialize %load-path.
4823
4824 * boot-9.scm (in-vicinity): If the vicinity doesn't end with a
4825 "/", use one to separate it from the file.
4826
027ffa31 4827Thu Aug 29 23:05:11 1996 Thomas Morgan <tmorgan@gnu.ai.mit.edu>
e4ef46d4
JB
4828
4829 * boot-9.scm (%load-path): Add the site directory.
4830 Add the directory named after the version number.
4831 Prepend the version number to the other directories in the path.
4832 Simplify by mapping the common prefix onto each item.
4833 * Makefile.in (datadir, pkgdatadir, pkgverdatadir, subpkgdatadir,
4834 sitedatadir): New definitions.
4835 (libparent, libdir, install_path): Replaced by above.
4836 (install): Create the above directories.
4837 Put the source files into subpkgdatadir.
4838 (uninstall): Remove the above directories.
4839
00312aa3
JB
4840Thu Aug 29 21:48:47 1996 Jim Blandy <jimb@floss.cyclic.com>
4841
4842 Don't use the PLUGIN system to gather information for the
4843 Makefile's distribution and installation targets; just put it all
4844 in the Makefile directly.
4845 * PLUGIN/this.configure (scm_files, aux_files): Remove sections
4846 for these.
4847 * configure.in: Remove code that gets and substitutes scm_files and
4848 aux_files.
4849 * Makefile.in (scm_files, aux_files): Write out the list of files
4850 here, where people expect to find them.
4851
96a8aaf3
MD
4852Fri Aug 23 06:44:36 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
4853
4854 * boot-9.scm: Preliminary solution: optionally load the debug
027ffa31 4855 module. Changed "gls" to "guile1.0b3".
96a8aaf3
MD
4856
4857 * debug.scm: New file: debug extensions.
4858
4e378733
MD
4859Wed Aug 21 13:06:56 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
4860
4861 * boot-9.scm (print-vector): Renamed weak-hash-table? -->
027ffa31 4862 weak-key-hash-table?. (Again!)
4e378733 4863
0190d683
MD
4864Tue Aug 20 07:31:39 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
4865
4866 * boot-9.scm (print-vector, macro-table, xformer-table):
4867 Renamed weak-hash-table --> weak-key-hash-table.
4868
4869 * poe.scm (funcq-memo): Renamed weak-hash-table -->
4870 weak-key-hash-table.
a8944ae1 4871
027ffa31 4872Sat Aug 3 06:16:35 1996 Gary Houston <ghouston@actrix.gen.nz>
8b13c6b3
GH
4873
4874 * boot-9.scm (*null-device*): global constant from goonix.
4875 (move->fdes): adjusted for boolean primitive-move->fdes. return
4876 the modified port, always set revealed count to 1 (SCSH compatible).
4877 (release-port-handle port): from goonix (SCSH compatible).
4878 (%open-file): removed.
4879 (open-input-file, open-output-file, file-exists?, file-is-directory?):
4880 modified for open-file change (does not return #f).
4881
027ffa31 4882Thu Aug 1 02:52:42 1996 Jim Blandy <jimb@totoro.cyclic.com>
a44a755d
JB
4883
4884 * Makefile.in (dist-dir): New target for new dist system.
4885 (manifest): Deleted.
4886 * PLUGIN/this.configure (aux_files): Removed PLUGIN; it's a
4887 directory, and needs special treatment in the dist-dir target.
4888
027ffa31 4889Thu Aug 1 09:00:21 1996 Gary Houston <ghouston@actrix.gen.nz>
02b754d3
GH
4890
4891 * boot-9.scm: remove the wrappers for '%' system primitives,
4892 now that they throw errors directly.
4893 remove make-simple-wrapper and similar functions.
4894 protect a call to getenv which may now throw an exception.
4895
027ffa31 4896Wed Jul 31 23:44:42 1996 Gary Houston <ghouston@actrix.gen.nz>
02b754d3
GH
4897
4898 * boot-9.scm (false-if-exception): new macro.
4899
0f2d19dd
JB
4900Fri Apr 19 13:53:08 1996 Tom Lord <lord@beehive>
4901
4902 * The more things change...
4903
4904
a2f00b9b
LC
4905;; Local Variables:
4906;; coding: utf-8
4907;; End: