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