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