* boot-9.scm: Added `cond-expand' (SRFI-0) for portable feature
[bpt/guile.git] / ice-9 / ChangeLog
1 2001-05-11 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
2
3 * boot-9.scm: Added `cond-expand' (SRFI-0) for portable feature
4 checking.
5
6 2001-05-10 Thien-Thi Nguyen <ttn@revel.glug.org>
7
8 * boot-9.scm (resolve-module): Abstraction maintenance: Use
9 `module-public-interface'.
10 (resolve-module): Extend to handle selection and renaming in spec.
11 Arg is now `spec' which can be a simple module name (list of symbols)
12 or a interface spec.
13 (symbol-prefix-proc): New proc.
14 (%autoloader-developer-mode): Delete.
15 (process-define-module): Use "define-module" in error messages
16 instead of "defmodule". Factor error into internal proc.
17 Rewrite `use-module' and `use-syntax' handlers.
18 Replace some single-arm `if-not' constructs w/ `or'.
19 (process-use-modules): Arg is now `module-interface-specs',
20 which is passed through to `resolve-interface' as before; nfc.
21 (named-module-use!, top-repl): Abstraction maintenance: Use
22 `provided?'.
23
24 2001-05-06 Thien-Thi Nguyen <ttn@revel.glug.org>
25
26 * q.scm, runq.scm, getopt-long.scm: Update copyright.
27 Surround commentary w/ standard markers; nfc.
28
29 * expect.scm: Update copyright.
30 Fix commentary typo; nfc.
31
32 2001-05-05 Rob Browning <rlb@cs.utexas.edu>
33
34 * psyntax.ss: make sure emacs knows it's scheme code.
35
36 2001-05-05 Neil Jerram <neil@ossau.uklinux.net>
37
38 * boot-9.scm (use-syntax): Change error message to say
39 `use-syntax' rather than `use-modules'.
40
41 2001-05-02 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
42
43 * safe-r5rs.scm: Fix typo: make-rectangualr => make-rectangular.
44
45 2001-05-02 Marius Vollmer <mvo@zagadka.ping.de>
46
47 * boot-9.scm (begin-deprecated): New.
48 (call-with-deprecation): Removed.
49 (id): Use `issue-deprecation-warning' instead of
50 `call-with-deprecation'. Wrap definition in `begin-deprecated'.
51 (eval-in-module): Manifest deprecation via `begin-deprecation' and
52 `issue-deprecation-warning'.
53 (warn-autoload-deprecation): Deactivated.
54
55 2001-04-26 Marius Vollmer <mvo@zagadka.ping.de>
56
57 * boot-9.scm (the-module, set-current-module, current-module):
58 Removed, they are now defined in libguile.
59
60 2001-04-29 Gary Houston <ghouston@arglist.com>
61
62 * rw.scm: new file, for module (ice-9 rw).
63 * Makefile.am: add rw.scm.
64
65 2001-04-28 Thien-Thi Nguyen <ttn@revel.glug.org>
66
67 * boot-9.scm, optargs.scm:
68 Surround commentary w/ standard markers; nfc.
69
70 * threads.scm, time.scm, channel.scm, expect.scm:
71 Add commentary; nfc.
72
73 2001-04-27 Thien-Thi Nguyen <ttn@revel.glug.org>
74
75 * documentation.scm: Update copyright.
76 Add commentary.
77 Use `define-module' `:export' clause instead of `define-public'.
78 Autoload (ice-9 regex) on `match:suffix'.
79
80 (default-in-line-re, default-after-line-re): New vars.
81 (default-scrub): New proc.
82 (file-commentary): New proc, exported.
83 (object-documentation): Expand docstring; nfc.
84
85 * session.scm: Update copyright.
86 Use (ice-9 rdelim).
87
88 (help): Consider a list of symbols that does not start with
89 `quote' as a module name and call `module-commentary' on it.
90 (module-filename, module-commentary): New procs.
91 (id): Delete.
92 (apropos): Use `identity' instead of deprecated `id'.
93 (help-usage): Add blurb about "(help (my module))" support.
94
95 2001-04-27 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
96
97 * Makefile.am (ice9_sources): Remove srfi-8.scm.
98
99 2001-04-26 Rob Browning <rlb@cs.utexas.edu>
100
101 * srfi-8.scm: removed in favor of srfi/srfi-8.scm - (wasn't ever
102 in a production release).
103
104 2001-04-25 Keisuke Nishida <kxn30@po.cwru.edu>
105
106 * channel.scm: New file.
107 * Makefile.am (ice9_sources): Include channel.scm.
108
109 2001-04-19 Keisuke Nishida <kxn30@po.cwru.edu>
110
111 * receive.scm (receive): Use `define-macro'.
112
113 2001-04-15 Keisuke Nishida <kxn30@po.cwru.edu>
114
115 * boot-9.scm (load-compiled): New variable, initialized in the VM.
116 (try-module-autoload): Try loading compiled modules if applicable.
117
118 2001-04-15 Keisuke Nishida <kxn30@po.cwru.edu>
119
120 * boot-9.scm (call-with-deprecation): New procedure.
121 (identity): New procedure.
122 (id): Deprecated.
123
124 2001-04-15 Keisuke Nishida <kxn30@po.cwru.edu>
125
126 * boot-9.scm (defmacro, define-macro, define-syntax-macro):
127 Define only at the top level.
128
129 2001-04-06 Thien-Thi Nguyen <ttn@revel.glug.org>
130
131 * threads.scm: Update copyright.
132
133 Use `export' and `export-syntax' instead of
134 `define-public' and `defmacro-public'.
135
136 (make-thread): Rename first arg to `proc'; nfc.
137 (begin-thread, monitor): Rename second arg to `rest'; nfc.
138 (with-mutex): Rename second arg to `body'; nfc.
139
140 2001-04-06 Neil Jerram <neil@ossau.uklinux.net>
141
142 * boot-9.scm (warn-autoload-deprecation): Close parenthesis in
143 "You just tried to autoload ..." message.
144
145 2001-04-05 Keisuke Nishida <kxn30@po.cwru.edu>
146
147 * Makefile.am (ice9_sources): Add history.scm.
148 * history.scm: Create the module (value-history) at the beginning.
149
150 2001-03-29 Marius Vollmer <mvo@zagadka.ping.de>
151
152 * boot-9.scm (init-dynamic-module): Fix typo in call to
153 warn-autoload-deprecation. I feel silly.
154
155 2001-03-27 Marius Vollmer <mvo@zagadka.ping.de>
156
157 * r4rs.scm (call-with-values): New definition, defers to
158 @call-with-values.
159
160 2001-03-26 Marius Vollmer <mvo@zagadka.ping.de>
161
162 * boot-9.scm (warn-autoload-deprecation): New function.
163 (init-dynamic-module): Use it here to print warning. Only give
164 warning when a module has actually been found.
165
166 2001-03-25 Marius Vollmer <mvo@zagadka.ping.de>
167
168 * boot-9.scm (init-dynamic-module): Issue warning about
169 auto-loading of compiled code modules being deprecated.
170
171 * Makefile.am (ice9_sources): Added "time.scm".
172
173 2001-03-20 Keisuke Nishida <kxn30@po.cwru.edu>
174
175 * time.scm (time): Reimplemented as a procedure call.
176 (Thanks to Marius Vollmer)
177
178 2001-03-20 Keisuke Nishida <kxn30@po.cwru.edu>
179
180 * safe-r5rs.scm (list): Export.
181
182 2001-03-17 Keisuke Nishida <kxn30@po.cwru.edu>
183
184 * boot-9.scm (before-eval-hook, after-eval-hook,
185 before-print-hook, after-print-hook): New hooks.
186 (scm-style-repl): Call these hooks.
187
188 * history.scm: New file.
189
190 2001-03-17 Keisuke Nishida <kxn30@po.cwru.edu>
191
192 * time.scm: New file.
193
194 2001-03-17 Dirk Herrmann <D.Herrmann@tu-bs.de>
195
196 * oldprint.scm: Removed.
197
198 2001-03-12 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
199
200 * arrays.scm (make-array): Added quote in front of ().
201
202 2001-03-12 Keisuke Nishida <kxn30@po.cwru.edu>
203
204 * common-list.scm (count-if): New procedure.
205
206 2001-03-10 Neil Jerram <neil@ossau.uklinux.net>
207
208 * buffered-input.scm (make-buffered-input-port): New, more general
209 buffered input procedure. Does not assume that a newline
210 character should be interpolated between chunks of input returned
211 by the reader proc.
212 (make-line-buffered-input-port): Redefine in terms of
213 make-buffered-input-port.
214
215 2001-03-09 Keisuke Nishida <kxn30@po.cwru.edu>
216
217 * match.scm: Don't export defstruct. Use (unquote defstruct) instead.
218
219 2001-03-09 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
220
221 * Makefile.am (psyntax.pp): Added rule for producing psyntax.pp.
222
223 2001-03-09 Keisuke Nishida <kxn30@po.cwru.edu>
224
225 * match.scm: export defstruct.
226
227 2001-03-08 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
228
229 * psyntax.ss: Added FSF copyright notice. Added a notice of
230 changes in order to comply with paragraph 2a of the GPL. (Thanks
231 to Keith Wright.)
232
233 2001-03-07 Neil Jerram <neil@ossau.uklinux.net>
234
235 * buffered-input.scm (make-line-buffered-input-port): Don't set
236 the continuation flag for leading whitespace. Thanks to Dirk
237 Herrmann for the suggestion.
238
239 2001-03-05 Neil Jerram <neil@ossau.uklinux.net>
240
241 * optargs.scm (rest-arg->keyword-binding-list): Use "'()" instead
242 of "()".
243
244 * buffered-input.scm: New file, with guts of line buffered input
245 port implementation extracted from guile-readline/readline.scm.
246
247 2001-03-03 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
248
249 * stack-catch.scm: New file.
250
251 * Makefile.am (ice9_sources): Added stack-catch.scm.
252
253 2001-03-03 Marius Vollmer <mvo@zagadka.ping.de>
254
255 * boot-9.scm, rdelim.scm: Use "'()" instead of "()" in all places
256 where the empty list is meant.
257
258 2001-02-26 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
259
260 * boot-9.scm (save-stack): Use `primitive-eval' for stack
261 cutting. Makes backtraces work again! Also added a reference to
262 save-stack from the place in the repl where the primitive-eval
263 frame is invoked.
264
265 2001-02-25 Keisuke Nishida <kxn30@po.cwru.edu>
266
267 * match.scm: New file, including Andrew K. Wright's pattern matcher.
268 * Makefile.am (ice9_sources): Added match.scm.
269
270 2001-02-16 Marius Vollmer <mvo@zagadka.ping.de>
271
272 * boot-9.scm (eval-when, eval-case): Renamed `eval-when' to
273 `eval-case', everywhere.
274
275 2001-02-13 Marius Vollmer <mvo@zagadka.ping.de>
276
277 * boot-9.scm (define-public): Removed spurious call to
278 `interaction-evironment'.
279 (define-public, defmacro-public): Use `export' instead of explicit
280 module magic.
281 (eval-when): New macro.
282 (define-module, use-modules, use-syntax, export): Use it to
283 restrict the use of these forms to the top level.
284 (define-public, defmacro-public): Only export binding when on
285 top-level.
286 (process-define-module): Call `set-current-module' with the
287 defined module.
288 (define-module): Simply call `process-define-module' without any
289 fuss (but only on top-level).
290 (named-module-use!): New function.
291 (top-repl): Do not use `define-module'. Use equivalent low-level
292 means instead.
293
294 2001-02-11 Marius Vollmer <mvo@zagadka.ping.de>
295
296 * boot-9.scm (scm-style-repl): Use `primitive-eval' instead of
297 `eval'.
298 (define-public): Do not use `eval'.
299
300 2001-02-08 Marius Vollmer <marius.vollmer@uni-dortmund.de>
301
302 * and-let-star-compat.scm: Display the warning to the
303 `current-error-port'.
304
305 2001-02-04 Marius Vollmer <mvo@zagadka.ping.de>
306
307 Avoid the use of "*" in file names for the benefit of lesser
308 operating systems.
309
310 * and-let-star.scm, and-let*.scm: Renamed `and-let*.scm' to
311 `and-let-star.scm'. Updated module name as well.
312 * and-let-star-compat.scm: New file, installed as `and-let*.scm'.
313 * Makefile.am (ice9_sources): Replaced "and-let*.scm" with
314 "and-let-star.scm".
315 (install-data-local): Install "and-let-star-compat.scm" as
316 "and-let*.scm", ignoring errors.
317 (EXTRA_DIST): Distribute `and-let-star-compat.scm'.
318
319 2001-01-26 Dirk Herrmann <D.Herrmann@tu-bs.de>
320
321 This patch fixes a problem reported by Martin Grabmueller about
322 the impossibility to access readline's run-time options.
323
324 * boot-9.scm (define-option-interface): New macro. Allows to
325 conveniently define a group of option interface functions.
326
327 (readline-options readline-enable readline-disable,
328 readline-set!): Moved to guile-readline/readline.scm.
329
330 2001-01-24 Gary Houston <ghouston@arglist.com>
331
332 * boot-9.scm: don't import (ice-9 rdelim) here. it's done
333 in C for now.
334 * rdelim.scm: export the C primitives too.
335 * documentation.scm: use (ice-9 rdelim).
336
337 2001-01-21 Gary Houston <ghouston@arglist.com>
338
339 * rdelim.scm: new file implementing module (ice-9 rdelim).
340 * ice-9.scm (scm-line-incrementors read-line! read-delimited!
341 read-delimited read-line): moved to rdelim.scm.
342 scm-line-incrementors is not exported.
343 * boot-9.scm: import (ice-9 rdelim) for backwards compatibility,
344 for now.
345 * lineio.scm: use module (ice-9 rdelim).
346 * Makefile.am (ice9_sources): add rdelim.scm.
347
348 2000-12-29 Dirk Herrmann <D.Herrmann@tu-bs.de>
349
350 * boot-9.scm (root-module-closure, scm-module-closure): Remove
351 calls '(symbol-interned? #f s)'. Formerly, these calls were
352 basically no-ops, guaranteed to return #t if 's' was a symbol.
353 After the separation of symbols and bindings, a call to
354 '(symbol-interned? #f s)' will only return #t if there really is a
355 binding for 's' in the scm_symhash table. Thanks to Dale P. Smith
356 for providing a test case that helped finding this bug.
357
358 2000-12-13 Dirk Herrmann <D.Herrmann@tu-bs.de>
359
360 * session.scm (apropos): Completed the last patch, which did only
361 half the job. Thanks to Dale P. Smith.
362
363 2000-12-12 Dirk Herrmann <D.Herrmann@tu-bs.de>
364
365 * session.scm (apropos, apropos-fold): There are no weak bindings
366 any more.
367
368 2000-12-12 Dirk Herrmann <D.Herrmann@tu-bs.de>
369
370 * boot-9.scm (top-repl): Lookup 'use-emacs-interface in
371 the-root-module.
372
373 2000-12-07 Neil Jerram <neil@ossau.uklinux.net>
374
375 * emacs.scm (flush-whitespace): Fix spelling typo ("recieving").
376
377 2000-11-28 Dirk Herrmann <D.Herrmann@tu-bs.de>
378
379 * boot-9.scm (read-delimited), lineio.scm
380 (make-line-buffering-input-port), regex.scm (match:prefix,
381 match:suffix, match:substring, regexp-substitute/global), slib.scm
382 (slib-parent-dir), string-fun.scm (split-after-char,
383 split-before-char, split-discarding-char, split-after-char-last,
384 split-before-char-last, split-discarding-char-last,
385 split-before-predicate, split-after-predicate,
386 split-discarding-predicate, separate-fields-discarding-char,
387 separate-fields-after-char, separate-fields-before-char,
388 string-prefix-predicate, sans-surrounding-whitespace,
389 sans-trailing-whitespace, sans-leading-whitespace,
390 sans-final-newline): Use substring instead of
391 make-shared-substring.
392
393 2000-11-26 Gary Houston <ghouston@arglist.com>
394
395 * boot-9.scm: values?, get-values, values, call-with-values:
396 removed. values and call-with-values are now primitives and
397 the other two were only exported by accident. don't define
398 *values-rtd* record type or handle multiple values in
399 scm-style-repl.
400
401 2000-11-07 Gary Houston <ghouston@arglist.com>
402
403 * popen.scm (open-output-pipe): added docstrings for open-input-pipe
404 and open-output-pipe.
405
406 2000-11-06 Gary Houston <ghouston@arglist.com>
407
408 * popen.scm (open-process): bug fix: don't use
409 close-all-ports-except to close ports in the child process, since
410 it causes port buffers to be flushed. they may be flushed again
411 in the parent, causing duplicate output. use a more elaborate
412 method for setting up the child descriptors (thanks to David
413 Pirotte for the bug report).
414 standard file descriptors 0, 1, 2 in the child process
415 are now set up from current-input-port etc., where possible.
416
417 2000-10-10 Dirk Herrmann <D.Herrmann@tu-bs.de>
418
419 * syncase.scm (eval): string=? requires a string argument.
420 Thanks to Dale P. Smith for the patch.
421
422 2000-10-15 Neil Jerram <neil@ossau.uklinux.net>
423
424 * optargs.scm: Fix typos in commentary for bound? and lambda*.
425
426 2000-10-10 Dirk Herrmann <D.Herrmann@tu-bs.de>
427
428 * session.scm (apropos, apropos-fold): regexp-exec does not
429 accept symbol arguments any more. Thanks to Dale P. Smith for the
430 patch.
431
432 2000-09-30 Gary Houston <ghouston@arglist.com>
433
434 * posix.scm (setgrent): pass #t, not #f. thanks to
435 Jacques A. Vidrine.
436
437 2000-09-29 Neil Jerram <neil@ossau.uklinux.net>
438
439 * documentation.scm (find-documentation-in-file): Modified
440 according to changed format of guile-procedures.txt caused by my
441 snarfing/makeinfo changes in libguile.
442
443 * session.scm (help-doc): Improvements to (help) output: (i) a
444 friendlier Emacs-style introduction line; (ii) where the help arg
445 matches multiple documented entries, print an initial list of the
446 entries for which documentation is found, before printing the
447 actual documentation entries themselves.
448
449 2000-09-20 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
450
451 * boot-9.scm: Removed comment. (Thanks to Brad Knotwell.)
452
453 2000-09-12 Dirk Herrmann <D.Herrmann@tu-bs.de>
454
455 * syncase.scm (putprop): Use the high-level property interface.
456
457 2000-09-12 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
458
459 * psyntax.ss (build-lexical-var): Use gentemp instead of gensym;
460 Convert first argument to a string.
461
462 * calling.scm (excursion-function-syntax,
463 getter-and-setter-syntax,
464 delegating-getter-and-setter-syntax): Call gensym with string
465 argument. (Thanks to Dale P. Smith.)
466
467 * oldprint.scm (print-table-add!): Ditto.
468
469 * boot-9.scm (gentemp): Moved to symbols.c.
470
471 2000-08-27 Marius Vollmer <mvo@zagadka.ping.de>
472
473 * boot-9.scm (make-object-property): New function.
474
475 2000-08-26 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
476
477 * boot-9.scm (make-record-type): Use `string-append' instead of
478 `symbol-append'.
479 (symbol-append): Map `symbol->string' on
480 args.
481 (obarray-symbol-append, obarray-gensym): Simply removed. I don't
482 think I'll announce this in NEWS even. One of the functions never
483 even worked... /mdj.
484 (find-and-link-dynamic-module, keyword->symbol): Use
485 `symbol->string'.
486 (try-module-autoload, process-define-module): Rewrote using R5RS
487 semantics.
488
489 2000-08-24 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
490
491 * psyntax.ss (set!): Added generalized set! support to core syntax
492 form set!.
493
494 2000-08-19 Marius Vollmer <mvo@zagadka.ping.de>
495
496 * optargs.scm (#\&): Changed #:allow-other-keys-value to
497 #:allow-other-keys. Thanks to Bill Schottstaedt!
498
499 2000-08-17 Marius Vollmer <mvo@zagadka.ping.de>
500
501 * optargs.scm (#\&): Emit warning about `#&' being deprecated.
502
503 2000-08-16 Marius Vollmer <mvo@zagadka.ping.de>
504
505 * optargs.scm: Replaced `#&' reader syntax with keywords.
506
507 2000-08-14 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
508
509 * format.scm (format:obj->str): Made tail-recursive. (Thanks to
510 Matthias Köppe.)
511
512 2000-08-13 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
513
514 * psyntax.ss (top-level-eval-hook, local-eval-hook): Pass
515 `(interaction-environment)' as second arg to `eval'. This is
516 completely equivalent with the state before the change to eval of
517 2000-08-11, but we should extend psyntax.ss to be module aware.
518 (Thanks to Ian Bicking.)
519
520 * emacs.scm (emacs-symdoc): Parenthesis fix.
521
522 2000-08-11 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
523
524 * r5rs.scm (interaction-environment): Removed definition. (Is now
525 provided by libguile/modules.c.)
526
527 * safe-r5rs.scm (null-environment): Bugfix: Should include
528 syntactic bindings.
529
530 * boot-9.scm (record-constructor, record-accessor,
531 record-modifier, scm-style-repl): Add second arg to eval.
532 (read-hash-extend #\.): Ditto. (This is actually a bugfix!)
533 (eval-in-module): Redefined to be eval and deprecated.
534
535 * syncase.scm (eval): Add second arg both in definition and use.
536
537 * slib.scm (slib:eval): Use eval instead of eval-in-module.
538 (defmacro:eval): Eval in (interaction-environment).
539
540 * safe-r5rs.scm (eval): Removed definition.
541
542 * emacs.scm (emacs-eval-request):
543 (emacs-symdoc): (This procedure needs updating!)
544
545 2000-08-10 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
546
547 * boot-9.scm: Added note about dependency in modules.h to
548 definition of module-type.
549
550 * Makefile.am (ice9_sources): Added receive.scm, srfi-8.scm.
551
552 * receive.scm, srfi-8.scm: New files.
553
554 * boot-9.scm (scm-style-repl): Print multiple values on successive
555 lines.
556 (process-define-module): Bugfix: Make sure that exports are done
557 *after* all used interfaces has been added.
558
559 2000-07-24 Marius Vollmer <mvo@zagadka.ping.de>
560
561 * common-list.scm (uniq): Made tail-recursive. Thanks to thi!
562
563 2000-07-13 Dirk Herrmann <D.Herrmann@tu-bs.de>
564
565 * boot-9.scm (expt): In case of negative integer exponents return
566 an exact result if the input paramters were exact. Thanks to
567 Mikael for the suggestion.
568
569 2000-07-12 Dirk Herrmann <D.Herrmann@tu-bs.de>
570
571 * boot-9.scm (expt): Make sure that integer-expt is only called
572 if the exponent is a non-negative integer.
573
574 2000-07-01 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
575
576 * boot-9.scm (process-define-module): Bugfix: Only check the CDR
577 for export args.
578
579 2000-06-27 Dirk Herrmann <D.Herrmann@tu-bs.de>
580
581 * popen.scm: gc-thunk is deprecated. Use after-gc-hook instead.
582
583 2000-06-16 Dirk Herrmann <D.Herrmann@tu-bs.de>
584
585 * common-list.scm (intersection, set-difference, remove-if,
586 remove-if-not): Made tail-recursive. Thanks to William Webber
587 for the hint.
588
589 (delete-if!, delete-if-not!): Renamed parameter from `list' to
590 `l' in order to avoid confusion. Note: These functions are not
591 tail recursive yet.
592
593 2000-06-21 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
594
595 * boot-9.scm: Turned `the-module', `*top-level-lookup-closure*',
596 and `scm:eval-transformer' into fluids.
597
598 * boot-9.scm (purify-module!, module-export!): New procedures.
599 (export): Rewritten using `module-export!'.
600 (process-define-module): New define-module options: pure, export.
601 See NEWS.
602 (scm-style-repl): Added optional module argument.
603
604 * null.scm, r5rs.scm, safe-r5rs.scm, safe.scm: New modules.
605
606 2000-06-20 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
607
608 * session.scm (make-fold-modules): Detect circular references in
609 module graph. (Thanks to Matthias Köppe.)
610
611 2000-06-20 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
612
613 * session.scm: Use module (ice-9 regex).
614 (help): Regexp-quote a name given as a symbol.
615
616 2000-06-16 Dirk Herrmann <D.Herrmann@tu-bs.de>
617
618 * common-list.scm (list*): Removed, since this function is
619 implemented as a primitive in libguile/list.c.
620
621 2000-06-12 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
622
623 * session.scm (help): Warn user if 'regex isn't provided.
624
625 * Makefile.am (ice9_sources): Removed getopt-gnu-style.scm.
626
627 * getopt-gnu-style.scm: Removed deprecated module.
628
629 2000-06-11 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
630
631 * boot-9.scm (make-autoload-interface): Set init value for uses to
632 '() instead of #f.
633 (make-modules-in): Name modules with their real (= full) names.
634 (the-root-module, the-scm-module): Named `(guile)' instead of
635 `the-root-module'.
636 (the-scm-module): Set kind to 'interface.
637
638 * Makefile.am (ice9_sources): Replaced doc.scm with
639 documentation.scm.
640
641 * session.scm (ice-9): Use module (ice-9 documentation).
642 (name): Use the name property if everything else fails.
643 (apropos-fold): New procedure.
644 (apropos-internal): Re-implement in terms of `apropos-fold'.
645 (help): Rewritten.
646
647 * doc.scm: Removed module (ice-9 doc).
648
649 * documentation.scm: New module (ice-9 documentation).
650
651 2000-06-08 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
652
653 * doc.scm (documentation-files): Renamed from `doc-files'.
654 (write-all): Removed.
655 (find-documentation): Renamed from `documentation'. Return
656 documentation string instead of printing it. Not exported.
657
658 Tue Jun 6 09:21:28 2000 Greg J. Badros <gregb@go2net.com>
659
660 * session.scm: Update references to `proc-doc' to be
661 `proc-documentation'
662
663 * doc.scm: Cleaned up a great deal. Put variables at the top of
664 the file, eliminated `object-documentation' that was broken
665 (referencing Scwm), drop `help' as session.scm has a better
666 supported version of that procedure. Rename `proc-doc' to
667 `proc-documentation' -- `procedure-documentation' is a primitive
668 getter function, so I use the shorter name for this more useful
669 function. (Alternatively, we could rename the primitive
670 getter...)
671
672 2000-06-05 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
673
674 * boot-9.scm (error-catching-loop): Inform about debugger on error.
675
676 2000-06-04 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
677
678 * boot-9.scm (scm-module-closure): New procedure: Was previously
679 anonymous. Now needed in modules.c.
680 (make-module): Use `standard-eval-closure' to create the eval
681 closure.
682
683 2000-05-14 Gary Houston <ghouston@arglist.com>
684
685 * boot-9.scm (load-user-init): rewritten. first work out the home
686 directory and then try to open the file (previously it could try
687 to open a file in more than one place). catch exceptions when
688 trying to get a directory from the user database. don't check
689 that ~/.guile is not a directory before trying to load it (a lack
690 of ~/.guile is not a crime, but if the file is not valid for any
691 reason then primitive-load will raise an error).
692
693 2000-05-11 Dirk Herrmann <D.Herrmann@tu-bs.de>
694
695 * boot-9.scm (abs): Don't set to magnitude. abs now does not
696 accept complex numbers as parameter.
697
698 2000-05-09 Marius Vollmer <mvo@zagadka.ping.de>
699
700 * common-list.scm (delete-if-not!): Bug fix of bug fix: change
701 label of named let to `delete-if-not'. Sorry.
702
703 2000-05-08 Marius Vollmer <mvo@zagadka.ping.de>
704
705 * common-list.scm (doc fixes): Talk about `true values' instead of
706 `#t' when a function treats all non-#f valuers the same.
707 (remove-if-not): Bug fix: call remove-if-not
708 instead of remove-if when iterating.
709 (delete-if-not!): Bug fix: call delete-if-not! instead of
710 delete-if! when iterating.
711
712 2000-04-16 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
713
714 * r4rs.scm (close-input-port, close-output-port): Removed.
715
716 2000-04-13 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
717
718 * session.scm (help): New macro. Prints helpful information.
719
720 2000-04-10 Gary Houston <ghouston@arglist.com>
721
722 * popen.scm (open-process): after forking, close all ports except
723 the end of the pipe to the parent. otherwise move->fdes and
724 the exec'd program and the exit handlers can interfere with file
725 descriptors still in use in parent ports.
726
727 2000-04-09 Gary Houston <ghouston@arglist.com>
728
729 * popen.scm (close-process-quietly): new procedure. use it from
730 reap-pipes to avoid errors or hanging during background cleanup.
731
732 2000-04-04 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
733
734 * format.scm (format:obj->str): Handle circular references. Also,
735 print improper lists with (x y . z) syntax rather than as
736 individual pairs. (This code should probably be integrated into C
737 level facilities. It is currently terribly slow.)
738
739 2000-04-03 Michael Livshin <mlivshin@bigfoot.com>
740
741 * streams.scm (stream-fold, stream-for-each): don't use named let,
742 because it prevents the gc from junking the stream argument.
743
744 Thu Mar 9 08:05:08 2000 Greg J. Badros <gjb@cs.washington.edu>
745
746 * slib.scm: Back-out change to software-type -- renamed
747 slib:software-type to software-type, and leave it non-public.
748
749 Thu Mar 2 12:20:52 2000 Greg J. Badros <gjb@cs.washington.edu>
750
751 * boot-9.scm: Drop unused definition of sfx function -- thanks
752 Dirk Hermann!
753
754 Wed Mar 1 12:21:02 2000 Greg J. Badros <gjb@cs.washington.edu>
755
756 * streams.scm: Doc patch from Richard Kim, using MIT Scheme as
757 source of the numerous very short changes.
758
759 Sun Feb 13 18:03:19 2000 Greg J. Badros <gjb@cs.washington.edu>
760
761 * slib.scm: Rename software-type to slib:software-type and make it
762 public.
763
764 * r4rs.scm: Added documentation; largely cut and pasted from R4RS
765 info pages.
766
767 Sun Feb 13 17:49:29 2000 Greg J. Badros <gjb@cs.washington.edu>
768
769 * common-list.scm: Added documentation; largely cut and pasted
770 from slib docs.
771
772 2000-02-11 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
773
774 * format.scm (format): Reintroduce (define format format:format)
775 so that the binding in the public interface of the module will be OK.
776
777 2000-01-30 Gary Houston <ghouston@arglist.com>
778
779 * boot-9.scm (find-and-link-dynamic-module): pass strings, not symbols,
780 to string-append.
781
782 2000-01-29 Gary Houston <ghouston@arglist.com>
783
784 * expect.scm (expect): don't call char-ready? before expect-select,
785 since select now checks port buffers itself. don't bother to check
786 the time first either, since expect-select does it.
787
788 Thu Jan 20 12:57:36 2000 Greg J. Badros <gjb@cs.washington.edu>
789
790 * format.scm: Use (variable-set! (builtin-variable 'format)) to
791 re-define format to be format:format (instead of just define,
792 which interacts poorly with the module system). Thanks to Shuji
793 Narazaki for this change.
794
795 Tue Jan 11 10:49:22 2000 Greg J. Badros <gjb@cs.washington.edu>
796
797 * boot-9.scm expect.scm, syncase.scm: Switch to new style
798 `simple-format' message strings: substitute ~A for %s, and ~S for
799 %S.
800
801 * boot-9.scm: Added (define format simple-format) to expose that
802 primitive via the simpler name until format.scm is loaded.
803
804 2000-01-09 Marius Vollmer <mvo@zagadka.ping.de>
805
806 * boot-9.scm (try-using-libtool-name): Do not bother to look
807 inside libtool ".la" file, dynamic-link does this for us now.
808
809 1999-12-15 Gary Houston <ghouston@freewire.co.uk>
810
811 * slib.scm (library-vicinity, home-vicinity,
812 scheme-implementation-type, scheme-implemenation-version):
813 use define-public to export from the module.
814
815 Wed Dec 15 08:32:09 1999 Greg J. Badros <gjb@cs.washington.edu>
816
817 * doc.scm: Use `%library-dir' and the other system directories,
818 not the quickly defuncted `library-dir' that I added before
819 realizing the former existed. Thanks Brad Knotwell!
820
821 Sun Dec 12 19:18:52 1999 Greg J. Badros <gjb@cs.washington.edu>
822
823 * Makefile.am, doc.scm: Added doc.scm.
824
825 1999-12-12 18:54:06 1999 Greg J. Badros <gjb@cs.washington.edu>
826
827 * popen.scm, slib.scm: Added some docstrings for procedures that
828 were primitives that I encountered in posix.texi.
829
830 1999-11-19 Gary Houston <ghouston@freewire.co.uk>
831
832 * Makefile.am (ice9_sources): add arrays.scm.
833
834 * boot-9.scm: load arrays.scm if 'array is provided.
835
836 * arrays.scm: new file with stuff from boot-9.scm.
837
838 1999-11-18 Gary Houston <ghouston@freewire.co.uk>
839
840 * boot-9.scm (read-hash-extend to set up arrays): add 'l' for
841 long_long uniform vectors.
842
843 1999-11-17 Gary Houston <ghouston@freewire.co.uk>
844
845 * networking.scm (sethostent, setnetent, setprotoent, setservent):
846 take an optional argument STAYOPEN. default is #f.
847
848 1999-10-05 Jim Blandy <jimb@savonarola.red-bean.com>
849
850 * Makefile.in: Deleted from CVS repository. Run the autogen.sh
851 script to create generated files like this one.
852
853 1999-09-23 Gary Houston <ghouston@freewire.co.uk>
854
855 * boot-9.scm (load-user-init): check that the posix feature is
856 available before using getpw and getuid.
857 (top-repl): don't install handlers for SIGINT etc., without posix.
858 (file-is-directory?): use 'posix instead of i/o-extensions to
859 check for stat.
860 (load-user-init): use file-exists? and file-is-directory? to
861 check for .guile, instead of stat.
862 (file-is-directory?): don't display the file name if posix not
863 available.
864 (feature?): I guess this is deprecated. redefined using "provided?"
865 and changed users in boot-9.scm to "provided?".
866 Conditionally load posix.scm and networking.scm.
867
868 posix.scm, networking.scm: new files. Move definitions from
869 boot-9.scm if they are only useful with posix/networking available.
870
871 * Makefile.am (ice9_sources): add posix.scm, networking.scm.
872
873 1999-09-17 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
874
875 * debugger.scm (read-and-dispatch-commands): Handle other throws
876 than 'exit-debugger.
877
878 * boot-9.scm (before-signal-stack): New fluid.
879 (top-repl): Set before-signal-stack in the signal handler.
880
881 * debugger.scm (eval-handler): Handle unhandled exceptions.
882
883 1999-09-16 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
884
885 * debugger.scm ("p"): New alias for "evaluate";
886 Mark module with :no-backtrace.
887 ("position"): New command.
888 (source-position, display-position): New procedures.
889 (display-source): Display position of expression, if available.
890 (catch-user-errors): Return #f on error. (Commands are expected
891 to return a valid state.)
892 (read-and-dispatch-command): Bugfix: Return old state on error.
893
894 1999-09-16 Jim Blandy <jimb@savonarola.red-bean.com>
895
896 * regex.scm (regexp-substitute/global): Handle the end of the
897 match list and an empty match list identically. (Thanks to Greg
898 Badros.)
899
900 1999-09-15 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
901
902 * debugger.scm ("evaluate"): Replaced `write-line' with calls to
903 `write' and `newline' since write-line doesn't write but displays.
904
905 1999-09-12 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
906
907 * debugger.scm ("evaluate"): Newline after no env announcement.
908
909 * debug.scm, emacs.scm: Updated copyright notices.
910
911 * boot-9.scm (make-autoload-interface): Bugfix.
912 (top-repl): Autoload debugger.
913
914 * debugger.scm ("backtrace"): Don't pass length param to
915 display-backtrace if it wasn't explicitly given by the user.
916 (write-frame-long/application): Also print corresponding source
917 expression.
918 ("evaluate"): Evaluate in local environment frame, if existent;
919 Handle errors.
920
921 1999-09-11 Jim Blandy <jimb@savonarola.red-bean.com>
922
923 * format.scm (format:format-work): Use #\tab and #\page instead of
924 slib:form-feed and slib:tab. (Thanks to Ceri Storey.)
925
926 * format.scm (format:abort): Call error, not slib:error.
927
928 1999-09-11 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
929
930 * boot-9.scm (using-readline?): New procedure: Returns #t if
931 readline is used by the repl run by this thread.
932 (handle-system-error): Print "Backtrace:" before backtrace since
933 this is no longer done by display-backtrace.
934
935 * debug.scm (frame-number->index): Optionally take stack as
936 argument.
937
938 * debugger.scm: Use the frame number abstraction which allows for
939 both forward and backward views of the stack
940 (write-frame-index-short, write-frame-index-long):
941 Use selector `frame-number';
942 (select-frame-absolute): Use frame-number->index.
943 ("backtrace"): Use builtin backtrace printing.
944 Use (ice-9 debug).
945 Use readline conditionally.
946
947 1999-09-11 Jim Blandy <jimb@savonarola.red-bean.com>
948
949 * regex.scm (fold-matches, list-matches): New functions.
950 (regexp-substitute/global): Rewritten again in terms of
951 list-matches, to get null match behavior correct.
952
953 * regex.scm (regexp-substitute/global): Rewrite so that 'post at
954 the end of the item list actually causes a tail call. (Thanks to
955 Jan Nieuwenhuizen.)
956
957 1999-09-11 Marius Vollmer <mvo@zagadka.ping.de>
958
959 * readline.scm: Moved to ../guile-readline.
960
961 * boot-9.scm (top-repl): Removed code for activating readline.
962
963 * Makefile.am: Removed mention of readline.scm.
964
965 * Makefile.in: Regenerated.
966
967 1999-09-11 Jim Blandy <jimb@savonarola.red-bean.com>
968
969 Delete the test which compares the configuration date of libguile
970 with the configuration date of ice-9. This test yields too many
971 false positives to be helpful. For example, if you build Guile
972 for several architectures but have them all share a "share"
973 directory (which is supposed to work), then all but one
974 architecture's Guile will complain that the configuration dates
975 don't match. Which is true, but indicates nothing wrong.
976 * boot-9.scm: Delete code which compares ice-9-config-stamp with
977 libguile-config-stamp.
978 * version.scm.in: Delete.
979 * Makefile.am (ice9_generated): Delete.
980 (subpkgdata_DATA): Remove ice9_generated.
981 (EXTRA_DIST): Remove version.scm.in.
982 * Makefile.in: Regenerate.
983
984 1999-09-11 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
985
986 * debugger.scm: New file: Initial version of the Guile debugger
987 written by Chris Hanson. (The debugger isn't finished, but is
988 included in Guile anyway since it is already quite useful.)
989
990 * boot-9.scm (top-repl): Use (ice-9 debug) (ice-9 debugger) (ice-9
991 session) (ice-9 threads) (ice-9 regex) from guile-user only if
992 top-repl is called. This makes startup time for scripts 30% of
993 what it was before... Removed redundant code for loading of
994 readline.
995
996 * Makefile.am (ice9_sources): Added debugger.scm.
997
998 1999-08-29 Keisuke Nishida <kxn30@po.cwru.edu>
999
1000 * boot-9.scm (try-module-autoload): Use %search-load-path.
1001
1002 1999-08-24 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
1003
1004 * boot-9.scm: Removed old style hooks.
1005 (inherit-print-state): Rwwritten to use port-with-print-state.
1006
1007 1999-08-20 James Blandy <jimb@mule.m17n.org>
1008
1009 Remove support for the #/ path list syntax entirely.
1010 * boot-9.scm (read-path-list-notation,
1011 read-path-list-notation-warning): Deleted.
1012 Don't register read-path-list-notation-warning as a reader for
1013 objects starting with '#/'.
1014
1015 1999-08-05 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
1016
1017 GOOPS needs the observer protocol specified for the new module
1018 system. Here's a simple version for the old module system:
1019 * boot-9.scm (module-observers, module-weak-observers,
1020 module-observer-id, set-module-observers!,
1021 set-module-observer-id!): New accessors.
1022 (module-type): Added slots `observers', `weak-observers' and
1023 `observer-id'.
1024 (module-observe, module-observe-weak, module-unobserve,
1025 module-modified): New procedures.
1026 (module-make-local-var!, module-add!, module-remove!,
1027 module-clear!, module-define!, module-use!): Call module-modified.
1028
1029 1999-07-29 Marius Vollmer <mvo@zagadka.ping.de>
1030
1031 * boot-9.scm (error-catching-loop): Correct non-RnRS usage of internal
1032 defines.
1033
1034 1999-07-19 Jim Blandy <jimb@savonarola.red-bean.com>
1035
1036 * streams.scm: New module, contributed by Michael Livshin.
1037 * Makefile.am (ice9_sources): List it.
1038 * Makefile.in: Regenerated.
1039
1040 * boot-9.scm (read-delimited!): Put the terminator in the correct
1041 position.
1042
1043 1999-06-29 Mikael Djurfeldt <mdj@mdj-pc.nada.kth.se>
1044
1045 * readline.scm: Bugfix: Avoid getting the continued-lines prompt
1046 at multiple calls to read.
1047 (promtp2): Variable for continued-lines prompt.
1048 (make-readline-port): Use prompt2.
1049 (set-readline-prompt!): New optional arg which sets
1050 continued-lines prompt.
1051
1052 * boot-9.scm (top-repl): Set/clear readline prompts before/after
1053 reading expressions.
1054
1055 1999-06-18 Jim Blandy <jimb@savonarola.red-bean.com>
1056
1057 * ls.scm (ls, lls): Handle no arguments as meaning to look in
1058 `(current-module)'. (Patch from Thien-Thi Nguyen.)
1059
1060 1999-06-14 Jim Blandy <jimb@savonarola.red-bean.com>
1061
1062 * string-fun.scm (split-before-predicate, split-after-predicate,
1063 split-discarding-predicate): Make these public. (Thanks to
1064 Thien-Thi Nguyen.)
1065
1066 1999-06-13 Gary Houston <ghouston@easynet.co.uk>
1067
1068 * more changes to expect.scm, to avoid the one-character lookhead
1069 that was introduced to fix the $ problem:
1070
1071 * expect.scm (expect): call the match proc an extra time at end
1072 of file and set the eof? argument appropriately. call
1073 expect-eof-proc only if the last call didn't match.
1074 * expect.scm (expect-strings): change port to eof? in match proc.
1075 * expect.scm (expect-regexec): take an eof indicator as an argument
1076 instead of a port.
1077
1078 1999-06-09 Jim Blandy <jimb@savonarola.red-bean.com>
1079
1080 * Makefile.am (ice9_sources): Add popen.scm to list.
1081 * Makefile.in: Regenerated.
1082
1083 Fixes for expect from Gary Houston <ghouston@easynet.co.uk>:
1084
1085 * expect.scm (expect-regexec): define 'eof-next?'. I don't
1086 know why it was missing. also don't peek for end of lines
1087 unless expect-strings-exec-flags contains regexp/noteol.
1088 (expect-strings-exec-flags): initialise to regexp/noteol.
1089
1090 Gary Houston's open-buffer port patches:
1091
1092 1999-04-01 Gary Houston <ghouston@easynet.co.uk>
1093
1094 * popen.scm: applied fixes from Greg Harvey. use a guardian
1095 and a gc-thunk so that cleanup is done if a pipe is garbage
1096 collected or closed with close-port. use a weak hash-table instead of
1097 an alist.
1098
1099 1999-03-20 Gary Houston <ghouston@easynet.co.uk>
1100
1101 * expect.scm (expect): call the match proc with the port instead.
1102 (expect-strings): use peek-char to get the next char. this has
1103 the advantage of getting the handling of $ "correct", but the
1104 disadvantage of needing to get (and maybe block for) an extra character
1105 from the port when it may not be needed. hence:
1106 (expect-strings-exec-flags): new variable/parameter, supplies
1107 flags for regexp-exec. if this includes regexp/noteol, then
1108 automatic regexp/noteol handling (requiring an extra peeked char)
1109 is enabled. default is regexp/noteol.
1110 (expect-strings-compile-flags): new variable/parameter, supplies
1111 flags for make-regexp. default is regexp/newline.
1112
1113 1999-03-15 Gary Houston <ghouston@easynet.co.uk>
1114
1115 * expect.scm (expect): call the match proc with an extra char,
1116 peeked from the stream.
1117 (expect-strings): build a match proc which takes the extra char.
1118 (expect-regexec): take an extra arg "eof-next?" and use it
1119 to decide whether the regexp/noteol flag should be added.
1120
1121 1999-02-26 Gary Houston <ghouston@easynet.co.uk>
1122
1123 * boot-9.scm (top-repl): don't flush all ports at exit.
1124 (error-catching-loop): likewise.
1125
1126 1998-12-23 Gary Houston <ghouston@easynet.co.uk>
1127
1128 * boot-9.scm (scm-style-repl): -read: don't call
1129 consume-trailing-whitespace if val is eof object. Allows
1130 exiting repl with single control-D.
1131
1132 1998-12-06 Gary Houston <ghouston@easynet.co.uk>
1133
1134 * boot-9.scm (error-catching-loop): don't force output within
1135 error catching loop after quit received.
1136 (top-repl): flush all ports when the repl terminates.
1137
1138 * boot-9.scm (error-catching-loop): flush all ports before
1139 primitive exit if non-interactive.
1140 force-output on current-error-port if interactive.
1141
1142 * boot-9.scm (reopen-file): deleted.
1143 * popen.scm (open-output-pipe, open-input-pipe): moved from
1144 boot-9.scm.
1145 * popen.scm: new file.
1146
1147 1999-06-04 Dirk Herrmann <D.Herrmann@tu-bs.de>
1148
1149 * boot-9.scm (iota): replaced by a tail recursive version.
1150 (reverse-iota): removed.
1151
1152 1999-06-03 Mikael Djurfeldt <mdj@mdj-pc.nada.kth.se>
1153
1154 * optargs.scm (lambda*): Bugfix: Replaced ARGLIST -->
1155 non-optional-args. (Thanks to David Lutterkort.)
1156
1157 1999-05-09 Jim Blandy <jimb@savonarola.red-bean.com>
1158
1159 * string-case.scm: Removed; functions moved to libguile/strop.c
1160 (which could be dynamically linked in the future anyway).
1161 * Makefile.am (ice9_sources): Don't list string-case.scm.
1162 * Makefile.in: Regenerated.
1163 * format.scm: Don't bother importing (ice-9 string-case).
1164
1165 1999-05-02 Jim Blandy <jimb@savonarola.red-bean.com>
1166
1167 * boot-9.scm (provided?): New function.
1168
1169 * Makefile.am: Add string-case.scm and format.scm to ice9_sources.
1170 * Makefile.in: Regenerated.
1171
1172 * string-case.scm: New file, brought in from SLIB, and adapted to
1173 Guile's module system.
1174
1175 * format.scm: New file, brought in from SLIB, with the following
1176 changes:
1177 (format:format): If the first argument is the format string, stick
1178 a #f on the front of it, so it is now a valid CL format argument
1179 list. This is easier than changing everyplace else (like the
1180 error formatter) that expects it to be in CL form. The other
1181 clause which explicitly tests for this case is now dead code.
1182 (format:format-work): Allow `@' and `:' in either order, as per
1183 modern CL behavior.
1184 (format:num->cardinal): Don't assume that an elseless if returns
1185 '() when the condition is false.
1186
1187 1999-04-17 Jim Blandy <jimb@savonarola.red-bean.com>
1188
1189 * Makefile.in: Regenerated.
1190
1191 1999-04-08 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1192
1193 * boot-9.scm: Provide 'values.
1194
1195 1999-03-21 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
1196
1197 * boot-9.scm (process-define-module, use-syntax): Bugfix:
1198 :use-syntax should add syntax to using module, not current module.
1199 (internal-use-syntax): Removed.
1200
1201 1999-03-21 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1202
1203 * session.scm (apropos-internal): Modified to comply with new
1204 argument order for hash-fold.
1205
1206 1999-03-19 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
1207
1208 * boot-9.scm (try-load-module): New procedure. Broken out from
1209 resolve-module.
1210 (resolve-module): Bugfix: Make it possible for a module at a
1211 deeper level (x y z) to depend on a module on a higher (x y).
1212
1213 This also has the desired side-effect that multiple attempts to
1214 load a module (e.g. with `use-modules') work until source is
1215 actually found for the module (e.g. because the correct catalog
1216 has been added to the load path).
1217
1218 Use try-load-module.
1219
1220 1999-03-18 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1221
1222 * session.scm (system-module): New procedure. Used to switch a
1223 module between system and user state.
1224
1225 1999-03-16 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1226
1227 * session.scm (apropos-internal): Rewritten using hash-fold.
1228
1229 * emacs.scm, session.scm, slib.scm): Added :no-backtrace in module
1230 definition.
1231
1232 1999-03-14 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
1233
1234 * boot-9.scm (make-record-type): Use `set-struct-vtable-name!' to
1235 associate a name to the record type descriptor so that the object
1236 system can create a wrapper class for it.
1237
1238 1999-03-12 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1239
1240 Improvement of backtraces: Introduces a new stack narrowing
1241 specifier, #t, for the inner cut. If the inner cut is specified
1242 by #t, `make-stack' will throw away inner stack frames (most
1243 recent calls on call chain) up to but excluding the first user
1244 stack frame encountered.
1245
1246 This specifier is now used in `save-stack' so that the call
1247 `(save-stack)' will get the new behaviour. [It is recommended that
1248 any error reporting functions written by the user have this call
1249 on the outermost expression level (i.e. as a member of the lambda
1250 list).]
1251
1252 Modules are partitioned into "user" and "system" modules. [I know
1253 that some names used here are silly, but I don't have more time to
1254 spend on a better solution, especially considering that the module
1255 system will be replaced. But if people have better ideas, then
1256 please tell me!]
1257
1258 System modules are created by adding :no-backtrace among the
1259 define-module switches:
1260
1261 (define-module (foo)
1262 :no-backtrace)
1263
1264 Modules which doesn't have the :no-backtrace specifier are user
1265 modules.
1266
1267 A stack frame is classified as a user frame if it has source code
1268 associated with it and if this source code can be proven to come
1269 from a user module. If it can be proven to come from a system
1270 module it is a system frame.
1271
1272 Frames which can't be classified, e.g. application frames, are cut
1273 away if they occur between system frames, but are left on the
1274 stack if they occur between the last system frame and the first
1275 user frame encountered. (Note that the first user frame
1276 encountered is the last user code being evaluated!)
1277
1278 In some cases the system part of the call chain is introduced by
1279 frames which should but can't be proven to be system frames. The
1280 following workaround has been implemented: The cutting proceeds
1281 over application frames where the operator is marked by the
1282 `system-procedure' property. (This has been used to cut away
1283 generic function dispatch code in the object system.)
1284
1285 * boot-9.scm (set-system-module!): New procedure: Set system/user
1286 status of a module.;
1287 Mark `the-root-module' and `the-scm-module' as system modules.
1288 (process-define-module): Add new keyword :no-backtrace.
1289
1290 * boot-9.scm (environment-module): Bugfixed.
1291 (set-module-eval-closure!): Add a pointer back from the eval
1292 closure to the module.
1293
1294 * emacs.scm (emacs-load): Reset port filename after transfer.
1295
1296 1999-03-03 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1297
1298 * slib.scm (make-random-state): Added for compatibility.
1299
1300 1999-02-16 Maciej Stachowiak <mstachow@alum.mit.edu>
1301
1302 * optargs.scm (lambda*): Handle empty argument lists properly.
1303
1304 1999-02-15 Jim Blandy <jimb@savonarola.red-bean.com>
1305
1306 Fix from Russ McManus:
1307 * getopt-long.scm (parse-option-spec): Store 'optional as the
1308 value-required? field for options that take optional values.
1309 (process-short-option): Grab a value for the option when it takes
1310 either an optional or required value.
1311
1312 1999-02-12 Jim Blandy <jimb@savonarola.red-bean.com>
1313
1314 * getopt-long.scm: Remove debugging calls to `pk'.
1315
1316 * getopt-long.scm: Return list of ordinary arguments as the value
1317 of the '() key, not `rest'.
1318
1319 A new argument-processing package from Russ McManus.
1320 * getopt-long.scm: New file.
1321 * Makefile.am (ice9_sources): Added getopt-long.scm.
1322 * Makefile.in: Regenerated.
1323
1324 1999-02-09 Maciej Stachowiak <mstachow@alum.mit.edu>
1325
1326 * optargs.scm: New file.
1327 * Makefile.am (ice9_sources): Add optargs.scm here. Makefile.in
1328 not regenerated because I don't have the right version of Automake.
1329
1330 1999-02-06 Jim Blandy <jimb@zwingli.cygnus.com>
1331
1332 * and-let*.scm: New file, from Michael Livshin.
1333 * Makefile.am (ice9_sources): Add and-let* here.
1334 * Makefile.in: Regenerated.
1335
1336 1999-01-11 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1337
1338 * slib.scm (install-require-module): Fixed the kludge which loads
1339 the slib catalog: Doesn't anylonger assume that the feature tested
1340 for isn't loaded.
1341
1342 1998-12-14 Jim Blandy <jimb@zwingli.cygnus.com>
1343
1344 * Makefile.in: Regenerated.
1345
1346 1998-12-14 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1347
1348 * boot-9.scm (process-define-module): Reverted the change of
1349 1998-11-23 which caused loading of object code if :use-module was
1350 applied to the module itself.
1351
1352 1998-12-11 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
1353
1354 * Makefile.am: Removed setf.scm.
1355
1356 * setf.scm: Removed. 1. It was buggy. 2. It was unschemey.
1357 (These shortcomings were my fault.)
1358
1359 1998-12-10 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1360
1361 * boot-9.scm (environment-module): New procedure.
1362
1363 1998-12-07 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
1364
1365 * Makefile.am: Added setf.scm.
1366
1367 1998-12-05 Christian Lynbech <chl@tbit.dk>
1368
1369 * setf.scm: New file. Adds the new forms `setf!' and `setter'
1370 which implements generalized references a la Common LISP.
1371
1372 1998-12-02 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
1373
1374 * boot-9.scm (process-define-module): Added new specifier
1375 :autoload MODULENAME BINDINGS to the define-module form.
1376 The autoload specifier tells the module system to load the module
1377 MODULENAME at the first occasion that any variable with its name
1378 among BINDINGS is referenced.
1379 (make-autoload-interface): New procedure: Constructs a stand-in
1380 for the public interface for the module to be autoloaded.
1381
1382 1998-12-01 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1383
1384 * boot-9.scm (*suppress-old-style-hook-warning*): Set this to #t
1385 if you don't want the old style hook warnings.
1386
1387 1998-12-01 Christian Lynbech <chl@tbit.dk>
1388
1389 * boot-9.scm (try-using-libtool-name): Fix check on dlname to make
1390 sure that it isn't empty, as it is when we are only buidling
1391 static libraries.
1392
1393 1998-11-27 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1394
1395 * session.scm (arity): New procedure.
1396
1397 1998-11-26 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1398
1399 * boot-9.scm: Use run-hook instead of run-hooks everywhere.
1400
1401 1998-11-26 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
1402
1403 * boot-9.scm (run-hooks, add-hook!, remove-hook!): Added temporary
1404 code for backward compatibility until people have had time to
1405 adapt to the new hooks.
1406
1407 1998-11-23 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
1408
1409 * boot-9.scm (beautify-user-module!): Beautify also if public
1410 interface is set to the module itself. In this way we can use
1411 beautify-user-module! to beautify a module prepared for object
1412 code.
1413 (process-define-module): Special case: Try to load object code as
1414 well if a module does :use-module on itself.
1415
1416 * boot-9.scm: Bugfix: Since boot-9.scm is now loaded from
1417 invoke_main_func, we can no longer be sure that all modules have
1418 been registered when boot-9.scm is loaded.
1419 (register-modules): New function: Register and tag modules
1420 registered by scm_register_module_xxx since last call to this
1421 function. Modules are tagged with the dynamic object passed as
1422 argument. (Already linked modules should be tagged with #f.)
1423 (init-dynamic-module, link-dynamic-module): Call register-modules
1424 first to register linked modules.
1425
1426 * boot-9.scm (init-dynamic-module): Remove module from
1427 registered-modules as soon as possible in case we are recursively
1428 invoked; Set public interface before doing the dynamic-call.
1429
1430 * boot-9.scm (map-in-order): Removed (replaced by scm_serial_map).
1431 (abort-hook, before-error-hook, after-error-hook,
1432 before-backtrace-hook, after-backtrace-hook, before-read-hook,
1433 after-read-hook, exit-hook): Make hooks with `make-hook'.
1434
1435 * boot-9.scm: Make hooks first class citizens and make them easier
1436 to use from C:
1437 (make-hook, add-hook!, remove-hook!, run-hooks): Moved to
1438 libguile/feature.c.
1439
1440 * boot-9.scm: Added warnings about bindings used in
1441 libguile/modules.c: the-module, set-current-module,
1442 make-modules-in, beautify-user-module!, module-eval-closure.
1443
1444 1998-11-21 Mikael Djurfeldt <mdj@kenneth>
1445
1446 * boot-9.scm (the-environment): New special form: Returns an
1447 object representing the current local evaluation environment.
1448 This object can be used in `local-eval' and `defined?'.
1449
1450 1998-11-13 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
1451
1452 * boot-9.scm (collect): New syntax. Similar to begin but returns
1453 a list of the results of all forms in the sequence instead of the
1454 result of the last form.
1455
1456 1998-11-10 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
1457
1458 * boot-9.scm (values, call-with-values): Moved here from
1459 syncase.scm.
1460
1461 * syncase.scm (values, call-with-values): Moved to boot-9.scm.
1462
1463 * boot-9.scm (readline-options, readline-enable, readline.disable,
1464 readline-set!: New options interface.
1465
1466 * readline.scm (readline-port): Use readline-options-interface.
1467
1468 1998-11-05 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
1469
1470 * boot-9.scm: Set the repl start module in `top-repl' instead of
1471 at the end of boot-9.scm.
1472
1473 1998-11-01 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1474
1475 * emacs.scm (format): Bugfix: Handle multiple arguments
1476 correctly. (Thanks to Thien-Thi Nguyen.)
1477
1478 1998-11-01 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
1479
1480 * boot-9.scm (exit-hook): New hook: Is run at the very end of an
1481 interactive session.
1482 (top-repl): Run exit-hook on exit.
1483
1484 * readline.scm (readline-port): Maybe read history; Maybe write
1485 history at exit (add to exit-hook).
1486
1487 Fri Oct 30 15:15:37 1998 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1488
1489 * readline.scm (make-readline-port): Bugfixed last change...
1490
1491 1998-10-28 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
1492
1493 * readline.scm (make-readline-port): Don't set prompt to "... " if
1494 read line was empty.
1495
1496 1998-10-19 Jim Blandy <jimb@zwingli.cygnus.com>
1497
1498 * boot-9.scm, debug.scm, expect.scm, hcons.scm, lineio.scm,
1499 r4rs.scm, slib.scm, threads.scm: Update copyright years.
1500
1501 * getopt-gnu-style.scm, slib.scm: Add copyright notice.
1502
1503 Talked to Stallman. Actually, the syntax-case copyright is no
1504 problem. Duh.
1505 * Makefile.am (ice9_sources): Revert last change.
1506 * syncase.scm, psyntax.pp, psyntax.ss: Added again.
1507 * Makefile.in: Regeneretade.
1508
1509 * boot-9.scm: Don't assume that this file is loaded just before
1510 entering a read-eval-print loop. Turn code to load (ice-9 emacs)
1511 into...
1512 (load-emacs-interface): New function.
1513 (top-repl): Call it, if use-emacs-interface is defined and true.
1514 At this point, we *do* know we're about to enter a REPL.
1515
1516 We can't include Kent Dybvig's syntax-case macro expander in the
1517 core Guile distribution, because we don't have copyright
1518 assignments for this code. We can certainly distribute them as a
1519 separate package, but Guile should be FSF code.
1520 * syncase.scm, psyntax.pp, psyntax.ss: Removed.
1521 * Makefile.am (ice9_sources): Removed syncase.scm, psyntax.pp, and
1522 psyntax.ss.
1523 * Makefile.in: Regenerated.
1524
1525 * Makefile.am (ice9_sources): Add getopt-gnu-style.scm.
1526 * Makefile.in: Regenerated.
1527
1528 1998-10-18 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
1529
1530 * boot-9.scm: Added extended read syntax for byte vectors #y(...)
1531 and short vectors #h(...).
1532
1533 1998-10-14 Jim Blandy <jimb@zwingli.cygnus.com>
1534
1535 * calling.scm (excursion-function-syntax): Use a sequence of
1536 set!'s, not a single multi-variable set!; we removed support for
1537 that syntax a long time ago. (Thanks to Shuji Narazaki.)
1538
1539 1998-10-12 Jim Blandy <jimb@zwingli.cygnus.com>
1540
1541 * r4rs.scm (OPEN_READ, OPEN_WRITE, OPEN_BOTH): Don't bother
1542 testing software-type here. That's the least of our Windows
1543 porting issues, and it's done wrong anyway.
1544
1545 1998-10-09 Jim Blandy <jimb@zwingli.cygnus.com>
1546
1547 * boot-9.scm (read-path-list-notation-warning): New function:
1548 print a warning the first time we see `#/' notation.
1549
1550 * q.scm (sync-q!, q?, q-remove!, q-push!, enq!): Lots of bugs, and
1551 (eq? #f '()) assumptions. Make functions that aren't documented
1552 to return anything else return the queue itself. (Bug report from
1553 Michael Livshin --- thanks!)
1554
1555 1998-08-21 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1556
1557 * debug.scm (trace-entry, trace-exit): Removed re-enabling of
1558 trace flag.
1559
1560 * boot-9.scm (make-options): Bugfix: Changed pair? --> list? in
1561 order to allow the empty list as arg.
1562 (error-catching-loop): Use `with-traps' to create a dynamic
1563 context with traps enabled.
1564
1565 1998-08-19 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
1566
1567 * boot-9.scm: Removed (ice-9 regex) from use-list of (guile)
1568 module.
1569 (try-using-libtool-name): Removed dependency on (ice-9 regex).
1570
1571 1998-08-15 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
1572
1573 * boot-9.scm: Make the root module use (ice-9 regex) if
1574 available. The dynamic linking facilities in boot-9.scm are
1575 currently dependent upon regular expressions. My change of
1576 1998-07-14 removed (ice-9 regex) from the use-list of the root
1577 module and thereby destroyed dynamic linking.
1578
1579 1998-07-29 Jim Blandy <jimb@zwingli.cygnus.com>
1580
1581 * Makefile.in: Regenerated using the last public version of
1582 automake, not the hacked Cygnus version.
1583
1584 1998-07-28 Jim Blandy <jimb@zwingli.cygnus.com>
1585
1586 * Makefile.in: Regenerated, after removing Totoro kludge.
1587
1588 1998-07-28 Jim Blandy <jimb@totoro.red-bean.com>
1589
1590 * getopt-gnu-style.scm: New file. (Thanks to Russ McManus.)
1591
1592 1998-07-26 Jim Blandy <jimb@zwingli.cygnus.com>
1593
1594 * Makefile.in Rebuilt, for config changes in parent dir.
1595
1596 1998-07-21 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1597
1598 * readline.scm (make-readline-port): Set prompt string to "... "
1599 after first read line. (Thanks to Richard Polton.)
1600
1601 1998-07-19 Jim Blandy <jimb@zwingli.cygnus.com>
1602
1603 * lineio.scm (make-line-buffering-input-port): Don't use
1604 ungetc-char-ready?, since we don't provide that function any
1605 more. The unread-string function doesn't interact properly with
1606 any of the standard I/O functions anyway. (Thanks to Andrew
1607 Archibald.)
1608
1609 * hcons.scm (hashq-cons-assoc): Don't assume the empty list is
1610 false. Return false when we cannot find a matching entry in the
1611 list. (Thanks to Andrew Archibald.)
1612
1613 1998-07-16 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
1614
1615 * boot-9.scm (export, export-syntax): New special forms: Export
1616 bindings from a module. `(export name1 name2 ...)' can be used at
1617 the top of a module (after `define-module') to specify which names
1618 should be exported. It can be used as an alternative to
1619 `define-public'. `export-syntax' works equivalently to `export'
1620 but is intended for export of syntactic keywords.
1621 (Thanks to Thien-Thi Nguyen.)
1622
1623 1998-07-15 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
1624
1625 * boot-9.scm: Renamed module `(guile-repl)' --> `(guile-user)'.
1626
1627 1998-07-14 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1628
1629 * boot-9.scm: Let the user start in module `(guile-repl)' instead
1630 of module `(guile)'. Also make sure that `(guile-repl)' uses
1631 suitable modules. This change improves Guile stability
1632 substantially since bindings will only be copied from the root
1633 module: If the user redefines builtins in `(guile-repl)' it won't
1634 affect the internal operation of Guile itself.
1635
1636 1998-06-19 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
1637
1638 * boot-9.scm (load-module): When loading files from within files
1639 themselves being loaded: Use the directory path of the file being
1640 loaded as root for relative filenames. (After suggestion by
1641 Steven G. Johnson.)
1642
1643 1998-06-15 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1644
1645 * emacs.scm (emacs-load): New feature: Eval in specified module.
1646
1647 1998-06-14 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1648
1649 * readline.scm: Typo in regex module name.
1650
1651 1998-06-13 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
1652
1653 * readline.scm (apropos-completion-function): regexp-quote text to
1654 be completed.
1655
1656 1998-06-11 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1657
1658 * debug.scm, emacs.scm: Bugfix: Treat `the-last-stack' as a fluid.
1659
1660 1998-06-09 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1661
1662 * boot-9.scm: Check that (current-input-port) is a tty before
1663 enabling readline. (Thanks to Michael N. Livshin.)
1664
1665 1998-06-07 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1666
1667 * boot-9.scm (use-syntax): Turned into a macro inorder to be
1668 similar in use to `use-modules'.
1669 Example: (use-syntax (ice-9 syncase)) will 1. load the module
1670 (ice-9 syncase), and, 2. install the procedure `syncase' as eval
1671 transformer.
1672 (internal-use-syntax): New procedure.
1673 (process-define-module): Use `internal-use-syntax'.
1674
1675 1998-05-19 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1676
1677 * Makefile.am (ice9_sources): Add emacs.scm.
1678
1679 1998-05-13 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1680
1681 * readline.scm: Use the new readline facilities: Add the
1682 possibility to control input and output ports; Add apropos
1683 completion.
1684
1685 * boot-9.scm: Antirevert Jim's readline code which he reverted
1686 19971027 and adapt it to the current readline interface.
1687
1688 * boot-9.scm (top-repl): Only enable readline if not using the
1689 Emacs interface; Only use repl prompt when using the readline port
1690 from repl-read. (We don't want to see it when calling `read'.)
1691
1692 * boot-9.scm (remove-hook!): Parenthesis bug.
1693
1694 1998-05-11 Mikael Djurfeldt <mdj@kenneth>
1695
1696 * boot-9.scm: Load readline module if readline is present.
1697
1698 * readline.scm (apropos-completion-function): New procedure:
1699 Symbolic completion. (Thanks to Andrew Archibald!)
1700
1701 1998-04-22 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1702
1703 * boot-9.scm (process-define-module): Added keyword use-syntax.
1704
1705 1998-04-19 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1706
1707 * nonblocking.scm: Removed. libguile is now inherently
1708 nonblocking through the use of scm_internal_select.
1709
1710 * emacs.scm: Removed use of nonblocking.scm.
1711
1712 * gwish.scm, gtcl.scm: Removed. tcltk.scm has made these
1713 obsolete.
1714
1715 1998-04-15 Mikael Djurfeldt <mdj@nada.kth.se>
1716
1717 * runq.scm (runq-control): Corrected spelling of enqueue!.
1718 (Thanks to Karl M. Hegbloom.)
1719
1720 1998-03-30 Mikael Djurfeldt <mdj@nada.kth.se>
1721
1722 * boot-9.scm: Added new run-time option interface eval-options.
1723
1724 1998-03-28 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1725
1726 * boot-9.scm (remove-hook!): New macro. (Thanks to Maciej
1727 Stachowiak.)
1728
1729 1998-01-30 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1730
1731 * threads.scm: Added simple error and signal handler.
1732 (make-thread, begin-handler): Use this handler. The most
1733 important effect of this is that signals get unmasked.
1734 Previously, when a signal was thrown signals remained masked
1735 (signals get masked when a signal is taken) which influenced other
1736 threads.
1737
1738 1998-01-01 Tim Pierce <twp@skepsis.com>
1739
1740 A better fix to the SLIB identity problem -- thanks to Marius Vollmer.
1741 * slib.scm (identity): Unmake public.
1742 (slib:eval): Evaluate inside `slib-module'.
1743
1744 1997-12-24 Tim Pierce <twp@skepsis.com>
1745
1746 * boot-9.scm: Doc fix.
1747
1748 * slib.scm (identity): Made public.
1749 (home-vicinity): New function (from SLIB/Template.scm).
1750
1751 1997-12-13 Tim Pierce <twp@skepsis.com>
1752
1753 * boot-9.scm (read-line): Rewritten to call %read-line for
1754 improved speed. Minor user-visible changes: the new functions are
1755 hardwired to treat the LFD character as signifying end-of-line, so
1756 changing `scm-line-incrementors' will no longer affect the
1757 behavior of read-line. On platforms which do not represent
1758 end-of-line with a LFD character, read-line should behave more
1759 like native line-processing facilities, but there is still a ways
1760 to go here.
1761
1762 Sat Nov 29 01:24:46 1997 Mikael Djurfeldt <mdj@kenneth>
1763
1764 * boot-9.scm (error-catching-loop, save-stack): `the-last-stack'
1765 is now a fluid.
1766
1767 1997-11-28 Tim Pierce <twp@skepsis.com>
1768
1769 * boot-9.scm (find-and-link-dynamic-module): If a module directory
1770 contains a .la file (a libtool support file), attempt to extract
1771 the shared library name from that file. If the .la file does not
1772 exist, try to link against a .so file. Libtool-generated compiled
1773 modules should load more cleanly in Guile now.
1774 (try-using-libtool-name, try-using-sharlib-name): New functions.
1775
1776 Sun Nov 9 06:10:59 1997 Gary Houston <ghouston@actrix.gen.nz>
1777
1778 * boot-9.scm (set-batch-mode?!, batch-mode?): initialize more
1779 usefully so they will work from a script.
1780
1781 1997-10-31 Marius Vollmer <mvo@zagadka.ping.de>
1782
1783 * boot-9.scm (inherit-print-state): Moved definition to the
1784 neighborhood of the record code.
1785
1786 Mon Oct 27 02:05:49 1997 Jim Blandy <jimb@totoro.red-bean.com>
1787
1788 * boot-9.scm: Revert changes to this file from Oct 23. It turns
1789 out to interact badly with the Emacs support and the Tcl/Tk
1790 support. It's not a high enough priority at the moment to be
1791 worth fixing. I'm leaving the other readline support in, though.
1792
1793 Sat Oct 25 14:23:22 1997 Jim Blandy <jimb@totoro.red-bean.com>
1794
1795 * Makefile.am: Include readline.scm in the list of files to be
1796 installed, so Guile can find it for interactive use.
1797 * Makefile.in: Regenerated.
1798
1799 Thu Oct 23 01:00:33 1997 Jim Blandy <jimb@totoro.red-bean.com>
1800
1801 Add support for readline function.
1802 * readline.scm: New module.
1803 * boot-9.scm (repl-reader): New function.
1804 (scm-style-repl): Call repl-reader, instead of doing the reading
1805 ourselves. Remove repl-report-reset; it was never used for
1806 anything.
1807 (top-repl): If we've got the readline primitives, then redefine
1808 repl-reader to use them.
1809 If we've got the readline primitives, import the readline module.
1810
1811 * ls.scm (ls, lls): Don't assume (eq? #f '()).
1812
1813 Wed Oct 22 18:26:57 1997 Jim Blandy <jimb@totoro.red-bean.com>
1814
1815 * calling.scm, common-list.scm, ls.scm, q.scm, runq.scm,
1816 string-fun.scm: Added copyright notices; reformatted.
1817
1818 Thu Oct 9 05:44:00 1997 Gary Houston <ghouston@actrix.gen.nz>
1819
1820 * expect.scm: (expect-regexec): new procedure, use it in
1821 expect-strings to fix the => syntax under the new regex system.
1822 (top): include regex module in define-module statement.
1823
1824 Wed Oct 8 03:16:01 1997 Gary Houston <ghouston@actrix.gen.nz>
1825
1826 * (error-catching-loop): new local variable "interactive". if
1827 #f, abort terminates the process.
1828 (set-batch-mode?!, batch-mode?): new closures, defined in
1829 error-catching-loop. the names are from scsh.
1830
1831 1997-10-06 Marius Vollmer <mvo@zagadka.ping.de>
1832
1833 * boot-9.scm (inherit-print-state): If NEW-PORT contains a
1834 print-state, throw it away.
1835
1836 Fri Oct 3 12:00:00 Mikael Djurfeldt <mdj@nada.kth.se>
1837
1838 * boot-9.scm (struct-layout): Use `vtable-index-layout' instead of
1839 `0'.
1840
1841 Thu Oct 2 12:00:00 Mikael Djurfeldt <mdj@nada.kth.se>
1842
1843 * boot-9.scm (struct-printer, make-struct-printer,
1844 set-struct-printer-in-vtable!, *struct-printer*): Removed.
1845 (record-type-vtable, make-record-type): Don't use make-struct-printer.
1846 (record-type-vtable): User fields "prpr" (printer is no longer a
1847 user field).
1848 (record-type-name, record-type-fields): Decreased slot index by
1849 one; Use `vtable-offset-user'.
1850
1851 Thu Oct 2 12:00:00 Marius Vollmer <mvo@zagadka.ping.de>
1852
1853 * boot-9.scm (inherit-print-state): New experimental function.
1854
1855 Tue Sep 30 13:12:48 1997 Jim Blandy <jimb@totoro.red-bean.com>
1856
1857 Suggestion and script from Maciej Stachowiak:
1858 * boot-9.scm: Split off modules into separate, autoloadable files.
1859 This reduces startup time from 10.5s to 5.5s (user cpu).
1860 * calling.scm, common-list.scm, ls.scm, q.scm, runq.scm,
1861 string-fun.scm: New files, containing stuff that used to be in
1862 boot-9.scm.
1863 * Makefile.am (ice9_sources): List new files here, for
1864 distribution and installation.
1865 * Makefile.in: Regenerated.
1866
1867 Mon Sep 29 23:53:55 1997 Jim Blandy <jimb@totoro.red-bean.com>
1868
1869 * Makefile.in: Regenerated with automake 1.2c.
1870
1871 Mon Sep 29 03:21:24 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1872
1873 * slib.scm (slib:load): slib:load first tries to load the file
1874 named NAME, then NAME.scm. On error, report the error occuring at
1875 the first attempt (NAME) rather than the second (NAME.scm).
1876
1877 * boot-9.scm: Bugfix: Hard-solder the print-option procedure into
1878 the make-options macro so that we needn't refer to a global
1879 symbol.
1880
1881 Sun Sep 28 21:40:24 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1882
1883 * debug.scm: Moved options interface procedures to boot-9.scm.
1884
1885 * boot-9.scm: Define options interface procedures here instead.
1886
1887 Sat Sep 27 20:19:20 1997 Jim Blandy <jimb@totoro.red-bean.com>
1888
1889 * boot-9.scm (separate-fields-discarding-char,
1890 separate-fields-after-char, separate-fields-before-char): Call
1891 continuation function, RET, as advertised: with each separated
1892 field a separate argument.
1893
1894 * Makefile.in: Regenerated with automake 1.2a.
1895
1896 Sat Sep 20 14:23:53 1997 Mikael Djurfeldt <mdj@kenneth>
1897
1898 * slib.scm (slib:load): Export.
1899
1900 * boot-9.scm (in-vicinity): Bugfix: Don't add "/" to an empty
1901 vicinity;
1902 Provide defmacro.
1903
1904 Thu Sep 18 01:24:31 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1905
1906 * r4rs.scm (apply): Set name property to 'apply.
1907
1908 Tue Sep 16 22:09:50 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1909
1910 * boot-9.scm (keyword->symbol, display-usage-report): Changed
1911 length --> string-length. (Thanks to Aleksandar Bakic.)
1912 (separate-fields-discarding-char, separate-fields-after-char,
1913 separate-fields-before-char): Bugfix from Maciej Stachowiak
1914 <mstachow@mit.edu>. Thanks!
1915 (try-module-linked): Try to find module among those already
1916 registered.
1917 (try-module-dynamic-link): Removed the first test which
1918 corresponds to a call to `try-module-linked'.
1919 (resolve-module): Resolve modules in this order: 1. Already
1920 registered modules (for example those which have been statically
1921 linked), 2. Try to autoload an .scm-file, 3. Try to dynamically
1922 link a .so-file.
1923
1924 Mon Sep 15 23:39:54 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1925
1926 * boot-9.scm (iota): Renamed list-reverse! --> reverse!
1927
1928 Thu Sep 11 02:31:38 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1929
1930 * session.scm (name): New procedure: Gives name of object.
1931 (source): New procedure: Gives source of object.
1932
1933 Wed Sep 10 20:12:45 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1934
1935 * boot-9.scm (primitive-macro?): New procedure.
1936
1937 * slib.scm: Added hack which transfers syntactic information from
1938 the builtin variable `define' to the slib version if module (ice-9
1939 syncase) has been loaded. This is necessary to get correct
1940 expansion inside the slib module.
1941
1942 * psyntax.ss (build-let, build-named-let): New output
1943 constructors.
1944 (build-lexical-var): Seed gensym with symbolic name.
1945 (self-evaluating?): Add keywords among self-evaluating types.
1946 (let): New core form.
1947 (if): Removed from core language.
1948 (or, and, let, cond): Removed syntactic definitions.
1949 (sc-expand3): New procedure: Expander which takes optional mode
1950 and eval-syntactic-expanders-when arguments.
1951
1952 * syncase.scm (psyncomp): New procedure: Recompiles psyntax.pp.
1953 Should be used inside the (ice-9 syncase) module with (use-syntax
1954 syncase) and with the current directory containing the psyntax.ss
1955 source.
1956 Added hack to transfer syntactic information from the builtin
1957 variable `define' to the slib version if module (ice-9 slib) has
1958 been loaded.
1959
1960 Fri Sep 5 05:47:36 1997 Mikael Djurfeldt <mdj@faun.nada.kth.se>
1961
1962 * syncase.scm (sc-interface, sc-expand): Removed hook setup.
1963 (syncase): Publish syntax transformer to be used with
1964 `use-syntax'.
1965 (sc-macro): Use this as the value when publishing macros.
1966
1967 * boot-9.scm (module-type): Added `transformer'.
1968 (make-module): Modified initialization.
1969 (module-transformer, set-module-transformer!): Selector and
1970 mutator for module-associated transformer.
1971 (set-current-module): Use module-transformer to set
1972 `scm:eval-transformer'.
1973 (module-use!): Previous change reverted.
1974 (use-syntax): New function: Install a transformer in current
1975 module.
1976 (sc-interface, sc-expand): Removed! :)
1977
1978 Fri Sep 5 03:09:09 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1979
1980 * emacs.scm (emacs-load): Added new parameter `module'.
1981
1982 * syncase.scm (putprop, getprop): Modified to use the object
1983 properties of the variable object corresponding to the symbol;
1984 This way we can ride on the mechanisms of the module system.
1985 Changed `builtin-variable' calls to `define-public' calls.
1986 Setup the hooks sc-expand and sc-interface.
1987
1988 * boot-9.scm (sc-interface, sc-expand): New builtin variables.
1989 (set-current-module): Switch to and from sc-expand as
1990 scm:eval-transformer when going into and out of modules using
1991 syncase macros.
1992 (module-use!): Set scm:eval-transformer to sc-expand when adding
1993 the syncase interface.
1994
1995 Thu Sep 4 14:57:04 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1996
1997 * syncase.scm (putprop): Temporary fix which publishes new syntax
1998 globally (the old behaviour was complex and connected to the inner
1999 workings of the current module system).
2000
2001 Wed Sep 3 21:29:13 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2002
2003 * psyntax.ss: Updated.
2004 psyntax.pp: Bugfix: Previous version had some leading "t":s cut
2005 off!
2006
2007 Tue Sep 2 00:26:42 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2008
2009 * boot-9.scm (gensym): Removed (replaced by primitive).
2010 (obarray-gensym): Rewritten to use `gensym'.
2011 (gentemp): Rewritten to use `gensym'.
2012
2013 Mon Sep 1 20:08:32 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2014
2015 * gtcl.scm (make-tcl-binder): Rewritten to choose bindings
2016 according to the following priorities:
2017 1. tcl bindings which are present in override-scheme-list
2018 2. bindings from the-scm-module
2019 3. tcl bindings
2020 This way the gtcl module can occur first in the use-list without
2021 disabling the scheme interpreter.
2022 (new-interpreter): New function.
2023
2024 * gwish.scm: Moved initialization code for the-interpreter to
2025 gtcl.scm; Moved name space cleaning code to gtcl.scm and rewrote
2026 it; Call `new-interpreter'; Don't :use-module (guile).
2027
2028 Thu Aug 28 23:48:53 1997 Jim Blandy <jimb@totoro.red-bean.com>
2029
2030 * Makefile.in: Regenerated.
2031
2032 Wed Aug 27 11:35:09 1997 Jim Blandy <jimb@totoro.red-bean.com>
2033
2034 * Makefile.in: Regenerated, so it uses "tar", not "gtar".
2035
2036 Mon Aug 25 22:00:44 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2037
2038 * emacs.scm (object->string, format, error-args->string): New
2039 procedures.
2040 (emacs-frame-eval): Reworked.
2041
2042 Mon Aug 25 16:15:55 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2043
2044 * session.scm (apropos-internal): Musn't initialize symbol
2045 accumulator with a constant pair. That led to mutation of the
2046 source!
2047
2048 Sun Aug 24 01:03:10 1997 Mikael Djurfeldt <mdj@kenneth>
2049
2050 * session.scm (vector-for-each): Removed.
2051 (apropos): vector-for-each --> array-for-each.
2052 (apropos-internal): New function. Return list of accessible
2053 symbols matching regexp.
2054
2055 * debug.scm (frame-number->index): New function. Convert frame
2056 number (as displayed in the backtrace) to frame index (to be used
2057 in stack-ref).
2058
2059 * emacs.scm (emacs-load): New arguments: interactivep: when
2060 non-false, send back results to Emacs; colnum: Column number;
2061 Use modules (ice-9 debug) and (ice-9 session);
2062 (no-stack, no-source): New simple-actions;
2063 (result-to-emacs): New procedure. Sends data to Emacs via the
2064 result protocol;
2065 (get-frame-source, emacs-select-frame, emacs-frame-eval,
2066 emacs-symdoc): New procedures.
2067
2068 Wed Aug 20 13:21:11 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2069
2070 * emacs.scm (emacs-load): Adjust stack narrowing.
2071 (whitespace-chars): Include #\np.
2072
2073 * syncase.scm: Also turn off debugging evaluator and recording of
2074 procedure names during loading of psyntax.pp.
2075
2076 * psyntax.pp: Removed leading blanks => 800K -> 100K.
2077
2078 Tue Aug 19 02:39:41 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2079
2080 * syncase.scm: Don't tamper with debug mode setting when enabling
2081 macros. Instead cut the stack with start-stack.
2082 Load psyntax.pp with recording of positions turned off.
2083
2084 * psyntax.pp, psyntax.ss (quasiquote): Changed fx= --> =.
2085
2086 * syncase.scm: New file: Guile-adaption for syntax-case macros.
2087 * psyntax.pp, psyntax.ss: Syntax-case macros, portable version 2 by
2088 R. Kent Dybvig, Oscar Waddell, Bob Hieb and Carl Bruggeman
2089
2090 Mon Aug 18 21:58:25 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2091
2092 * session.scm: New file: Session support.
2093 (apropos): New procedure: List bindings given regexp.
2094
2095 Sat Aug 16 18:44:24 1997 Gary Houston <ghouston@actrix.gen.nz>
2096
2097 * boot-9.scm: define tms accessors: clock, utime, stime, cutime,
2098 cstime.
2099
2100 Thu Aug 14 19:55:37 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2101
2102 * emacs.scm (emacs-load): Something has changed in the reader so
2103 that we now should set the port line count to the specified value
2104 (linum) instead of (- linum 1).
2105
2106 * slib.scm (slib:load): Use load-from-path instead of
2107 primitive-load-path so that backtraces get narrowed properly at
2108 the top.
2109
2110 * boot-9.scm (top-repl): Save stack already in signal handler in
2111 order to narrow it correctly.
2112 (save-stack): Adjust narrowing tag for the top of load-stacks.
2113
2114 Tue Jul 29 01:18:08 1997 Gary Houston <ghouston@actrix.gen.nz>
2115
2116 * boot-9.scm (move->fdes, dup->port): use dup->fdes, not primitive-dup.
2117 (dup->fdes): deleted, now done in C.
2118
2119 Sat Jul 26 08:00:42 1997 Gary Houston <ghouston@actrix.gen.nz>
2120
2121 * boot-9.scm (setenv): new procedure, scsh compatible.
2122
2123 Sat Jul 26 21:30:10 1997 Marius Vollmer <mvo@zagadka.ping.de>
2124
2125 * boot-9.scm (with-fluids): New macro to go with the
2126 builtin `with-fluids*'.
2127
2128 Thu Jul 24 04:28:11 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2129
2130 * slib.scm (install-require-module): In newer versions of slib
2131 *catalog* is #f until the first access. Therefore we call
2132 require:provided? for a random feature if *catalog* is #f.
2133
2134 Wed Jul 23 20:13:04 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2135
2136 * boot-9.scm: If using emacs interface, enable backtraces
2137 automatically.
2138
2139 Mon Jul 21 06:45:45 1997 Gary Houston <ghouston@actrix.gen.nz>
2140
2141 * boot-9.scm (dup->port, dup->inport, dup->outport, dup->fdes,
2142 dup, fdes->inport, fdes->outport, port->fdes): new procedures.
2143 (duplicate-port): was a C primitive, now it's here.
2144 (move->fdes): allow the first argument to be a file descriptor.
2145 Return the modified port or file descriptor (was unspecified.)
2146
2147 Fri Jul 11 00:13:43 1997 Jim Blandy <jimb@floss.red-bean.com>
2148
2149 Changes to compile under gnu-win32, from Marcus Daniels:
2150 * boot-9.scm (load-user-init): If HOME is unset, provide
2151 a default of /.
2152
2153 * boot-9.scm (define-public): Changed to accomodate Hobbit.
2154
2155 Tue Jun 24 00:31:47 1997 Jim Blandy <jimb@floss.red-bean.com>
2156
2157 * boot-9.scm, debug.scm, hcons.scm, lineio.scm, mapping.scm,
2158 poe.scm, slib.scm, tags.scm, threads.scm: Use normal list
2159 notation, instead of #/ notation.
2160
2161 * expect.scm (expect-strings): Pass regexp/newline flag to
2162 make-regexp.
2163
2164 Mon Jun 23 16:13:38 1997 Jim Blandy <jimb@floss.red-bean.com>
2165
2166 Fix inconsistencies in parsing of #/ style lists.
2167 * boot-9.scm (read-path-list-notation): New function.
2168 (parse-path-symbol): Deleted. Replaced by above.
2169 Plug in read-path-list-notation as the parser for #/ lists,
2170 instead of the anonymous lambda form calling parse-path-symbol.
2171 (Thanks to Maurizio Vitale.)
2172
2173 * boot-9.scm (make-list): Remove the definition of this function
2174 from the (ice-9 common-list) module; make the `init' argument
2175 optional in the scm module's definition, to match the deleted
2176 definition. Harmony reigneth? (Thanks to Bernard URBAN.)
2177
2178 Sun Jun 22 18:33:17 1997 Jim Blandy <jimb@floss.red-bean.com>
2179
2180 Try to detect when people are using one version of libguile and a
2181 different version of ice-9. People have been skewing things and
2182 sending in bug reports.
2183 * version.scm.in: New file, which the configure script munges to
2184 produce version.scm, which contains the ice-9 config stamp.
2185 * boot-9.scm: Compare the libguile and ice-9 config stamps;
2186 display a warning if the two are different.
2187 * Makefile.am: Install version.scm, but don't distribute it.
2188 Distribute version.scm.in, but don't install it.
2189 * Makefile.in: Regenerated.
2190
2191 Thu Jun 19 21:01:16 1997 Jim Blandy <jimb@floss.red-bean.com>
2192
2193 * slib.scm (slib:warn): Alias for WARN function.
2194
2195 Fri Jun 13 00:32:04 1997 Jim Blandy <jimb@floss.red-bean.com>
2196
2197 * boot-9.scm (struct-printer): Fix off-by-one error in range
2198 check. Correctly check for struct printer tag.
2199
2200 * expect.scm: Turn this into a module, (ice-9 expect).
2201 (expect-port, expect-timeout, expect-timeout-proc,
2202 expect-eof-proc, expect-char-proc, expect, expect-strings,
2203 expect-select): Make these public definitions.
2204 (expect-strings): Use make-regexp and regexp-exec, instead of
2205 regcomp and regexec. We've omitted the REG_NEWLINE flag; hope
2206 that's okay.
2207
2208 * boot-9.scm (with-regexp-parts): Comment this out. It has no
2209 users in the core, and relies on mildly hairy details of the old
2210 regexp interface.
2211
2212 * test.scm: Re-enable tests asserting that '() is true, and not a
2213 boolean. This stuff has been true for a while.
2214
2215 * boot-9.scm (ipow-by-squaring, butlast): Fix uses of outdated
2216 function names.
2217
2218 * boot-9.scm (with-excursion-getter-and-setter, q-rear): Doc
2219 fixes.
2220
2221 Wed Jun 11 00:31:40 1997 Jim Blandy <jimb@floss.red-bean.com>
2222
2223 * Makefile.in: Regenerated after xtra_PLUGIN_guile_libs change in
2224 ../configure.in.
2225
2226 Fri Jun 6 14:37:18 1997 Marius Vollmer <mvo@zagadka.ping.de>
2227
2228 * boot-9.scm (struct-printer): Bugfix: Check the layout of the
2229 vtable and not the one of the struct.
2230
2231 Wed Jun 4 23:27:16 1997 Marius Vollmer <mvo@zagadka.ping.de>
2232
2233 * boot-9.scm (struct-layout, %struct-printer-tag, struct-printer,
2234 make-struct-printer, set-struct-printer-in-vtable!): New bindings
2235 to support printing of structures.
2236 (record-type-vtable, make-record-type): Add slot to hold printing
2237 function and initialize it with something appropriate. Removed
2238 commented out printing code.
2239 (record-type-name, record-type-fields): Adjusted slot offsets.
2240 (%print-module): Reduce argument list to "mod" and "port".
2241
2242 Tue Jun 3 17:04:18 1997 Jim Blandy <jimb@totoro.cyclic.com>
2243
2244 * slib.scm (identity): New function, used by SLIB.
2245
2246 Sat May 31 18:57:12 1997 Gary Houston <ghouston@actrix.gen.nz>
2247
2248 * boot-9.scm: signal-handler, alarm-thunk: removed.
2249 don't define ticks-interrupt etc.
2250 top-repl: install signal handlers for SIGINT, SIGFPE, SIGSEGV, SIGBUS
2251 during call to scm-style-repl.
2252
2253 Fri May 30 18:08:10 1997 Jim Blandy <jimb@floss.cyclic.com>
2254
2255 * slib.scm (slib:load): Use primitive-load-path instead of
2256 basic-load. This is probably wrong, but hopefully the entire
2257 source access system will be revised soon anyway, and this will
2258 make require behave more like Emacs Lisp's require. If this
2259 breaks something, please let me know. Maybe this is real dumb.
2260
2261 Thu May 29 02:36:48 1997 Jim Blandy <jimb@floss.cyclic.com>
2262
2263 * regex.scm: Add a module declaration. Use DEFINE-PUBLIC everywhere.
2264 * boot-9.scm: If the `regex' feature is present, use the module
2265 (ice-9 regex).
2266
2267 Tue May 27 22:48:14 1997 Tim Pierce <twp@twp.tezcat.com>
2268
2269 * regex.scm: New file.
2270 * Makefile.am (subpkgdata_DATA): Add regex.scm.
2271 * Makefile.in: Regenerated.
2272
2273 Mon May 26 17:24:48 1997 Jim Blandy <jimb@totoro.cyclic.com>
2274
2275 * COPYING, boot-9.scm, debug.scm, emacs.scm, expect.scm, gtcl.scm,
2276 gwish.scm, hcons.scm, lineio.scm, mapping.scm, nonblocking.scm,
2277 oldprint.scm, poe.scm, r4rs.scm, source.scm, tags.scm, test.scm,
2278 threads.scm: New address for FSF.
2279
2280 Fri May 16 04:09:45 1997 Jim Blandy <jimb@floss.cyclic.com>
2281
2282 * debug.scm: Update copyright years; this file has been worked on
2283 in 1997.
2284
2285 Thu May 15 07:56:08 1997 Gary Houston <ghouston@actrix.gen.nz>
2286
2287 * expect.scm: use gettimeofday instead of get-internal-real-time
2288 and use a floating point timeout when calling select. Untested,
2289 since the regex library is currently AWOL.
2290
2291 Wed May 14 21:00:30 1997 Jim Blandy <jimb@floss.cyclic.com>
2292
2293 * boot-9.scm (eval-string): Function deleted; it was already
2294 implemented in C, so there's no point in making a divergable copy
2295 here.
2296
2297 Tue May 13 16:40:06 1997 Jim Blandy <jimb@floss.cyclic.com>
2298
2299 * Makefile.in: Regenerated, using automake-1.1p.
2300
2301 Tue May 13 16:40:06 1997 Jim Blandy <jimb@floss.cyclic.com>
2302
2303 * Makefile.in: Regenerated, using automake-1.1p.
2304
2305 Tue May 13 02:48:49 1997 Gary Houston <ghouston@actrix.gen.nz>
2306
2307 * boot-9.scm (error-catching-loop): don't read a line from
2308 current input when quit is encountered, the previous change
2309 fixes this too.
2310
2311 Mon May 12 19:00:21 1997 Jim Blandy <jimb@floss.cyclic.com>
2312
2313 * boot-9.scm (scm-style-repl): After reading an expression,
2314 consume any trailing newline (perhaps preceded by whitespace), to
2315 avoid screwing up GDB. More detail in comments.
2316
2317 Mon May 5 13:18:38 1997 Jim Blandy <jimb@floss.cyclic.com>
2318
2319 * Makefile.am (ETAGS_ARGS): New variable, since we're not treating
2320 the Scheme code like code yet.
2321 * Makefile.in: Resrac,husrched.
2322
2323 Wed Apr 30 15:25:15 1997 Marius Vollmer <mvo@zagadka.ping.de>
2324
2325 * boot-9.scm (link-dynamic-module): Do not catch errors from
2326 dynamic-link and dynamic-call. When the shared library exists it
2327 is now assumed to be suitable for a dynamic C module.
2328
2329 Fri Apr 25 21:21:35 1997 Marius Vollmer <mvo@zagadka.ping.de>
2330
2331 * boot-9.scm (process-use-modules): New function to support the
2332 use-modules macro
2333 (use-modules): throw an error iff one of the requested modules
2334 can't be found.
2335
2336 Tue Apr 29 06:54:46 1997 Gary Houston <ghouston@actrix.gen.nz>
2337
2338 * boot-9.scm: don't define timer-thunk or gc-thunk.
2339
2340 Sun Apr 27 17:56:09 1997 Jim Blandy <jimb@floss.cyclic.com>
2341
2342 * aclocal.m4: Removed; unnecessary, given changes of Apr 24.
2343
2344 * Makefile.am (subpkgdatadir): Use "ice-9" instead of "@module@";
2345 we're not using AM_INIT_GUILE_MODULE any more.
2346 * Makefile.in: Regeneratitetedrerd.
2347
2348 Thu Apr 24 01:33:33 1997 Jim Blandy <jimb@floss.cyclic.com>
2349
2350 Get 'make dist' to work again.
2351 * Makefile.am (EXTRA_DIST): Remove PLUGIN files.
2352 * Makefile.in: Regenerated, like two tons of fleas.
2353
2354 Changes for reduced Guile distribution: one configure script,
2355 no plugins.
2356 * configure.in, configure: Removed.
2357 * Makefile.in: Regenerated.
2358
2359 Sat Apr 19 08:03:50 1997 Jim Blandy <jimb@floss.cyclic.com>
2360
2361 * boot-9.scm (eval-string, command-line, load-user-init): New
2362 functions.
2363
2364 Sat Apr 12 08:27:05 1997 Gary Houston <ghouston@actrix.gen.nz>
2365
2366 * boot-9.scm (log10): defined.
2367
2368 Tue Apr 1 17:46:49 1997 Gary Houston <ghouston@actrix.gen.nz>
2369
2370 * expect.scm (expect-select): correct the millisecond timeout
2371 arithmetic (from Marko.Kohtala@ntc.nokia.com).
2372
2373 Mon Mar 31 03:23:19 1997 Gary Houston <ghouston@actrix.gen.nz>
2374
2375 * boot-9.scm (open-input-pipe, open-output-pipe): defined here
2376 instead of in libguile.
2377 (tm:sec etc.) new accessors for broken-down time.
2378 (set-tm:sec etc.) new setters for broken-down time.
2379
2380 Thu Mar 27 05:06:00 1997 Gary Houston <ghouston@actrix.gen.nz>
2381
2382 * boot-9.scm (netent:addrtype, servent:port): added missing
2383 procedures.
2384 (netent:net, servent:proto): repaired.
2385 (utsname:sysname etc.): new accessors for uname.
2386
2387 Tue Mar 25 03:04:03 1997 Gary Houston <ghouston@actrix.gen.nz>
2388
2389 * boot-9.scm (sockaddr:fam, sockaddr:path, sockaddr:addr,
2390 sockaddr:port): new functions.
2391
2392 Wed Mar 19 04:50:34 1997 Gary Houston <ghouston@actrix.gen.nz>
2393
2394 * boot-9.scm: define accessor procedures for the objects returned
2395 by getpw, getgr, gethost, getnet, getproto, getserv (e.g.,
2396 passwd:name, where the first component is the name of the C structure
2397 and the second is the unprefixed C member name.)
2398
2399 Tue Mar 18 18:39:31 1997 Gary Houston <ghouston@actrix.gen.nz>
2400
2401 * boot-9.scm (setpwent, setgrent, sethostent, setnetent, setprotoent,
2402 setservent): no longer take an argument, it was bogus.
2403
2404 Thu Mar 13 00:13:41 1997 Gary Houston <ghouston@actrix.gen.nz>
2405
2406 * boot-9.scm (scm-error): deleted, reimplemented in C.
2407
2408 Mon Mar 10 15:48:31 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2409
2410 * boot-9.scm (process-define-module): Modified to handle both
2411 keywords and symbols.
2412
2413 Sat Mar 8 04:32:44 1997 Gary Houston <ghouston@actrix.gen.nz>
2414
2415 * slib.scm: update read usage.
2416
2417 * r4rs.scm: update primitive-load usage.
2418 Don't define read-sharp.
2419
2420 * boot-9.scm: use read-hash-extend to install extra read syntax.
2421 (read-sharp): removed.
2422 Adjust usage of primitive-load-path, read, which no longer take
2423 case_i or read-sharp arguments.
2424
2425 Sat Mar 8 00:07:54 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2426
2427 * boot-9.scm: Added loading of session support module.
2428
2429 * debug.scm: Removed `display-application'. (Replaced by
2430 primitive procedure.)
2431
2432 * boot-9.scm (beautify-user-module!): Don't add the root module
2433 interface to the end of the use-list of the root module.
2434
2435 Thu Mar 6 07:26:34 1997 Gary Houston <ghouston@actrix.gen.nz>
2436
2437 * boot-9.scm: repl-quit, repl-abort: obsolete variables deleted.
2438
2439 Wed Mar 5 20:30:24 1997 Gary Houston <ghouston@actrix.gen.nz>
2440
2441 * boot-9.scm: check use-emacs-interface for emacs support.
2442
2443 Sun Mar 2 19:47:14 1997 Gary Houston <ghouston@actrix.gen.nz>
2444
2445 * boot-9.scm (scm-style-repl): call repl-report-start-timing if
2446 read gets EOF.
2447 * (exit): alias for quit.
2448
2449 Sun Mar 2 05:25:11 1997 Gary Houston <ghouston@actrix.gen.nz>
2450
2451 * boot-9.scm (error-catching-loop thunk): use a status variable to
2452 return the quit args.
2453 (scm-style-repl): call -quit, passing return value from
2454 error-catching-repl. Make -quit return its args.
2455 stand-alone-repl: comment out, since it seems unused.
2456
2457 (error-catching-loop thunk): discard trailing junk after a (quit).
2458
2459 Sat Mar 1 15:24:39 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2460
2461 * boot-9.scm: Removed the old printer code.
2462
2463 * r4rs.scm (apply, call-with-current-continuation): Added comment
2464 explaining why apply and call/cc need to be closures.
2465
2466 * boot-9.scm (apply, call-with-current-continuation): Bugfix:
2467 Removed. These definitions are already present in r4rs.scm.
2468
2469 * debug.scm (trace-entry, trace-exit): Check that we're on a repl
2470 stack before printing traced frames; Re-enable trace flag at end
2471 of handlers.
2472
2473 Sat Mar 1 00:10:38 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2474
2475 * debug.scm: Add hook for reset of trace level at abort.
2476
2477 * boot-9.scm (run-hooks): New procedure.
2478 (add-hooks!): New macro.
2479 Change hooks to use these functions.
2480
2481 * debug.scm: *Warning* This feature is a bit premature. I add
2482 it anyway because 1. it is very useful, and, 2. you can start
2483 making it less premature by complaining to me and by modifying
2484 the source! :-)
2485 (trace): Given one or more procedure objects, trace each one.
2486 Given no arguments, show all traced procedures.
2487 (untrace): Given one or more procedure objects, untrace each one.
2488 Given no arguments, untrace all traced procedures. The tracing in
2489 Guile have an advantage to most other systems: We don't create new
2490 procedure objects, but mark the procedure objects themselves.
2491 This means that also anonymous and internal procedures can be
2492 traced.
2493
2494 * boot-9.scm (error-catching-loop): Added handling of apply-frame
2495 and exit-frame exceptions.
2496
2497 * boot-9.scm (assert-repl-prompt, the-prompt-string): Removed.
2498 (set-repl-prompt!): Setter for repl prompt.
2499 (scm-style-repl): If prompt is #f, don't prompt; if prompt is a
2500 string, display it; if prompt is a thunk, call it and display its
2501 result; otherwise display "> ".
2502 (Change suggested by Roland Orre <orre@nada.kth.se>.)
2503
2504 * r4rs.scm (%load-verbosely): Reverted change to
2505 `module-defined?', since the module system isn't bootstrapped when
2506 we load r4rs.scm. This is just a temporary fix to make the
2507 repository version runnable.
2508
2509 Thu Feb 27 23:25:47 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2510
2511 * boot-9.scm: Removed the enabling of debug evaluator and
2512 recording of source code positions. This was placed there for our
2513 convenience, but it has already sneaked into the distribution
2514 once... so we'd better add this in our local copies instead when
2515 we need it. (These options are normally enabled at the end of
2516 boot-9.scm when loading the debug module.)
2517
2518 Thu Feb 27 16:04:45 1997 Marius Vollmer <mvo@zagadka.ping.de>
2519
2520 * boot-9.scm (module-defined?): New function.
2521 (macroexpand-1, macroexpand): Use local-ref instead of defined?
2522 and eval.
2523 * r4rs.scm (%load-verbosely): Use "module-defined?" instead of
2524 "defined?".
2525 * slib.scm (defined?): New function to take the place of the
2526 builtin "defined?". It allways examines the slib module.
2527
2528 Mon Feb 24 21:46:15 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2529
2530 * configure.in: Added AM_MAINTAINER_MODE
2531
2532 Sat Feb 15 04:51:20 1997 Gary Houston <ghouston@actrix.gen.nz>
2533
2534 * boot-9.scm (read-sharp): define directly, don't go through a
2535 %read-sharp layer.
2536
2537 Tue Feb 11 08:45:48 1997 Gary Houston <ghouston@actrix.gen.nz>
2538
2539 * boot-9.scm (uniform-vector-set!): use uniform-array-set1!, not
2540 uniform-vector-set1! which doesn't exist.
2541
2542 Mon Feb 10 03:01:48 1997 Mikael Djurfeldt <mdj@kenneth>
2543
2544 * boot-9.scm (backtrace): Removed. (A C version now exists in
2545 backtrace.c.)
2546
2547 Fri Jan 24 06:05:36 1997 Gary Houston <ghouston@actrix.gen.nz>
2548
2549 * boot-9.scm (read-line!, read-delimited!, read-delimited,
2550 read-line): new procedures, see libguile/ChangeLog.
2551
2552 Thu Jan 16 17:07:03 1997 Marius Vollmer <mvo@zagadka.ping.de>
2553
2554 Added dynamic linking of modules. See libguile/DYNAMIC-LINKING.
2555
2556 * boot-9.scm (split-c-module-name, convert-c-registered-modules,
2557 init-dynamic-module, dynamic-maybe-call,
2558 find-and-link-dynamic-module, link-dynamic-module,
2559 try-module-dynamic-link, registered-modules): New definitions for
2560 dynamic linking of modules.
2561 (resolve-module): Try to dynamically link the requested module
2562 after failing to load it as Scheme code.
2563
2564 Wed Jan 8 05:50:14 1997 Gary Houston <ghouston@actrix.gen.nz>
2565
2566 * boot-9.scm (getservbyport, getservbyname): remove stray %.
2567
2568 Tue Jan 7 20:02:24 1997 Jim Blandy <jimb@floss.cyclic.com>
2569
2570 * boot-9.scm (and=>): Rename THUNK argument to PROCEDURE, 'cos
2571 that's what it is.
2572
2573 * lineio.scm (make-line-buffering-input-port): Properly test for
2574 the case of an empty buffer list. The old code assumed that '()
2575 was false.
2576
2577 Mon Jan 6 01:13:53 1997 Mikael Djurfeldt <mdj@kenneth>
2578
2579 * boot-9.scm (use-modules): New macro (from Marius Vollmer).
2580 (use-modules <module name> ...) Put the the modules named by
2581 <module name> ... on the use list of the current module.
2582
2583 Sun Jan 5 15:52:59 1997 Jim Blandy <jimb@floss.cyclic.com>
2584
2585 * boot-9.scm (error-catching-loop): Remove message saying that
2586 typing "$" will put you in the debugger. This isn't implemented
2587 yet.
2588
2589 Sun Dec 22 23:27:25 1996 Jim Blandy <jimb@floss.cyclic.com>
2590
2591 * boot-9.scm (delq-all!): Function deleted; delq!'s semantics have
2592 been fixed, so this function is superfluous.
2593 (transform-usage-lambda): Use delq!, not delq-all!.
2594
2595 Tue Dec 17 20:36:45 1996 Marius Vollmer <mvo@zagadka.ping.de>
2596
2597 * boot-9.scm (resolve-module): New optional parameter that
2598 controls whether autoloading is attempted or not. Default is #t.
2599 (process-define-module): Don't autoload the defined module.
2600 (try-module-autoload): Don't autoload the directory modules.
2601
2602 * boot-9.scm (process-define-module): Ensure that the-scm-module
2603 is last in the `uses' list to allow shadowing builtin
2604 bindings. All :use-module options are added in the order they
2605 appear in the arguments but before anything already on the list
2606 (such as the-scm-module).
2607
2608 Wed Dec 11 21:06:05 1996 Gary Houston <ghouston@actrix.gen.nz>
2609
2610 * slib.scm (slib-parent-dir): throw error if #f returned from
2611 %search-load-path.
2612
2613 Sat Nov 30 23:57:28 1996 Tom Tromey <tromey@cygnus.com>
2614
2615 * PLUGIN/greet, PLUGIN/split.sed, PLUGIN/this.configure: Removed.
2616 * Makefile.am, aclocal.m4: New files.
2617 * configure.in: Updated for Automake.
2618
2619 Wed Nov 27 14:16:14 1996 Marius Vollmer <mvo@zagadka.ping.de>
2620
2621 * boot-9.scm (macroexpand-1, macroexpand), slib.scm
2622 (slib:features), r4rs.scm (%load-verbosely): "defined?" is now a
2623 function, use it accordingly.
2624
2625 Thu Nov 21 11:12:10 1996 Jim Blandy <jimb@floss.cyclic.com>
2626
2627 It's an "eval closure", not an "eval thunk." A thunk is a
2628 function of no arguments.
2629 * boot-9.scm (module-type): Rename module field.
2630 (make-module, eval-in-module, make-root-module,
2631 set-current-module): Uses changed.
2632 (module-eval-closure, set-module-eval-closure!,
2633 root-module-closure): Renamed from module-eval-thunk,
2634 set-module-eval-thunk!, root-module-thunk.
2635 (set-current-module): Change uses of *top-level-lookup-thunk* to
2636 *top-level-eval-closure*.
2637
2638 Wed Nov 20 14:45:27 1996 Jim Blandy <jimb@totoro.cyclic.com>
2639
2640 * slib.scm (slib-parent-dir): Use string-length, not length.
2641 (Thanks to Bernard Urban.)
2642
2643 Sat Nov 2 20:00:42 1996 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2644
2645 * boot-9.scm: The debugging evaluator and recording of positions
2646 aren't enabled by default any longer (they are switched on in
2647 debug.scm). But during development we want to have them also
2648 *inside* boot-9.scm. Therefore, two lines are added at the
2649 beginning of boot-9.scm to enable these.
2650
2651 Call `provide' so that `records' are included among the
2652 `*features*'.
2653
2654 The scheme for saving the stack has been adjusted: save-stack is
2655 now commonly available for saving the stack. Calling `save-stack'
2656 sets a flag `stack-saved?' which prevents overwriting the stack.
2657 `stack-saved?' is reset at `abort'.
2658
2659 Spelling correction: seperate --> separate.
2660
2661 Removed `:'s that had creeped into some comments.
2662
2663 The repl now doesn't print #<unspecified> results any longer
2664 If the user wants to see this, he can do
2665 (assert-repl-print-unspecified #t) in his startup file.
2666
2667 The user now gets a friendly message instead of a backtrace at
2668 error.
2669
2670 Added `before-read-hook'.
2671
2672 Load module (ice-9 emacs) if option `-e' was specified.
2673
2674 (provide): New function.
2675
2676 (error): Save stack at entry, so that Guile entrails won't show up
2677 in backtraces.
2678
2679 (backtrace): New function.
2680
2681 (save-stack): Can now take arbitrary number of stack narrowing
2682 specifier pairs. The first specifier in a pair controls inner
2683 border, the second the outer border. A number means cut that
2684 number of frames, a procedure object means cut until that object
2685 is found in operator position in a frame.
2686
2687 * debug.scm: Enable debugging evaluator and recording of positions
2688 by default.
2689
2690 * slib.scm (slib:load): Adapt to the new behavior of
2691 primitive-load: It doesn't any longer try both with and without
2692 ".scm" extension. (We don't want to use %search-load-path here.)
2693
2694 (implementation-vicinity): New function. slib requires it
2695
2696 (library-vicinity): Updated.
2697
2698 Load "require.scm" in the library-vicinity.
2699
2700 (install-require-vicinity, install-require-module): New functions.
2701
2702 Mon Oct 28 17:56:29 1996 Jim Blandy <jimb@floss.cyclic.com>
2703
2704 * boot-9.scm (load-from-path): New function.
2705
2706 * boot-9.scm (try-load, basic-try-load, try-load-module,
2707 try-load): Deleted. I don't think they're being used.
2708
2709 * Makefile.in (scm_files): Add r4rs.scm and test.scm to this list,
2710 so they'll get distributed.
2711
2712 Get Guile to be a little less chatty by default. The new user
2713 should see as little clutter as possible.
2714 * r4rs.scm (%load-verbosely): Make this #f by default.
2715 * boot-9.scm (scm-repl-verbose): Make this #f by default.
2716 (scm-style-repl): Don't run 'pk' on the value passed to quit.
2717
2718 * r4rs.scm: New file.
2719 * boot-9.scm: Load r4rs.scm, first thing.
2720 (OPEN_READ, OPEN_WRITE, OPEN_BOTH, *null-device*, open-input-file,
2721 open-output-file, open-io-file, close-input-port,
2722 close-output-port, close-io-port, call-with-input-file,
2723 call-with-output-file, with-input-from-port, with-output-to-port,
2724 with-error-to-port, with-input-from-file, with-output-to-file,
2725 with-error-to-file, with-input-from-string, with-output-to-string,
2726 with-error-to-string, the-eof-object): Definitions moved to
2727 r4rs.scm. Not all of them are R4RS, but those that are use those
2728 that are not.
2729 (load, %load-verbosely, %load-announce): Moved, along with code to
2730 set %load-hook, to r4rs.scm.
2731
2732 * test.scm: New file.
2733
2734 * boot-9.scm (integer?): Definition deleted, in favor of the one
2735 present in libguile (which used to be called int?). I have no
2736 idea why integer? didn't just call int? to begin with.
2737
2738 * boot-9.scm (<, <=, =, >, >=): Definitions in terms of <?, <=?,
2739 =?, >?, and >=? deleted; they're defined that way by libguile now.
2740
2741 * boot-9.scm (load): Simplified; primitive-load does most of this
2742 work now.
2743 (%load-announce-win): Removed; no longer used. Set %load-hook to
2744 call %load-announce.
2745
2746 Sun Oct 27 07:47:03 1996 Gary Houston <ghouston@actrix.gen.nz>
2747
2748 * boot-9.scm (stat:dev, stat:ino, stat:mode, stat:nlink, stat:uid,
2749 stat:gid, stat:rdev, stat:size, stat:atime, stat:mtime,
2750 stat:ctime, stat:blksize, stat:blocks) accessor functions for stat
2751 components.
2752 (file-is-directory?): use stat:type.
2753
2754 Fri Oct 25 03:34:47 1996 Jim Blandy <jimb@floss.cyclic.com>
2755
2756 * boot-9.scm (%read-sharp): Don't recognize the `#!' syntax here;
2757 that's now taken care of in libguile, and in a way compatible with
2758 SCSH (which this isn't).
2759
2760 Mon Oct 21 18:52:36 1996 Jim Blandy <jimb@totoro.cyclic.com>
2761
2762 * boot-9.scm: Formatting tweaks.
2763
2764 Fri Oct 18 01:03:08 1996 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2765
2766 * boot-9.scm (handle-system-error): Added hooks before-error-hook,
2767 after-error-hook, before-backtrace-hook and after-backtrace-hook
2768 to the error handler. E.g.: fancy emacs support could plug into
2769 these.
2770 (save-stack): New function. The stack is now made differently
2771 depending on the stack id. (The motivation is to make a better
2772 choice regarding what stack frames to present to the user.)
2773 (error-catching-loop): Stack handling code moved outside into
2774 save-stack.
2775
2776 Thu Oct 17 20:33:08 1996 Gary Houston <ghouston@actrix.gen.nz>
2777
2778 * Makefile.in (scm_files): add expect.scm.
2779
2780 * expect.scm: new file ported from guile-iii.
2781
2782 * boot-9.scm: remove handle-system-error, after moving the code into
2783 error-catching-loop.
2784 Don't set 'throw-handler-default property on error keys.
2785 Just interpret (almost) any throw with 4 args as an error throw.
2786 Delete some try-load stuff that was already commented out.
2787
2788 Second thoughts, keep handle-system-error but call it from
2789 error-catching-loop.
2790
2791 Tue Oct 15 17:07:20 1996 Jim Blandy <jimb@floss.cyclic.com>
2792
2793 * boot-9.scm: Doc fixes.
2794 (make-module): Rework for readability.
2795 (make-root-module, make-scm-module): USES argument to make-module
2796 should be '(), not #f.
2797
2798 * boot-9.scm (try-load): %sys-load-path has been renamed to
2799 primitive-load-path; adjust call here.
2800
2801 Tue Oct 15 14:25:01 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
2802
2803 * boot-9.scm (signal-handler): Bugfix: Moved the recording of
2804 the stack to the correct place: when it is decided to generate an
2805 error-signal.
2806
2807 Mon Oct 14 22:20:30 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
2808
2809 * boot-9.scm (error-catching-loop, signal-handler,
2810 handle-system-error): Backtracing now works for signals aswell;
2811 Backtracing mechanism can now identify the stack root created by
2812 start-stack so that the user isn't exposed to system stack frames.
2813
2814 Mon Oct 14 06:05:42 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
2815
2816 * Makefile.in: Added threads.scm.
2817
2818 Mon Oct 14 04:21:51 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
2819
2820 * debug.scm (make-enable, make-disable): Simplified.
2821
2822 * boot-9.scm: Renamed %%throw-handler-default -->
2823 throw-handler-default.
2824 ((handle-system-error key . arg-list)): Changed the way errors are
2825 reported.
2826 ((scm-style-repl)): Wrap up the call to eval in a start-stack
2827 acro.
2828 ((error-catching-loop thunk)): Introduce a lazy-catch into
2829 error-catching-loop so that the stack can be captured.
2830
2831 Thu Oct 10 22:27:32 1996 Jim Blandy <jimb@totoro.cyclic.com>
2832
2833 * mapping.scm (hash-table-mapping): Explicitly request that
2834 make-vector fill new vectors with '(); this will make it easier to
2835 port Guile Scheme code to other Schemes.
2836 * boot-9.scm (make-print-style, make-print-table): Same.
2837
2838 Sun Oct 6 03:54:59 1996 Gary Houston <ghouston@actrix.gen.nz>
2839
2840 * boot-9.scm (load): rewritten again.
2841 Append "." to the default %load-path.
2842 (feature?): new function: checks for a symbol in the features list.
2843 (module-local-variable): remove apparently useless (caddr (list m v
2844 ...))
2845 (%load-announce): minor formatting change.
2846 (file-exists?): use access? if posix is featured.
2847 (file-is-directory?): use stat if i/o-extensions is featured.
2848 (try-module-autoload module-name): use file-exists? before
2849 file-is-directory?
2850
2851 Sat Oct 5 18:54:03 1996 Mikael Djurfeldt <mdj@kenneth>
2852
2853 * boot-9.scm: Added conditional loading of threads.scm.
2854
2855 * threads.scm: New file. Modified from the Cygnus-r0.3
2856 distribution.
2857
2858 * boot-9.scm (error-catching-loop): Added handling of key
2859 `switch-repl'.
2860
2861 * boot-9.scm: Name change %%bad-throw --> bad-throw.
2862
2863 Wed Oct 2 23:38:44 1996 Jim Blandy <jimb@totoro.cyclic.com>
2864
2865 * boot-9.scm (make-record-type, record-constructor): Don't assume
2866 the empty list is false when parsing the argument list.
2867
2868 Mon Sep 30 22:15:50 1996 Jim Blandy <jimb@totoro.cyclic.com>
2869
2870 * boot-9.scm (signal-handler): Clean up logic.
2871
2872 * boot-9.scm (load): Assume %load-path is always bound.
2873
2874 Sat Sep 28 00:15:37 1996 Gary Houston <ghouston@actrix.gen.nz>
2875
2876 * boot-9.scm (error): replace another throw with scm-error. Throw
2877 to 'misc-error instead of 'error (no need to distinguish these.)
2878 Don't set up 'error as a key.
2879 Set up regex-error as a key, if regex is available.
2880 (signal-handler): use scm-error, not throw.
2881
2882 (%try-load, try-load-with-path, %load, load-with-path,
2883 basic-try-load-with-path, basic-load-with-path,
2884 try-load-module-with-path,load-module-with-path): deleted, since
2885 they seem redundant.
2886 (try-load): define using %try-load, not try-load-with-path.
2887 (load): rewritten. load tries to open the file directly and
2888 with a .scm extension before searching the library directories
2889 (should "." be added to %load-path? then load could still open
2890 directly files starting with "/").
2891 (try-module-autoload): use load, not load-with-path.
2892 (%load-indent): deleted, -2 was causing errors.
2893
2894 (%read-sharp): use port-line, not line-number.
2895
2896 Fri Sep 27 16:23:51 1996 Jim Blandy <jimb@totoro.cyclic.com>
2897
2898 * boot-9.scm (%%bad-throw): Delete definition. 1) It's very
2899 straightforward to provide the equivalent functionality using
2900 (catch #t ...), so there's no need for the extra complexity. 2)
2901 Outside the context of a read-eval-print loop (which Guile should
2902 not require) it's not clear we should do anything more complicated
2903 than print an error and exit; the user or REPL can establish
2904 something better if it wants. 3) In that case, it's much more
2905 robust to just do it in the C code.
2906
2907 Tue Sep 24 06:53:04 1996 Gary Houston <ghouston@actrix.gen.nz>
2908
2909 * boot-9.scm (%try-load): define using primitive-load. Previously
2910 %try-load itself was the primitive.
2911 (load-with-path): use scm-error instead of %load-announce-lossage.
2912 Errors are thrown to 'misc-error instead of 'could-not-load.
2913 (%load-announce-lossage): deleted.
2914
2915 Mon Sep 23 00:16:31 1996 Mikael Djurfeldt <mdj@kenneth>
2916
2917 * boot-9.scm (warn, scm-style-repl): Use C printer instead of `print'.
2918 (make-record-type type-name fields): Temporarily remove support
2919 for printing of records (not possible yet with C printer).
2920
2921 Fri Sep 20 00:24:27 1996 Gary Houston <ghouston@actrix.gen.nz>
2922
2923 * boot-9.scm (file-exists?, file-is-directory): catch only
2924 system-error, not every kind of error.
2925 (scm-error): new procedure.
2926
2927 Thu Sep 19 16:02:46 1996 Jim Blandy <jimb@totoro.cyclic.com>
2928
2929 * boot-9.scm: Formatting tweaks.
2930
2931 Wed Sep 18 09:07:37 1996 Gary Houston <ghouston@actrix.gen.nz>
2932
2933 * boot-9.scm (%%handle-system-error key): remove the code for
2934 SCM-style errors. handle the case that an unexpected number
2935 of args are supplied.
2936 (%%system-errors): removed.
2937 (error): redefine using a throw with key and 4 args.
2938 ('error): associate 'error, 'error-signal keys with
2939 %%handle-system-error.
2940 (%%default-error-handler): removed.
2941 (signal-handler): throw with 4 args and use the error-signal key.
2942 Create an error message instead of using numerical codes.
2943 (%%bad-throw): call error instead of throw if key not found.
2944
2945 Tue Sep 17 04:11:28 1996 Gary Houston <ghouston@actrix.gen.nz>
2946
2947 * boot-9.scm: initialize new error keys (see libguile/ChangeLog).
2948 (%%handle-system-error key): check subr is not #f before printing.
2949 Recognize %s (embed an argument using "display") and
2950 %S (embed an argument using "write").
2951
2952 Sun Sep 15 03:55:35 1996 Gary Houston <ghouston@actrix.gen.nz>
2953
2954 * boot-9.scm (%%handle-system-error key): set args and rest to
2955 the empty list if they are #f.
2956 Initialize out-of-range as an error key.
2957
2958 Sat Sep 14 03:41:15 1996 Gary Houston <ghouston@actrix.gen.nz>
2959
2960 * PLUGIN/REQ: remove the "ice-9 lgh" line which causes a cycle.
2961
2962 * boot-9.scm: remove leading %% from references to '%%system-error.
2963 (%%handle-system-error): don't pass all the thrown arguments when
2964 aborting, just the key and subr.
2965 Remove the code to "Install default handlers for built-in errors."
2966 Remove the definition of the syserror procedure.
2967 Associate 'numerical-overflow with default handler.
2968
2969 Fri Sep 13 04:58:11 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
2970
2971 * boot-9.scm: Name change: value-ref --> local-ref
2972 resolved-ref --> nested-ref Motivation: conformance to the other
2973 dictionary operators: list-ref operates on list, vector-ref
2974 operates on vector, nested-ref operates on nested namespace,
2975 local-ref operates on the local nested namespace.
2976
2977 Sat Sep 7 06:44:47 1996 Gary Houston <ghouston@actrix.gen.nz>
2978
2979 * boot-9.scm (%%handle-system-error): recognise errors thrown
2980 by lgh-error (fill-message etc.)
2981 (fill-message): check first whether args is null.
2982 (fill-message): bug fix and check that args is a list.
2983
2984 Thu Sep 5 11:33:41 1996 Jim Blandy <jimb@floss.cyclic.com>
2985
2986 * boot-9.scm: %load-path is initialized in C code now.
2987 (implementation-vicinity, parse-path): Deleted, along with code to
2988 initialize %load-path.
2989
2990 * boot-9.scm (in-vicinity): If the vicinity doesn't end with a
2991 "/", use one to separate it from the file.
2992
2993 Thu Aug 29 23:05:11 1996 Thomas Morgan <tmorgan@gnu.ai.mit.edu>
2994
2995 * boot-9.scm (%load-path): Add the site directory.
2996 Add the directory named after the version number.
2997 Prepend the version number to the other directories in the path.
2998 Simplify by mapping the common prefix onto each item.
2999 * Makefile.in (datadir, pkgdatadir, pkgverdatadir, subpkgdatadir,
3000 sitedatadir): New definitions.
3001 (libparent, libdir, install_path): Replaced by above.
3002 (install): Create the above directories.
3003 Put the source files into subpkgdatadir.
3004 (uninstall): Remove the above directories.
3005
3006 Thu Aug 29 21:48:47 1996 Jim Blandy <jimb@floss.cyclic.com>
3007
3008 Don't use the PLUGIN system to gather information for the
3009 Makefile's distribution and installation targets; just put it all
3010 in the Makefile directly.
3011 * PLUGIN/this.configure (scm_files, aux_files): Remove sections
3012 for these.
3013 * configure.in: Remove code that gets and substitutes scm_files and
3014 aux_files.
3015 * Makefile.in (scm_files, aux_files): Write out the list of files
3016 here, where people expect to find them.
3017
3018 Fri Aug 23 06:44:36 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
3019
3020 * boot-9.scm: Preliminary solution: optionally load the debug
3021 module. Changed "gls" to "guile1.0b3".
3022
3023 * debug.scm: New file: debug extensions.
3024
3025 Wed Aug 21 13:06:56 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
3026
3027 * boot-9.scm (print-vector): Renamed weak-hash-table? -->
3028 weak-key-hash-table?. (Again!)
3029
3030 Tue Aug 20 07:31:39 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
3031
3032 * boot-9.scm (print-vector, macro-table, xformer-table):
3033 Renamed weak-hash-table --> weak-key-hash-table.
3034
3035 * poe.scm (funcq-memo): Renamed weak-hash-table -->
3036 weak-key-hash-table.
3037
3038 Sat Aug 3 06:16:35 1996 Gary Houston <ghouston@actrix.gen.nz>
3039
3040 * boot-9.scm (*null-device*): global constant from goonix.
3041 (move->fdes): adjusted for boolean primitive-move->fdes. return
3042 the modified port, always set revealed count to 1 (SCSH compatible).
3043 (release-port-handle port): from goonix (SCSH compatible).
3044 (%open-file): removed.
3045 (open-input-file, open-output-file, file-exists?, file-is-directory?):
3046 modified for open-file change (does not return #f).
3047
3048 Thu Aug 1 02:52:42 1996 Jim Blandy <jimb@totoro.cyclic.com>
3049
3050 * Makefile.in (dist-dir): New target for new dist system.
3051 (manifest): Deleted.
3052 * PLUGIN/this.configure (aux_files): Removed PLUGIN; it's a
3053 directory, and needs special treatment in the dist-dir target.
3054
3055 Thu Aug 1 09:00:21 1996 Gary Houston <ghouston@actrix.gen.nz>
3056
3057 * boot-9.scm: remove the wrappers for '%' system primitives,
3058 now that they throw errors directly.
3059 remove make-simple-wrapper and similar functions.
3060 protect a call to getenv which may now throw an exception.
3061
3062 Wed Jul 31 23:44:42 1996 Gary Houston <ghouston@actrix.gen.nz>
3063
3064 * boot-9.scm (false-if-exception): new macro.
3065
3066 Fri Apr 19 13:53:08 1996 Tom Lord <lord@beehive>
3067
3068 * The more things change...
3069
3070