UI frontend work: eval support.
[bpt/guile.git] / ice-9 / ChangeLog
1 2003-10-06 Neil Jerram <neil@ossau.uklinux.net>
2
3 * debugger/ui-client.scm (handle-instruction): Add evaluation
4 support.
5 (ui-eval): New.
6
7 2003-10-04 Neil Jerram <neil@ossau.uklinux.net>
8
9 * debugger/ui-client.scm (ui-disable-async-thread,
10 ui-continue-async-thread, start-async-ui-thread): New.
11 (ui-command-loop): Call ui-disable-async-thread and
12 ui-continue-async-thread.
13 (handle-instruction): Read terminating newline char so it doesn't
14 cause following select to pop immediately.
15
16 2003-09-25 Neil Jerram <neil@ossau.uklinux.net>
17
18 * debugger/ui-client.scm, debugger/ui-server.scm: New (work in
19 progress on new debugging front end).
20
21 2003-09-24 Neil Jerram <neil@ossau.uklinux.net>
22
23 * debugger.scm (default-default-lazy-handler, debug-on-error):
24 New.
25
26 * debugger/behaviour.scm (debug-if-flag-set): Display debug entry
27 messages through (debugger-output-port).
28 (after-exit-frame-hook): Trace through (debugger-output-port).
29 (trace-here): Trace through (debugger-output-port).
30
31 * debugger/commands.scm (evaluate): If supplied expression is a
32 string, read from it before evaluating.
33 (evaluate): Change output format to "EXPR => VALUE".
34
35 2003-09-19 Kevin Ryde <user42@zip.com.au>
36
37 * popen.scm (open-process): Correction to previous fdes closing
38 change, need to watch out for stdin==stderr or stdout==stderr.
39
40 2003-09-15 Marius Vollmer <mvo@zagadka.de>
41
42 * format.scm (format): Rewritten as a big letrec to make it
43 reentrant. No mutex is necessary. Thanks to Clinton Ebadi!
44
45 2003-09-13 Kevin Ryde <user42@zip.com.au>
46
47 * boot-9.scm (file-exists?): Use stat rather than access?, so as to
48 follow the effective UID/GID not the real ID. file-exists? is
49 normally used as a prelude to opening or some other operation, and
50 it's the effective ID which will apply there. Emacs file-exists-p
51 uses stat, presumably for the the same reason.
52
53 2003-09-12 Marius Vollmer <mvo@zagadka.de>
54
55 * boot-9.scm (make-autoload-interface): Use a proper hashtable as
56 the obarray, not an empty vector.
57 (make-module): Always construct a hashtable for the obarray, even
58 for empty ones.
59
60 * format.scm (format:error): Use 'format:format' instead of
61 'format' since the latter will lock the mutex again that we have
62 already locked.
63 (format:format-work): Flag multiple '#' as an error.
64
65 2003-08-17 Kevin Ryde <user42@zip.com.au>
66
67 * boot-9.scm (while): Use a new key dynamically for each loop, so
68 break and continue associate to their loop even when recursing.
69
70 2003-08-14 Kevin Ryde <user42@zip.com.au>
71
72 * boot-9.scm (while): Rewrite, continue as proper escape, break
73 without return value, break and continue new for each while form,
74 don't depend on bindings in expansion environment.
75
76 * popen.scm (open-process): Close input-fdes, output-fdes and
77 error-fdes after duping them to 0, 1 and 2.
78
79 2003-06-19 Kevin Ryde <user42@zip.com.au>
80
81 * threads.scm (parallel): For no forms, use `(values)' not `(begin)'.
82
83 2003-05-27 Dirk Herrmann <D.Herrmann@tu-bs.de>
84
85 * boot-9.scm (make-autoload-interface): Added missing quote around
86 vector constant.
87
88 2003-05-20 Marius Vollmer <marius.vollmer@uni-dortmund.de>
89
90 * deprecated.scm (list*): Added.
91
92 2003-05-10 Kevin Ryde <user42@zip.com.au>
93
94 * documentation.scm (file-commentary, find-documentation-in-file): Use
95 call-with-input-file, to close ports when done.
96
97 2003-05-03 Marius Vollmer <mvo@zagadka.de>
98
99 * gap-buffer.scm (point++n!, point+-n!): Use substring-move!
100 instead of substring-move-left! or substring-move-right!. Thanks
101 to Kevin Ryde.
102
103 * deprecated.scm (substring-move-left!, substring-move-right!):
104 New.
105
106 * boot-9.scm (display-usage-report): Use keyword->symbol instead
107 of keyword-symbol, which doesn't exist. Thanks to Kevin Ryde.
108
109 * hcons.scm (hashq-cons-get-handle): Pass only the expected four
110 arguments to hashx-get-handle. Thanks to Kevin Ryde!
111
112 * lineio.scm (make-line-buffering-input-port) Pass 0 as second
113 argument to string-ref. Thanks to Kevin Ryde!
114
115 2003-04-25 Mikael Djurfeldt <mdj@kvast.blakulla.net>
116
117 * serialize.scm: New file.
118
119 2003-04-24 Mikael Djurfeldt <djurfeldt@nada.kth.se>
120
121 * threads.scm (n-for-each-par-map): New procedure.
122
123 2003-04-05 Marius Vollmer <mvo@zagadka.de>
124
125 * Changed license terms to the plain LGPL thru-out.
126
127 2003-03-26 Marius Vollmer <marius.vollmer@uni-dortmund.de>
128
129 * deprecated.scm: New file, to collect deprecated things.
130 * Makefile.am (ice9_sources): Added.
131
132 * boot-9.scm: Load "ice-9/deprecated.scm" when appropriate.
133 (try-load-module): Also try the old deprecated method, maybe.
134
135 2003-03-22 Marius Vollmer <mvo@zagadka.de>
136
137 * boot-9.scm (call/cc): Added.
138
139 2003-03-20 Mikael Djurfeldt <djurfeldt@nada.kth.se>
140
141 * list.scm: New file.
142
143 2003-03-19 Marius Vollmer <mvo@zagadka.de>
144
145 * format.scm (format:out-substr): Update the column counter
146 correctly. This fixes the behavior of ~T (tabbing) after ~F, for
147 instance. Thanks to Matthias Koeppe!
148
149 2003-03-13 Mikael Djurfeldt <djurfeldt@nada.kth.se>
150
151 * session.scm (apropos): Don't look in duplicates interface.
152
153 2003-03-12 Mikael Djurfeldt <djurfeldt@nada.kth.se>
154
155 * boot-9.scm (duplicate-handlers): Make sure the merge-generics
156 and merge-accessors handlers are available also before (oop goops)
157 has been loaded. This is so that people can put them as default
158 handlers without worrying about availability.
159
160 * slib.scm (logical:ipow-by-squaring): Removed.
161
162 * boot-9.scm (ipow-by-squaring): Removed.
163 (default-duplicate-binding-handler): Set default to
164 '(replace warn-override-core warn last)
165
166 * boot-9.scm (module-make-local-var!): Use module-add!.
167 (module-primitive-add!): New function.
168 (resolve-interface): Use
169 (call-with-deferred-observers, module-call-observers): New
170 functions.
171 (module-defer-observers, module-defer-observers-mute,
172 module-defer-observers-table): New variables.
173 (process-define-module, process-use-modules, export, re-export):
174 Use call-with-deferred-observers.
175 (module-duplicates-info, set-module-duplicates-info!): Removed.
176 (module-duplicates-handlers, module-duplicates-interface): New.
177 (module-type): Added duplicates-handlers and
178 duplicates-interface.
179
180 * syncase.scm (eval): Mark as replacement.
181
182 * boot-9.scm (defmacro-public): Use export-syntax instead of export.
183
184 * slib.scm (*features*): Set the core variable instead of defining
185 a local version.
186 (provide, provided?): Mark as replacements.
187
188 * boot-9.scm (beautify-user-module!): Don't install the duplicates
189 handler here.
190 (default-duplicate-binding-handler): Renamed from
191 default-module-duplicates-handler; Removed converter.
192 (process-duplicates): Lookup default duplicates handler dynamically.
193 (default-duplicate-binding-procedures): New parameter.
194
195 2003-03-12 Mikael Djurfeldt <mdj@kvast.blakulla.net>
196
197 * slib.scm (identity): Removed. (Provided by core.)
198
199 2003-03-11 Mikael Djurfeldt <djurfeldt@nada.kth.se>
200
201 * debugger/command-loop.scm: Prefix all commands imported from
202 (ice-9 debugger command-loop) with debugger:.
203
204 * boot-9.scm (process-duplicates): Use module-import-interface.
205 (module-symbol-interface): Removed.
206 (resolve-interface): Process #:hide; Name custom interfaces
207 appropriately.
208 (module-use!, module-use-interfaces!): Remove existing interfaces
209 on the use-list based on module name rather than interface
210 identity so that custom interfaces truly replaces their previous
211 version.
212
213 * boot-9.scm (module-override!, make-mutable-parameter,
214 lookup-duplicates-handlers, default-module-duplicates-handler):
215 New functions.
216 (process-duplicates): Don't call duplicates handlers for duplicate
217 bindings of the same variable.
218 (process-define-module): Process #:replace.
219 (compile-interface-spec, resolve-interface): Process #:prefix.
220
221 * format.scm (format): Marked as replacement.
222
223 * threads.scm (future, future-ref): Marked as replacements.
224
225 2003-03-07 Mikael Djurfeldt <djurfeldt@nada.kth.se>
226
227 These changes enables checking for duplicate imported bindings.
228
229 * boot-9.scm (process-define-module): Handle #:duplicates.
230 (module-use-interfaces! process-duplicates): New functions.
231 (duplicate-handlers): Dictionary of duplicate handlers.
232 (module-symbol-local-binding, module-symbol-binding): Bugfix.
233
234 2003-03-04 Mikael Djurfeldt <djurfeldt@nada.kth.se>
235
236 * session.scm (apropos): Use hash-for-each instead of
237 array-for-each.
238
239 2003-02-19 Mikael Djurfeldt <djurfeldt@nada.kth.se>
240
241 * boot-9.scm (make-module): Changed default size from 1021 to 31
242 (since the size now adapts).
243 (macro-table, xformer-table): Changed default size from 523 to 61.
244 (make-module): Don't call make-hash-table with zero size.
245
246 * Makefile.am (ice9_sources): Added weak-vector.scm.
247
248 * weak-vector.scm: New file.
249
250 * boot-9.scm (module-clear!): Use hash-clear!.
251 (module-for-each): Use hash-for-each.
252 (module-map): Use hash-map.
253
254 2003-02-11 Mikael Djurfeldt <djurfeldt@nada.kth.se>
255
256 * boot-9.scm (make-hash-table): Turned primitive.
257
258 2003-01-27 Mikael Djurfeldt <djurfeldt@nada.kth.se>
259
260 * syncase.scm (guile-macro): Strip syntactic information from
261 expression before trying to treat it as a Guile macro call.
262 (Thanks to Kevin Ryde.)
263
264 2003-01-24 Mikael Djurfeldt <djurfeldt@nada.kth.se>
265
266 * threads.scm (parallel, letpar): Rewritten.
267
268 2003-01-23 Mikael Djurfeldt <djurfeldt@nada.kth.se>
269
270 * threads.scm (par-mapper, n-par-map, n-par-for-each): Use
271 futures.
272
273 2003-01-20 Mikael Djurfeldt <djurfeldt@nada.kth.se>
274
275 * occam-channel.scm (alt): New syntax.
276
277 * psyntax.ss (self-evaluating?): Removed. Guile now provides this
278 operator as a primitive procedure.
279 (build-data): Quote vectors (psyntax.ss requires this).
280
281 2003-01-19 Mikael Djurfeldt <djurfeldt@nada.kth.se>
282
283 * psyntax.ss (self-evaluating?): Allow procedures implanted in
284 source. (Guile uses this internally.)
285
286 2003-01-16 Mikael Djurfeldt <djurfeldt@nada.kth.se>
287
288 * psyntax.ss (build-data): Don't quote self-evaluating expressions
289 in output. (We normally *would* like also these expressions to be
290 quoted, but until Guile's native macros and syncase cooperates
291 better, it is less destructive not to quote.)
292 (self-evaluating?): Removed null? (In Guile, the empty list is not
293 self-evaluating).
294 (sc-chi): Export chi as sc-chi.
295 (external-macro): New syntax type.
296
297 * psyntax.pp: Regenerated.
298
299 * compile-psyntax.scm: Set expansion-eval-closure.
300
301 * boot-9.scm (use-syntax): Return *unspecified*.
302
303 * syncase.scm: Set expansion-eval-closure to
304 the-syncase-eval-closure during booting so that variables are
305 created in the correct module.
306 (syncase): Set expansion-eval-closure.
307 (define-syntax define-syntax-public eval-when fluid-let-syntax
308 identifier-syntax let-syntax letrec-syntax syntax syntax-case
309 syntax-rules with-syntax include): Removed definitions (these are
310 created from within psyntax.pp).
311 Enable expansion of Guile macros during a syntax-case
312 transformation.
313
314 2003-01-10 Mikael Djurfeldt <djurfeldt@nada.kth.se>
315
316 * occam-channel.scm (make-channel): Renamed from channel.
317 (make-timer): New function.
318
319 * Makefile.am (ice9_sources): Added occam-channel.scm.
320
321 * occam-channel.scm: New file. Implements occam-like channels.
322
323 2002-12-28 Neil Jerram <neil@ossau.uklinux.net>
324
325 * boot-9.scm (module-defined-hook): New hook, run whenever a new
326 module is defined.
327 (process-define-module): Run this hook.
328
329 2002-12-18 Mikael Djurfeldt <mdj@kvast.blakulla.net>
330
331 * threads.scm: Removed bogus definition of future-ref.
332
333 2002-12-15 Mikael Djurfeldt <djurfeldt@nada.kth.se>
334
335 * threads.scm (par-map, par-for-each): Reimplemented using
336 joing-thread.
337 (parallel): Reimplemented using futures.
338 (n-par-map, n-for-each): New procedures.
339
340 2002-12-12 Marius Vollmer <mvo@zagadka.ping.de>
341
342 * optargs.scm (improper-list-copy): New.
343 (parse-arglist): Use it instead of list-copy.
344
345 2002-12-09 Mikael Djurfeldt <djurfeldt@nada.kth.se>
346
347 * threads.scm (letpar): New macro.
348
349 2002-12-08 Rob Browning <rlb@defaultvalue.org>
350
351 * debugger/breakpoints/Makefile.am (subpkgdatadir): VERSION ->
352 GUILE_EFFECTIVE_VERSION.
353
354 * debugger/Makefile.am (subpkgdatadir): VERSION ->
355 GUILE_EFFECTIVE_VERSION.
356
357 * Makefile.am (subpkgdatadir): VERSION -> GUILE_EFFECTIVE_VERSION.
358
359 2002-12-04 Mikael Djurfeldt <mdj@linnaeus>
360
361 * threads.scm (parallel): New macro.
362 (par-map, par-for-each): New procedures.
363
364 * documentation.scm (object-documentation): Added support for
365 defmacros.
366
367 2002-11-24 Dirk Herrmann <D.Herrmann@tu-bs.de>
368
369 * boot-9.scm (re-export-syntax): Re-introduced after accidentally
370 removing it in my patch from 2002-11-16.
371
372 2002-11-24 Dirk Herrmann <D.Herrmann@tu-bs.de>
373
374 Thanks to Mikael Djurfeldt for a bugreport which led to the
375 following changes:
376
377 * slib.scm (%system-define): Removed.
378
379 (define): Changed to use define-private instead of
380 %system-define.
381
382 * boot-9.scm (define-private): Undid my changes from 2002-11-16
383 until Guile supports hygienic macros.
384
385 2002-11-17 Neil Jerram <neil@ossau.uklinux.net>
386
387 * emacs.scm (emacs-load): Locally define `read-and-eval!', as it
388 has been removed from the core.
389
390 2002-11-16 Dirk Herrmann <D.Herrmann@tu-bs.de>
391
392 * syncase.scm (define-syntax, eval-when, fluid-let-syntax,
393 identifier-syntax, let-syntax, letrec-syntax, syntax, syntax-case,
394 syntax-rules, with-syntax, include): Changed definitions to form
395 'real' macro definitions.
396
397 2002-11-16 Dirk Herrmann <D.Herrmann@tu-bs.de>
398
399 * boot-9.scm (define-private, export-syntax, export-syntax):
400 Fixed my previous fix (blush).
401
402 2002-11-16 Dirk Herrmann <D.Herrmann@tu-bs.de>
403
404 * boot-9.scm (define-private, export-syntax, export-syntax):
405 Changed definitions to form 'real' macro definitions.
406
407 2002-11-07 Marius Vollmer <marius.vollmer@uni-dortmund.de>
408
409 * format.scm (format): Use 'monitor' properly. Not the definition
410 needs to be restricted, the actual function needs to be.
411
412 2002-11-05 Neil Jerram <neil@ossau.uklinux.net>
413
414 * boot-9.scm (define-option-interface): Fix to "simplification"
415 change below.
416
417 * debugger/breakpoints/source.scm: Enable source property
418 recording when module is loaded.
419 (##): Cope with ports whose `filename' is not a string.
420
421 2002-11-04 Neil Jerram <neil@ossau.uklinux.net>
422
423 * boot-9.scm (define-option-interface): Simplify code-generation
424 code.
425
426 * debugger/command-loop.scm (read-and-dispatch-command): Import
427 set-readline-prompt dynamically if we need to. (Previous
428 arrangement didn't work if this module was loaded before (ice-9
429 readline).)
430
431 2002-11-03 Marius Vollmer <mvo@zagadka.ping.de>
432
433 * format.scm (format): Wrap a monitor around format:format since
434 it is not thread-safe.
435
436 2002-10-27 Marius Vollmer <mvo@zagadka.ping.de>
437
438 * threads.scm (%thread-handler): Explicitely return '#f'. This
439 value will be returned by join-thread.
440
441 2002-10-26 Neil Jerram <neil@ossau.uklinux.net>
442
443 Merging debugger enhancements previously in separate
444 `guile-debugger' package ...
445
446 * debugger.scm: Factored out into the following constituent parts
447 - see comment in file for more details.
448 (*not-yet-introduced*): New (avoids repeatedly introducing the
449 debugger when entering it from breakpoints).
450 (debug-stack): New.
451 (debug): Rewrite to use more general `debug-stack'.
452
453 * debugger/commands.scm, debugger/command-loop.scm,
454 debugger/state.scm, debugger/utils.scm: New files containing bits
455 of old (ice-9 debugger), plus some rewriting and enhancements for
456 breakpoint support ...
457
458 * debugger/state.scm (state-rtd): Add flags field.
459 (make-state): Extend to optionally take flags.
460 (state-flags): New, accessor for flags field.
461 (set-state-index!, set-stack-index!): New.
462 (write-state-short): Rewritten to print out the current source
463 location in a way that is more easily trackable by Emacs.
464
465 * debugger/commands.scm (assert-continuable, continue, finish,
466 trace-finish, step, next): New debugger commands for continuing
467 execution from a breakpoint.
468
469 * debugger/behaviour.scm, debugger/breakpoints.scm,
470 debugger/breakpoints/procedural.scm,
471 debugger/breakpoints/range.scm, debugger/breakpoints/source.scm,
472 debugger/trap-hooks.scm, debugger/trc.scm: New files - breakpoint
473 support.
474
475 * Makefile.am (SUBDIRS): Add debugger subdirectory.
476
477 * debugger/Makefile.am, debugger/breakpoints/Makefile.am: New.
478
479 2002-10-21 Marius Vollmer <mvo@zagadka.ping.de>
480
481 * threads.scm (%thread-handler): Do not call unmask-signals, that
482 should be unnecessary now.
483
484 2002-10-20 Mikael Djurfeldt <mdj@linnaeus>
485
486 * boot-9.scm (top-repl): Look for use-emacs-interface in
487 guile-user-module (should it be there?) instead of
488 the-root-module.
489
490 2002-10-10 Marius Vollmer <mvo@zagadka.ping.de>
491
492 * boot-9.scm (top-repl): Use 2 as the limit when saving the stack.
493 (error-catching-loop): use call-with-blocked-asyncs and
494 call-with-unblocked-asyncs instead of mask-signals and
495 unmask-signals.
496
497 2002-10-09 Neil Jerram <neil@ossau.uklinux.net>
498
499 * buffered-input.scm (make-buffered-input-port): Build an
500 input-waiting thunk for just extended version of make-soft-port.
501
502 2002-10-04 Rob Browning <rlb@defaultvalue.org>
503
504 * boot-9.scm (expt): switch if sense and use negative? rather than
505 >= 0.
506
507 2002-10-04 Marius Vollmer <mvo@zagadka.ping.de>
508
509 * boot-9.scm (top-repl): Use "1" instead of "%deliver-signals" to
510 limit the signal stack.
511
512 2002-09-15 Marius Vollmer <mvo@zagadka.ping.de>
513
514 * boot-9.scm (feature?): Added deprecation message.
515
516 2002-09-14 Rob Browning <rlb@defaultvalue.org>
517
518 * boot-9.scm (sqrt): minor indentation fix.
519
520 2002-09-05 Marius Vollmer <mvo@zagadka.ping.de>
521
522 * syncase.scm: Set the module transformer of the-syncase-module so
523 that we can use define-syntax.
524 (define-syntax-public): New and exported.
525
526 2002-09-04 Marius Vollmer <mvo@zagadka.ping.de>
527
528 * syncase.scm (expansion-eval-closure, env->eval-closure): New.
529 (sc-macro): Set the expansion-eval-closure expanding the form.
530 (putprop, getprop): Use the expansion-eval-closure to find
531 variables instead of the current module.
532
533 2002-07-08 Marius Vollmer <mvo@zagadka.ping.de>
534
535 * slib.scm (make-exchanger): Added. Thanks to Clinton Ebadi!
536
537 2002-07-07 Dirk Herrmann <D.Herrmann@tu-bs.de>
538
539 * boot-9.scm (define-option-interface): Replaced "macro" by
540 mmacro.
541
542 2002-06-01 Gary Houston <ghouston@arglist.com>
543
544 * boot-9.scm (file-set-position): Make third argument optional,
545 for SCM compatibility.
546 (file-position): simplify definition.
547
548 2002-06-01 Marius Vollmer <mvo@zagadka.ping.de>
549
550 * boot-9.scm (file-set-position): Use seek instead of fseek.
551
552 2002-05-09 Marius Vollmer <mvo@zagadka.ping.de>
553
554 * format.scm (format:out-inf-nan): New.
555 (format:out-fixed, format:out-expon, format:out-general): Use it
556 to print infs and nans.
557
558 * boot-9.scm (unsetenv): New, for completeness.
559
560 2002-05-08 Marius Vollmer <mvo@zagadka.ping.de>
561
562 * format.scm (format:fn-max): Increase to 400 so ~f and ~g can
563 print long real numbers with large positive and negative
564 exponents.
565
566 2002-05-06 Marius Vollmer <mvo@zagadka.ping.de>
567
568 * syncase.scm: Use (ice-9 threads) so that with-mutex is defined.
569
570 2002-04-30 Thien-Thi Nguyen <ttn@giblet.glug.org>
571
572 * gap-buffer.scm: New file.
573
574 * Makefile.am (ice9_sources): Add gap-buffer.scm.
575
576 2002-03-12 Rob Browning <rlb@defaultvalue.org>
577
578 * syncase.scm: fix bad let.
579 (gensym): fix failure on non-threaded
580
581 2002-03-05 Thien-Thi Nguyen <ttn@giblet.glug.org>
582
583 * ftw.scm: New file.
584
585 * Makefile.am (ice9_sources): Add ftw.scm.
586
587 2002-02-26 Thien-Thi Nguyen <ttn@giblet.glug.org>
588
589 * Makefile.am: Update path to pre-inst-guile automake frag.
590
591 * boot-9.scm: Comment grammar fixes; nfc.
592 Thanks to Christopher Cramer.
593
594 2002-02-24 Rob Browning <rlb@defaultvalue.org>
595
596 * syncase.scm (gensym): redefine locally so we can control it's
597 properties. This is in preparation for changing the future public
598 gensym to produce unreadable symbols.
599
600 * psyntax.pp: updated to reflect new syncase.scm.
601
602 2002-02-07 Thien-Thi Nguyen <ttn@giblet.glug.org>
603
604 * regex.scm: Add commentary; nfc.
605
606 2002-02-05 Thien-Thi Nguyen <ttn@giblet.glug.org>
607
608 * Makefile.am: Include $(top_srcdir)/pre-inst-guile.am.
609
610 (psyntax.pp): Use $(preinstguile).
611
612 2002-01-14 Marius Vollmer <mvo@zagadka.ping.de>
613
614 * psyntax.ss (datum->syntax-object): Removed assertion in
615 datum->syntax-object that checked if the first argument, a
616 syntax-object, is an identifier. This was a unconvenient and
617 unnecessary restriction. Thanks to Dorai Sitaram!
618
619 2002-01-12 Marius Vollmer <mvo@zagadka.ping.de>
620
621 More options for pretty-print. Thanks to Matthias Köppe!
622
623 * pretty-print.scm (generic-write): New per-line-prefix argument.
624 (pretty-print): Check whether the new keyword argument style is
625 used and dispatch to pretty-print-with-keys accordingly.
626
627 2001-11-27 Marius Vollmer <mvo@zagadka.ping.de>
628
629 * format.scm (string-index, list-head): Removed, we already have
630 these in the core.
631
632 2001-11-06 Marius Vollmer <mvo@zagadka.ping.de>
633
634 * boot-9.scm (turn-on-debugging): New function, to be used by
635 scm_compile_shell_switches.
636
637 * debug.scm: Do not enable debugging and recording of source
638 positions.
639
640 2001-10-21 Mikael Djurfeldt <mdj@linnaeus>
641
642 * slib.scm (array-indexes): New procedure.
643 (*features*): Extend. (Probably some of these options should be
644 set elsewhere.) (Thanks to Aubrey Jaffer.)
645
646 * and-let-star-compat.scm, and-let-star.scm, calling.scm,
647 channel.scm, common-list.scm, debug.scm, debugger.scm,
648 expect.scm, hcons.scm, lineio.scm, ls.scm, mapping.scm,
649 null.scm, optargs.scm, poe.scm, popen.scm, pretty-print.scm,
650 q.scm, r5rs.scm, rdelim.scm, regex.scm, runq.scm, safe-r5rs.scm,
651 safe.scm, session.scm, slib.scm, streams.scm, string-fun.scm,
652 syncase.scm, threads.scm: Move module the system directives
653 `export', `export-syntax', `re-export' and `re-export-syntax'
654 into the `define-module' form. This is the recommended way of
655 exporting bindings.
656
657 2001-10-17 Mikael Djurfeldt <mdj@linnaeus>
658
659 * boot-9.scm (process-define-module): New options: :export-syntax,
660 :re-export-syntax
661
662 2001-10-14 Mikael Djurfeldt <mdj@linnaeus>
663
664 * arrays.scm (read:uniform-vector): Return *unspecified* instead
665 of raising an exception if hash extend character isn't followed by
666 the array list. (This prevents parsing of uniform vectors from
667 interfering with parsing of numbers.)
668
669 2001-10-08 Mikael Djurfeldt <mdj@linnaeus>
670
671 * emacs.scm (%%load-port, %%emacs-load, %%emacs-eval-request,
672 %%emacs-select-frame, %%emacs-frame-eval, %%emacs-symdoc,
673 %%apropos-internal): Use module-define! instead of
674 builtin-variable.
675
676 2001-09-24 Mikael Djurfeldt <mdj@linnaeus>
677
678 * boot-9.scm (process-define-module): Added :re-export.
679
680 2001-09-19 Thien-Thi Nguyen <ttn@glug.org>
681
682 * expect.scm: Commentary fix; nfc.
683
684 * boot-9.scm (process-use-modules): Fix typo.
685
686 2001-09-18 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
687
688 * Makefile.am (psyntax.pp): Reference compile-psyntax.scm in
689 $(srcdir) in order to support separate build trees.
690
691 2001-09-08 Thien-Thi Nguyen <ttn@revel.glug.org>
692
693 * optargs.scm (lambda*): Record the broken-down argument list in
694 the `arglist' procedure property.
695 * session.scm (arity): Use new `arglist' procedure property to
696 present a more detailed argument list.
697
698 Thanks to Matthias Köppe!
699
700 2001-09-07 Thien-Thi Nguyen <ttn@revel.glug.org>
701
702 * getopt-long.scm (process-options, getopt-long): Fix omission
703 bug: Handle multiple occurrances of an option. Thanks to Daniel
704 Skarda.
705
706 2001-08-31 Dirk Herrmann <D.Herrmann@tu-bs.de>
707
708 * boot-9.scm: Don't load module (ice-9 rdelim).
709
710 (feature?): Deprecated.
711
712 (id, -1+, return-it, string-character-length, flags,
713 eval-in-module, split-c-module-name,
714 (convert-c-registered-modules, registered-modules,
715 register-modules, warn-autoload-deprecation, init-dynamic-module,
716 dynamic-maybe-call, dynamic-maybe-link,
717 find-and-link-dynamic-module, try-using-libtool-name,
718 try-using-sharlib-name, link-dynamic-module, try-module-linked,
719 try-module-dynamic-link): Removed.
720
721 (module-make-local-var!, module-ensure-local-variable!,
722 module-define!): Eliminate call to `variable-set-name-hint!´.
723
724 (try-load-module, use-syntax, module-export!): Remove deprecated
725 functionality.
726
727 * format.scm: Remove deprecated definition of format that was
728 needed to trick export.
729
730 2001-08-31 Dirk Herrmann <D.Herrmann@tu-bs.de>
731
732 * optargs.scm: Remove #& reader extension.
733
734 2001-08-31 Dirk Herrmann <D.Herrmann@tu-bs.de>
735
736 * and-let-star-compat.scm: Deleted.
737
738 * Makefile.am: Remove references to and-let-star-compat.scm.
739
740 2001-08-30 Thien-Thi Nguyen <ttn@revel.glug.org>
741
742 * boot-9.scm (resolve-interface): When returning a custom
743 interface, also consult source module's entire binding set,
744 not just its exported bindings, before throwing error.
745
746 2001-08-25 Marius Vollmer <mvo@zagadka.ping.de>
747
748 * boot-9.scm (resolve-interface): Get variables from the public
749 interface of a module instead of from the module itselfs.
750
751 2001-08-25 Marius Vollmer <mvo@zagadka.ping.de>
752
753 * Makefile.am (AUTOMAKE_OPTIONS): Change "foreign" to "gnu".
754
755 2001-08-12 Thien-Thi Nguyen <ttn@revel.glug.org>
756
757 * getopt-long.scm: Rewrite.
758 Touch up docstrings.
759 Augment commentary.
760
761 2001-08-02 Neil Jerram <neil@ossau.uklinux.net>
762
763 * debugger.scm (run-last-command): Return current state if
764 last-command fluid is not yet set.
765
766 2001-08-02 Thien-Thi Nguyen <ttn@revel.glug.org>
767
768 * getopt-long.scm: Refill to fit in 80 columns.
769
770 (process-long-option): Fix bug: Keep track of `optional'
771 value-required info and use this to determine whether or not the
772 next element is to be taken as the option arg.
773
774 2001-07-31 Keisuke Nishida <knishida@nurs.or.jp>
775
776 * boot-9.scm (process-define-module): Fixed a bug that did not
777 handle :use-syntax correctly.
778
779 2001-07-24 Marius Vollmer <mvo@zagadka.ping.de>
780
781 * syncase.scm (psyncomp): Removed, it is now in
782 compile-psyntax.scm.
783
784 2001-07-23 Marius Vollmer <mvo@zagadka.ping.de>
785
786 * Makefile.am (psyntax.pp): Enable rule for psyntax.pp only in
787 maintainer mode. Use compile-psyntax.scm for actual compilation.
788 Make sure the uninstalled guile is used.
789 (EXTRA_DIST): Distribute compile-psyntax.scm
790 * compile-psyntax.scm: New file.
791
792 2001-07-18 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
793
794 * and-let-star.scm, debug.scm, debugger.scm, history.scm,
795 lineio.scm, null.scm, optargs.scm, r4rs.scm, r5rs.scm,
796 receive.scm, safe-r5rs.scm, streams.scm: Updated copyright notice.
797
798 2001-07-17 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
799
800 * r5rs.scm: Use `re-export' instead of `export' for re-exported
801 primitives. Thanks Neil!
802
803 2001-07-13 Marius Vollmer <mvo@zagadka.ping.de>
804
805 * safe-r5rs.scm: Use `re-export' instead of `export' for
806 re-exported core bindings. Do not re-export `numerator',
807 `denominator' and `rationalize' since Guile does not have them.
808 Continue to use `export' for `null-environment'.
809
810 * null.scm: Use `re-export' instead of `export' for re-exported
811 core bindings. Do not export `unquote' and `unquote-splicing'
812 since there aren't definitions for them.
813
814 * boot-9.scm (compile-interface-spec): Bug fix: the keyword
815 argument is "renamer" not "rename".
816
817 2001-07-09 Rob Browning <rlb@defaultvalue.org>
818
819 * boot-9.scm: Fixed the sense of the error message when read-eval?
820 is #f. Thanks to Matthias for catching this.
821
822 2001-07-06 Rob Browning <rlb@defaultvalue.org>
823
824 * boot-9.scm: added fix suggested by Matthias for #. read
825 extension -- now only works if read-eval? is not #f.
826
827 2001-06-30 Dirk Herrmann <D.Herrmann@tu-bs.de>
828
829 * arrays.scm: Don't install a read-hash-extension for 'b': #b
830 is already defined by R5RS. Further, there is already a working
831 read syntax for bitvectors, starting with #*.
832
833 2001-06-30 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
834
835 * Makefile.am (ice9_sources): Removed tags.scm.
836
837 * tags.scm: Removed file.
838
839 2001-06-29 Neil Jerram <neil@ossau.uklinux.net>
840
841 Changes to support tracing other than inside the repl-stack that
842 is set up by the REPL code in boot-9.scm.
843
844 * debug.scm (trace-entry, trace-exit): Conditionalize tracing on
845 whether the current stack id is in `traced-stack-ids'.
846 (traced-stack-ids, trace-all-stacks?, trace-stack, untrace-stack):
847 New.
848
849 2001-06-27 Marius Vollmer <mvo@zagadka.ping.de>
850
851 * common-list.scm (member-if): Put in docstring for member-if, it
852 was a cut-n-paste error previously.
853
854 2001-06-26 Neil Jerram <neil@ossau.uklinux.net>
855
856 * debug.scm (trace): Set evaluator trap options to handle tracing.
857 Don't reset trace-level to 0.
858
859 * boot-9.scm (lazy-handler-dispatch): Remove enter-frame-handler,
860 apply-frame-handler and exit-frame-handler. (They're replaced by
861 evaluator trap options.)
862
863 2001-06-25 Michael Livshin <mlivshin@bigfoot.com>
864
865 * streams.scm (stream-for-each-many): typo fix.
866
867 2001-06-25 Marius Vollmer <mvo@zagadka.ping.de>
868
869 * boot-9.scm (re-export-syntax): New.
870
871 2001-06-16 Marius Vollmer <mvo@zagadka.ping.de>
872
873 * boot-9.scm (system-error-errno): New.
874
875 2001-06-14 Marius Vollmer <mvo@zagadka.ping.de>
876
877 * common-list.scm (remove-if, remove-if-not): Fix typo: use
878 `pred', not `pred?', in the body.
879
880 2001-06-13 Thien-Thi Nguyen <ttn@revel.glug.org>
881
882 * match.scm:
883 No longer use module `(ice-9 slib)'.
884 Use module `(ice-9 pretty-print)'.
885 No longer require `pretty-print'.
886
887 (slib:error): Delete.
888 (match:error, match:syntax-err): Rewrite.
889
890 Thanks to Dale P. Smith.
891
892 * README: New file.
893
894 * common-list.scm:
895 Clean up some docstrings; nfc.
896 Add Commentary.
897 Update copyright.
898
899 2001-06-11 Marius Vollmer <mvo@zagadka.ping.de>
900
901 * boot-9.scm: Use `begin-deprecated' instead of testing
902 `include-deprecated-features' when conditionally using the (ice-9
903 rdelim) module. See below.
904
905 2001-06-10 Gary Houston <ghouston@arglist.com>
906
907 * boot-9.scm: use the (ice-9 rdelim) module if
908 include-deprecated-features is true.
909
910 2001-06-09 Marius Vollmer <mvo@zagadka.ping.de>
911
912 * pretty-print.scm (generic-write): Use `object->string' to print
913 unknown objects.
914
915 * optargs.scm (lambda*): Make sure that BODY is always put into a
916 real body context so that it can contain internal definitions.
917 Thanks to Matthias Köppe!
918
919 * format.scm: Use (ice-9 and-let-star).
920 (format:out): Initialize format:output-col with current column of
921 `port', if it has one. Else leave it alone. Thanks to Matthias
922 Köppe!
923
924 2001-06-05 Marius Vollmer <mvo@zagadka.ping.de>
925
926 * boot-9.scm (module-ensure-local-variable!): Renamed from
927 `module-ensure-variable!'. Make sure that there really is a local
928 variable, not just a visible one.
929 (module-ensure-variable!): See above.
930 (module-export!): Behave like always when deprecated features are
931 enabled, but issue a warning when re-exporting a variable. When
932 deprecated features are disabled, only export local variables,
933 creating them uninitialized when they don't yet exist.
934 (module-re-export!): New. Use this for re-exporting imported
935 variables.
936 (re-export): New, to go with `module-re-export!'.
937
938 * format.scm: Added kluge at top that keeps `export' from
939 re-exporting the `format' variable of the `(guile)' module.
940
941 2001-06-04 Marius Vollmer <mvo@zagadka.ping.de>
942
943 * boot-9.scm (named-module-use!, top-repl): Use resolve-interface
944 instead of resolve-module to get at the used module.
945
946 2001-06-04 Gary Houston <ghouston@arglist.com>
947
948 * rw.scm: export write-string/partial.
949
950 2001-06-04 Marius Vollmer <mvo@zagadka.ping.de>
951
952 Added exception notice to all files.
953
954 * boot-9.scm (module-export!): Revert 2001-06-02 change. It
955 caused more problems than it solved by accidentally re-exporting
956 importing bindings once in a while.
957
958 2001-06-03 Marius Vollmer <mvo@zagadka.ping.de>
959
960 * boot-9.scm (try-load-module): Bracket calls to try-module-linked
961 and try-module-dynamic-link with `begin-deprecated'.
962 (split-c-module-name, convert-c-registered-modules,
963 registered-modules, register-modules, warn-autoload-deprecation,
964 init-dynamic-module, dynamic-maybe-call, dynamic-maybe-link,
965 find-and-link-dynamic-module, try-using-libtool-name,
966 try-using-sharlib-name, link-dynamic-module, try-module-linked,
967 try-module-dynamic-link): Deprecated. Activate deprecation
968 message.
969 (define-public): Define binding before exporting it. This is to
970 avoid accidentally re-exporting a imported binding.
971
972 2001-06-02 Marius Vollmer <mvo@zagadka.ping.de>
973
974 * Makefile.am (psyntax.pp): Make it dependent on psyntax.ss and
975 fix command so that it works.
976
977 * session.scm (apropos-fold, submodules, apropos): Be careful not
978 to access unbound variables.
979
980 * boot-9.scm (module-ensure-variable!): New.
981 (module-export!): Use it to ensure that there is a variable to
982 export. Previously, we would always create a new variable, copy
983 the value over, and export the new variable. This confused
984 syncase since it keys important properties on variables.
985
986 2001-06-01 Marius Vollmer <mvo@zagadka.ping.de>
987
988 * boot-9.scm (top-repl): Revert part of the 2001-05-19 change.
989 When defining the guile-user module, do not use any modules. Add
990 them to guile-user when `top-repl' is called.
991 (resolve-interface): Expect keyword arguments instead of a `spec'.
992 (compile-interface-spec, compile-define-module-args): New.
993 (define-module): Use compile-define-module-args to construct
994 argument for process-define-module.
995 (use-modules, use-syntax): Use compile-interface-spec to construct
996 arguments for process-use-modules.
997 (process-define-module): Expect keywords in argument list.
998
999 2001-05-25 Marius Vollmer <mvo@zagadka.ping.de>
1000
1001 * boot-9.scm (cond-expand): Define using
1002 `procedure->memoizing-macro' to get at the lexical environment.
1003 Use `env-module' instead of `current-module' to get the right
1004 module.
1005
1006 * Makefile.am (ice9_sources): Added "pretty-print.scm".
1007 * pretty-print.scm: New file, copied from SLIB.
1008 (generic-write): Return the `unspecified' value.
1009
1010 * format.scm: Autoload `pretty-print'.
1011
1012 2001-05-23 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1013
1014 * boot-9.scm (%cond-expand-table): New hash table mapping modules
1015 to feature lists.
1016 (cond-expand): Use feature information associated with modules.
1017
1018 2001-05-21 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1019
1020 * boot-9.scm (use-srfis): Do not extend the srfi-0 feature list.
1021 (cond-expand-provide): New procedure.
1022
1023 2001-05-22 Marius Vollmer <mvo@zagadka.ping.de>
1024
1025 * boot-9.scm (define-module): Return the new module.
1026 (process-define-module): Use `spec' instead of `module-name' when
1027 getting the syntax transformer. Thanks to Matthias Köppe!
1028
1029 2001-05-21 Marius Vollmer <mvo@zagadka.ping.de>
1030
1031 * boot-9.scm (use-syntax): Do not set scm:eval-transformer when
1032 deprecated features have been removed. Thanks to Dale P. Smith!
1033
1034 * optargs.scm (#\&): Use `issue-deprecation-warning' instead of
1035 `display'.
1036
1037 2001-05-19 Marius Vollmer <mvo@zagadka.ping.de>
1038
1039 * psyntax.ss (build-lexical-var): Use gensym instead of gentemp.
1040 * match.scm: Likewise.
1041 * expect.scm: Likewise.
1042 * psyntax.pp: Regenerated.
1043
1044 * rdelim.scm: Call `%init-rdelim-builtins'.
1045
1046 * rw.scm: Call `%init-rw-builtins'.
1047
1048 * boot-9.scm (process-define-module): Do not call
1049 set-current-module.
1050 (define-module): Do it here, in the expansion.
1051 (top-repl): Do not define '(guile-user)' module and conditionally
1052 load `(ice-9 threads)' and/or `(ice-9 regex)' here. Do it on
1053 top-level as the last thing in boot-9.scm instead.
1054 (%load-path): Use `list' instead of `cons' to create a single
1055 element list when adding "." to it.
1056 (process-define-module, process-use-modules, module-export!): Add
1057 dummy definitions prior to booting the mdule system.
1058
1059 2001-05-18 Thien-Thi Nguyen <ttn@revel.glug.org>
1060
1061 * boot-9.scm: (resolve-interface, use-srfis): Small
1062 cleanup; nfc.
1063 (process-define-module): Internal proc `unrecognized'
1064 now accepts arg; update callers.
1065 Reverse order of interfaces added to module to be
1066 consistent with that specified in `define-module' form.
1067
1068 * session.scm: (help): Use `provided?' instead of `feature?'.
1069 Factor "TYPE not found for X" output into internal proc.
1070 Support `(quote SYMBOL)'; call `search-documentation-files'.
1071 (help-doc): If initial search fails, try using
1072 `search-documentation-files'.
1073 (apropos-fold-accessible, apropos-fold-all): Use `identity'
1074 instead of `(lambda (x) x)'. "An identity edit", ha ha.
1075 (help-usage): Mention support for "(help 'NAME)".
1076
1077 * documentation.scm: Fix documentation for Guile Documentation
1078 Format Version 2: Mention required terminating newlines.
1079
1080 (find-documentation): Delete.
1081 (search-documentation-files): New proc, exported.
1082 (object-documentation): Use `search-documentation-files'.
1083
1084 2001-05-15 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1085
1086 * boot-9.scm (cond-expand-features): Made the feature list public,
1087 so it can be manipulated by `use-srfis'.
1088 (use-srfis): New procedure.
1089
1090 2001-05-15 Thien-Thi Nguyen <ttn@revel.glug.org>
1091
1092 * boot-9.scm (resolve-interface): Signal error now also if
1093 used module's public interface is not available.
1094 No longer call `beautify-user-module!'.
1095 Signal error now also if selected binding not found.
1096
1097 2001-05-10 Marius Vollmer <mvo@zagadka.ping.de>
1098
1099 Merge from mvo-vcell-clenaup-1-branch.
1100
1101 * session.scm (apropos): Do not use `builtin-bindings', always use
1102 the module obarray.
1103 (apropos-fold): Likewise.
1104
1105 * optargs.scm (bound?): Removed. We should not play games with
1106 the magical undefined value.
1107 (let-o-k-template): Use `#f' instead of the undefined value as
1108 the default default for bindings.
1109
1110 * boot-9.scm (module-make-local-var!): Do not pass name hint to
1111 make-undefined-variable, use `variable-set-name-hint!' instead.
1112 (root-module-closure): Removed.
1113 (make-root-module): Set the obarray of the module to the
1114 `pre-modules-obarray'. Do not use a lazy binder.
1115 (scm-module-closure): Removed.
1116 (make-root-module): Set the obarray of the module to the
1117 `pre-modules-obarray'. Do not use a lazy binder. Set the
1118 eval-closure to a `standard-interface-eval-closure'.
1119 (module-define!): Do not pass name hint to make-variable, use
1120 `variable-set-name-hint!' instead.
1121 (make-modules-in, beautify-user-module, resolve-module): Moved
1122 towards the beginning of boot-9.scm, across the call to
1123 set-current-module that boots the module system. These
1124 definitions need to be visible at the time of the first
1125 `set-current-module' call.
1126 (try-module-autoload): Define a `#f' before the call to
1127 set-current-module. It is redefined later.
1128
1129 * debug.scm: Use `module-set!' instead of `variable-set!' to set
1130 insert `debug-options' into the-root-module.
1131 * format.scm: Likewise, for `format'.
1132
1133 2001-05-15 Marius Vollmer <mvo@zagadka.ping.de>
1134
1135 * boot-9.scm (error-catching-repl): Call the E
1136 ("eval'er") procedure via call-with-values and call the P
1137 ("printer") for each produced value. Thanks to Matthias Köppe!
1138
1139 2001-05-14 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1140
1141 * boot-9.scm (cond-expand): Reduce feature list to built-in
1142 features.
1143
1144 2001-05-14 Dirk Herrmann <D.Herrmann@tu-bs.de>
1145
1146 * boot-9.scm (-1+, return-it, string-character-length, flags):
1147 Deprecated.
1148
1149 2001-05-11 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1150
1151 * boot-9.scm: Added `cond-expand' (SRFI-0) for portable feature
1152 checking.
1153
1154 2001-05-10 Thien-Thi Nguyen <ttn@revel.glug.org>
1155
1156 * boot-9.scm (resolve-module): Abstraction maintenance: Use
1157 `module-public-interface'.
1158 (resolve-interface): Extend to handle selection and renaming in spec.
1159 Arg is now `spec' which can be a simple module name (list of symbols)
1160 or a interface spec.
1161 (symbol-prefix-proc): New proc.
1162 (%autoloader-developer-mode): Delete.
1163 (process-define-module): Use "define-module" in error messages
1164 instead of "defmodule". Factor error into internal proc.
1165 Rewrite `use-module' and `use-syntax' handlers.
1166 Replace some single-arm `if-not' constructs w/ `or'.
1167 (process-use-modules): Arg is now `module-interface-specs',
1168 which is passed through to `resolve-interface' as before; nfc.
1169 (named-module-use!, top-repl): Abstraction maintenance: Use
1170 `provided?'.
1171
1172 2001-05-06 Thien-Thi Nguyen <ttn@revel.glug.org>
1173
1174 * q.scm, runq.scm, getopt-long.scm: Update copyright.
1175 Surround commentary w/ standard markers; nfc.
1176
1177 * expect.scm: Update copyright.
1178 Fix commentary typo; nfc.
1179
1180 2001-05-05 Rob Browning <rlb@cs.utexas.edu>
1181
1182 * psyntax.ss: make sure emacs knows it's scheme code.
1183
1184 2001-05-05 Neil Jerram <neil@ossau.uklinux.net>
1185
1186 * boot-9.scm (use-syntax): Change error message to say
1187 `use-syntax' rather than `use-modules'.
1188
1189 2001-05-02 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1190
1191 * safe-r5rs.scm: Fix typo: make-rectangualr => make-rectangular.
1192
1193 2001-05-02 Marius Vollmer <mvo@zagadka.ping.de>
1194
1195 * boot-9.scm (begin-deprecated): New.
1196 (call-with-deprecation): Removed.
1197 (id): Use `issue-deprecation-warning' instead of
1198 `call-with-deprecation'. Wrap definition in `begin-deprecated'.
1199 (eval-in-module): Manifest deprecation via `begin-deprecation' and
1200 `issue-deprecation-warning'.
1201 (warn-autoload-deprecation): Deactivated.
1202
1203 2001-04-26 Marius Vollmer <mvo@zagadka.ping.de>
1204
1205 * boot-9.scm (the-module, set-current-module, current-module):
1206 Removed, they are now defined in libguile.
1207
1208 2001-04-29 Gary Houston <ghouston@arglist.com>
1209
1210 * rw.scm: new file, for module (ice-9 rw).
1211 * Makefile.am: add rw.scm.
1212
1213 2001-04-28 Thien-Thi Nguyen <ttn@revel.glug.org>
1214
1215 * boot-9.scm, optargs.scm:
1216 Surround commentary w/ standard markers; nfc.
1217
1218 * threads.scm, time.scm, channel.scm, expect.scm:
1219 Add commentary; nfc.
1220
1221 2001-04-27 Thien-Thi Nguyen <ttn@revel.glug.org>
1222
1223 * documentation.scm: Update copyright.
1224 Add commentary.
1225 Use `define-module' `:export' clause instead of `define-public'.
1226 Autoload (ice-9 regex) on `match:suffix'.
1227
1228 (default-in-line-re, default-after-line-re): New vars.
1229 (default-scrub): New proc.
1230 (file-commentary): New proc, exported.
1231 (object-documentation): Expand docstring; nfc.
1232
1233 * session.scm: Update copyright.
1234 Use (ice-9 rdelim).
1235
1236 (help): Consider a list of symbols that does not start with
1237 `quote' as a module name and call `module-commentary' on it.
1238 (module-filename, module-commentary): New procs.
1239 (id): Delete.
1240 (apropos): Use `identity' instead of deprecated `id'.
1241 (help-usage): Add blurb about "(help (my module))" support.
1242
1243 2001-04-27 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
1244
1245 * Makefile.am (ice9_sources): Remove srfi-8.scm.
1246
1247 2001-04-26 Rob Browning <rlb@cs.utexas.edu>
1248
1249 * srfi-8.scm: removed in favor of srfi/srfi-8.scm - (wasn't ever
1250 in a production release).
1251
1252 2001-04-25 Keisuke Nishida <kxn30@po.cwru.edu>
1253
1254 * channel.scm: New file.
1255 * Makefile.am (ice9_sources): Include channel.scm.
1256
1257 2001-04-19 Keisuke Nishida <kxn30@po.cwru.edu>
1258
1259 * receive.scm (receive): Use `define-macro'.
1260
1261 2001-04-15 Keisuke Nishida <kxn30@po.cwru.edu>
1262
1263 * boot-9.scm (load-compiled): New variable, initialized in the VM.
1264 (try-module-autoload): Try loading compiled modules if applicable.
1265
1266 2001-04-15 Keisuke Nishida <kxn30@po.cwru.edu>
1267
1268 * boot-9.scm (call-with-deprecation): New procedure.
1269 (identity): New procedure.
1270 (id): Deprecated.
1271
1272 2001-04-15 Keisuke Nishida <kxn30@po.cwru.edu>
1273
1274 * boot-9.scm (defmacro, define-macro, define-syntax-macro):
1275 Define only at the top level.
1276
1277 2001-04-06 Thien-Thi Nguyen <ttn@revel.glug.org>
1278
1279 * threads.scm: Update copyright.
1280
1281 Use `export' and `export-syntax' instead of
1282 `define-public' and `defmacro-public'.
1283
1284 (make-thread): Rename first arg to `proc'; nfc.
1285 (begin-thread, monitor): Rename second arg to `rest'; nfc.
1286 (with-mutex): Rename second arg to `body'; nfc.
1287
1288 2001-04-06 Neil Jerram <neil@ossau.uklinux.net>
1289
1290 * boot-9.scm (warn-autoload-deprecation): Close parenthesis in
1291 "You just tried to autoload ..." message.
1292
1293 2001-04-05 Keisuke Nishida <kxn30@po.cwru.edu>
1294
1295 * Makefile.am (ice9_sources): Add history.scm.
1296 * history.scm: Create the module (value-history) at the beginning.
1297
1298 2001-03-29 Marius Vollmer <mvo@zagadka.ping.de>
1299
1300 * boot-9.scm (init-dynamic-module): Fix typo in call to
1301 warn-autoload-deprecation. I feel silly.
1302
1303 2001-03-27 Marius Vollmer <mvo@zagadka.ping.de>
1304
1305 * r4rs.scm (call-with-values): New definition, defers to
1306 @call-with-values.
1307
1308 2001-03-26 Marius Vollmer <mvo@zagadka.ping.de>
1309
1310 * boot-9.scm (warn-autoload-deprecation): New function.
1311 (init-dynamic-module): Use it here to print warning. Only give
1312 warning when a module has actually been found.
1313
1314 2001-03-25 Marius Vollmer <mvo@zagadka.ping.de>
1315
1316 * boot-9.scm (init-dynamic-module): Issue warning about
1317 auto-loading of compiled code modules being deprecated.
1318
1319 * Makefile.am (ice9_sources): Added "time.scm".
1320
1321 2001-03-20 Keisuke Nishida <kxn30@po.cwru.edu>
1322
1323 * time.scm (time): Reimplemented as a procedure call.
1324 (Thanks to Marius Vollmer)
1325
1326 2001-03-20 Keisuke Nishida <kxn30@po.cwru.edu>
1327
1328 * safe-r5rs.scm (list): Export.
1329
1330 2001-03-17 Keisuke Nishida <kxn30@po.cwru.edu>
1331
1332 * boot-9.scm (before-eval-hook, after-eval-hook,
1333 before-print-hook, after-print-hook): New hooks.
1334 (scm-style-repl): Call these hooks.
1335
1336 * history.scm: New file.
1337
1338 2001-03-17 Keisuke Nishida <kxn30@po.cwru.edu>
1339
1340 * time.scm: New file.
1341
1342 2001-03-17 Dirk Herrmann <D.Herrmann@tu-bs.de>
1343
1344 * oldprint.scm: Removed.
1345
1346 2001-03-12 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
1347
1348 * arrays.scm (make-array): Added quote in front of ().
1349
1350 2001-03-12 Keisuke Nishida <kxn30@po.cwru.edu>
1351
1352 * common-list.scm (count-if): New procedure.
1353
1354 2001-03-10 Neil Jerram <neil@ossau.uklinux.net>
1355
1356 * buffered-input.scm (make-buffered-input-port): New, more general
1357 buffered input procedure. Does not assume that a newline
1358 character should be interpolated between chunks of input returned
1359 by the reader proc.
1360 (make-line-buffered-input-port): Redefine in terms of
1361 make-buffered-input-port.
1362
1363 2001-03-09 Keisuke Nishida <kxn30@po.cwru.edu>
1364
1365 * match.scm: Don't export defstruct. Use (unquote defstruct) instead.
1366
1367 2001-03-09 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
1368
1369 * Makefile.am (psyntax.pp): Added rule for producing psyntax.pp.
1370
1371 2001-03-09 Keisuke Nishida <kxn30@po.cwru.edu>
1372
1373 * match.scm: export defstruct.
1374
1375 2001-03-08 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
1376
1377 * psyntax.ss: Added FSF copyright notice. Added a notice of
1378 changes in order to comply with paragraph 2a of the GPL. (Thanks
1379 to Keith Wright.)
1380
1381 2001-03-07 Neil Jerram <neil@ossau.uklinux.net>
1382
1383 * buffered-input.scm (make-line-buffered-input-port): Don't set
1384 the continuation flag for leading whitespace. Thanks to Dirk
1385 Herrmann for the suggestion.
1386
1387 2001-03-05 Neil Jerram <neil@ossau.uklinux.net>
1388
1389 * optargs.scm (rest-arg->keyword-binding-list): Use "'()" instead
1390 of "()".
1391
1392 * buffered-input.scm: New file, with guts of line buffered input
1393 port implementation extracted from guile-readline/readline.scm.
1394
1395 2001-03-03 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
1396
1397 * stack-catch.scm: New file.
1398
1399 * Makefile.am (ice9_sources): Added stack-catch.scm.
1400
1401 2001-03-03 Marius Vollmer <mvo@zagadka.ping.de>
1402
1403 * boot-9.scm, rdelim.scm: Use "'()" instead of "()" in all places
1404 where the empty list is meant.
1405
1406 2001-02-26 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
1407
1408 * boot-9.scm (save-stack): Use `primitive-eval' for stack
1409 cutting. Makes backtraces work again! Also added a reference to
1410 save-stack from the place in the repl where the primitive-eval
1411 frame is invoked.
1412
1413 2001-02-25 Keisuke Nishida <kxn30@po.cwru.edu>
1414
1415 * match.scm: New file, including Andrew K. Wright's pattern matcher.
1416 * Makefile.am (ice9_sources): Added match.scm.
1417
1418 2001-02-16 Marius Vollmer <mvo@zagadka.ping.de>
1419
1420 * boot-9.scm (eval-when, eval-case): Renamed `eval-when' to
1421 `eval-case', everywhere.
1422
1423 2001-02-13 Marius Vollmer <mvo@zagadka.ping.de>
1424
1425 * boot-9.scm (define-public): Removed spurious call to
1426 `interaction-evironment'.
1427 (define-public, defmacro-public): Use `export' instead of explicit
1428 module magic.
1429 (eval-when): New macro.
1430 (define-module, use-modules, use-syntax, export): Use it to
1431 restrict the use of these forms to the top level.
1432 (define-public, defmacro-public): Only export binding when on
1433 top-level.
1434 (process-define-module): Call `set-current-module' with the
1435 defined module.
1436 (define-module): Simply call `process-define-module' without any
1437 fuss (but only on top-level).
1438 (named-module-use!): New function.
1439 (top-repl): Do not use `define-module'. Use equivalent low-level
1440 means instead.
1441
1442 2001-02-11 Marius Vollmer <mvo@zagadka.ping.de>
1443
1444 * boot-9.scm (scm-style-repl): Use `primitive-eval' instead of
1445 `eval'.
1446 (define-public): Do not use `eval'.
1447
1448 2001-02-08 Marius Vollmer <marius.vollmer@uni-dortmund.de>
1449
1450 * and-let-star-compat.scm: Display the warning to the
1451 `current-error-port'.
1452
1453 2001-02-04 Marius Vollmer <mvo@zagadka.ping.de>
1454
1455 Avoid the use of "*" in file names for the benefit of lesser
1456 operating systems.
1457
1458 * and-let-star.scm, and-let*.scm: Renamed `and-let*.scm' to
1459 `and-let-star.scm'. Updated module name as well.
1460 * and-let-star-compat.scm: New file, installed as `and-let*.scm'.
1461 * Makefile.am (ice9_sources): Replaced "and-let*.scm" with
1462 "and-let-star.scm".
1463 (install-data-local): Install "and-let-star-compat.scm" as
1464 "and-let*.scm", ignoring errors.
1465 (EXTRA_DIST): Distribute `and-let-star-compat.scm'.
1466
1467 2001-01-26 Dirk Herrmann <D.Herrmann@tu-bs.de>
1468
1469 This patch fixes a problem reported by Martin Grabmueller about
1470 the impossibility to access readline's run-time options.
1471
1472 * boot-9.scm (define-option-interface): New macro. Allows to
1473 conveniently define a group of option interface functions.
1474
1475 (readline-options readline-enable readline-disable,
1476 readline-set!): Moved to guile-readline/readline.scm.
1477
1478 2001-01-24 Gary Houston <ghouston@arglist.com>
1479
1480 * boot-9.scm: don't import (ice-9 rdelim) here. it's done
1481 in C for now.
1482 * rdelim.scm: export the C primitives too.
1483 * documentation.scm: use (ice-9 rdelim).
1484
1485 2001-01-21 Gary Houston <ghouston@arglist.com>
1486
1487 * rdelim.scm: new file implementing module (ice-9 rdelim).
1488 * ice-9.scm (scm-line-incrementors read-line! read-delimited!
1489 read-delimited read-line): moved to rdelim.scm.
1490 scm-line-incrementors is not exported.
1491 * boot-9.scm: import (ice-9 rdelim) for backwards compatibility,
1492 for now.
1493 * lineio.scm: use module (ice-9 rdelim).
1494 * Makefile.am (ice9_sources): add rdelim.scm.
1495
1496 2000-12-29 Dirk Herrmann <D.Herrmann@tu-bs.de>
1497
1498 * boot-9.scm (root-module-closure, scm-module-closure): Remove
1499 calls '(symbol-interned? #f s)'. Formerly, these calls were
1500 basically no-ops, guaranteed to return #t if 's' was a symbol.
1501 After the separation of symbols and bindings, a call to
1502 '(symbol-interned? #f s)' will only return #t if there really is a
1503 binding for 's' in the scm_symhash table. Thanks to Dale P. Smith
1504 for providing a test case that helped finding this bug.
1505
1506 2000-12-13 Dirk Herrmann <D.Herrmann@tu-bs.de>
1507
1508 * session.scm (apropos): Completed the last patch, which did only
1509 half the job. Thanks to Dale P. Smith.
1510
1511 2000-12-12 Dirk Herrmann <D.Herrmann@tu-bs.de>
1512
1513 * session.scm (apropos, apropos-fold): There are no weak bindings
1514 any more.
1515
1516 2000-12-12 Dirk Herrmann <D.Herrmann@tu-bs.de>
1517
1518 * boot-9.scm (top-repl): Lookup 'use-emacs-interface in
1519 the-root-module.
1520
1521 2000-12-07 Neil Jerram <neil@ossau.uklinux.net>
1522
1523 * emacs.scm (flush-whitespace): Fix spelling typo ("recieving").
1524
1525 2000-11-28 Dirk Herrmann <D.Herrmann@tu-bs.de>
1526
1527 * boot-9.scm (read-delimited), lineio.scm
1528 (make-line-buffering-input-port), regex.scm (match:prefix,
1529 match:suffix, match:substring, regexp-substitute/global), slib.scm
1530 (slib-parent-dir), string-fun.scm (split-after-char,
1531 split-before-char, split-discarding-char, split-after-char-last,
1532 split-before-char-last, split-discarding-char-last,
1533 split-before-predicate, split-after-predicate,
1534 split-discarding-predicate, separate-fields-discarding-char,
1535 separate-fields-after-char, separate-fields-before-char,
1536 string-prefix-predicate, sans-surrounding-whitespace,
1537 sans-trailing-whitespace, sans-leading-whitespace,
1538 sans-final-newline): Use substring instead of
1539 make-shared-substring.
1540
1541 2000-11-26 Gary Houston <ghouston@arglist.com>
1542
1543 * boot-9.scm: values?, get-values, values, call-with-values:
1544 removed. values and call-with-values are now primitives and
1545 the other two were only exported by accident. don't define
1546 *values-rtd* record type or handle multiple values in
1547 scm-style-repl.
1548
1549 2000-11-07 Gary Houston <ghouston@arglist.com>
1550
1551 * popen.scm (open-output-pipe): added docstrings for open-input-pipe
1552 and open-output-pipe.
1553
1554 2000-11-06 Gary Houston <ghouston@arglist.com>
1555
1556 * popen.scm (open-process): bug fix: don't use
1557 close-all-ports-except to close ports in the child process, since
1558 it causes port buffers to be flushed. they may be flushed again
1559 in the parent, causing duplicate output. use a more elaborate
1560 method for setting up the child descriptors (thanks to David
1561 Pirotte for the bug report).
1562 standard file descriptors 0, 1, 2 in the child process
1563 are now set up from current-input-port etc., where possible.
1564
1565 2000-10-10 Dirk Herrmann <D.Herrmann@tu-bs.de>
1566
1567 * syncase.scm (eval): string=? requires a string argument.
1568 Thanks to Dale P. Smith for the patch.
1569
1570 2000-10-15 Neil Jerram <neil@ossau.uklinux.net>
1571
1572 * optargs.scm: Fix typos in commentary for bound? and lambda*.
1573
1574 2000-10-10 Dirk Herrmann <D.Herrmann@tu-bs.de>
1575
1576 * session.scm (apropos, apropos-fold): regexp-exec does not
1577 accept symbol arguments any more. Thanks to Dale P. Smith for the
1578 patch.
1579
1580 2000-09-30 Gary Houston <ghouston@arglist.com>
1581
1582 * posix.scm (setgrent): pass #t, not #f. thanks to
1583 Jacques A. Vidrine.
1584
1585 2000-09-29 Neil Jerram <neil@ossau.uklinux.net>
1586
1587 * documentation.scm (find-documentation-in-file): Modified
1588 according to changed format of guile-procedures.txt caused by my
1589 snarfing/makeinfo changes in libguile.
1590
1591 * session.scm (help-doc): Improvements to (help) output: (i) a
1592 friendlier Emacs-style introduction line; (ii) where the help arg
1593 matches multiple documented entries, print an initial list of the
1594 entries for which documentation is found, before printing the
1595 actual documentation entries themselves.
1596
1597 2000-09-20 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1598
1599 * boot-9.scm: Removed comment. (Thanks to Brad Knotwell.)
1600
1601 2000-09-12 Dirk Herrmann <D.Herrmann@tu-bs.de>
1602
1603 * syncase.scm (putprop): Use the high-level property interface.
1604
1605 2000-09-12 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
1606
1607 * psyntax.ss (build-lexical-var): Use gentemp instead of gensym;
1608 Convert first argument to a string.
1609
1610 * calling.scm (excursion-function-syntax,
1611 getter-and-setter-syntax,
1612 delegating-getter-and-setter-syntax): Call gensym with string
1613 argument. (Thanks to Dale P. Smith.)
1614
1615 * oldprint.scm (print-table-add!): Ditto.
1616
1617 * boot-9.scm (gentemp): Moved to symbols.c.
1618
1619 2000-08-27 Marius Vollmer <mvo@zagadka.ping.de>
1620
1621 * boot-9.scm (make-object-property): New function.
1622
1623 2000-08-26 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
1624
1625 * boot-9.scm (make-record-type): Use `string-append' instead of
1626 `symbol-append'.
1627 (symbol-append): Map `symbol->string' on
1628 args.
1629 (obarray-symbol-append, obarray-gensym): Simply removed. I don't
1630 think I'll announce this in NEWS even. One of the functions never
1631 even worked... /mdj.
1632 (find-and-link-dynamic-module, keyword->symbol): Use
1633 `symbol->string'.
1634 (try-module-autoload, process-define-module): Rewrote using R5RS
1635 semantics.
1636
1637 2000-08-24 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1638
1639 * psyntax.ss (set!): Added generalized set! support to core syntax
1640 form set!.
1641
1642 2000-08-19 Marius Vollmer <mvo@zagadka.ping.de>
1643
1644 * optargs.scm (#\&): Changed #:allow-other-keys-value to
1645 #:allow-other-keys. Thanks to Bill Schottstaedt!
1646
1647 2000-08-17 Marius Vollmer <mvo@zagadka.ping.de>
1648
1649 * optargs.scm (#\&): Emit warning about `#&' being deprecated.
1650
1651 2000-08-16 Marius Vollmer <mvo@zagadka.ping.de>
1652
1653 * optargs.scm: Replaced `#&' reader syntax with keywords.
1654
1655 2000-08-14 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1656
1657 * format.scm (format:obj->str): Made tail-recursive. (Thanks to
1658 Matthias Köppe.)
1659
1660 2000-08-13 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
1661
1662 * psyntax.ss (top-level-eval-hook, local-eval-hook): Pass
1663 `(interaction-environment)' as second arg to `eval'. This is
1664 completely equivalent with the state before the change to eval of
1665 2000-08-11, but we should extend psyntax.ss to be module aware.
1666 (Thanks to Ian Bicking.)
1667
1668 * emacs.scm (emacs-symdoc): Parenthesis fix.
1669
1670 2000-08-11 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
1671
1672 * r5rs.scm (interaction-environment): Removed definition. (Is now
1673 provided by libguile/modules.c.)
1674
1675 * safe-r5rs.scm (null-environment): Bugfix: Should include
1676 syntactic bindings.
1677
1678 * boot-9.scm (record-constructor, record-accessor,
1679 record-modifier, scm-style-repl): Add second arg to eval.
1680 (read-hash-extend #\.): Ditto. (This is actually a bugfix!)
1681 (eval-in-module): Redefined to be eval and deprecated.
1682
1683 * syncase.scm (eval): Add second arg both in definition and use.
1684
1685 * slib.scm (slib:eval): Use eval instead of eval-in-module.
1686 (defmacro:eval): Eval in (interaction-environment).
1687
1688 * safe-r5rs.scm (eval): Removed definition.
1689
1690 * emacs.scm (emacs-eval-request):
1691 (emacs-symdoc): (This procedure needs updating!)
1692
1693 2000-08-10 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
1694
1695 * boot-9.scm: Added note about dependency in modules.h to
1696 definition of module-type.
1697
1698 * Makefile.am (ice9_sources): Added receive.scm, srfi-8.scm.
1699
1700 * receive.scm, srfi-8.scm: New files.
1701
1702 * boot-9.scm (scm-style-repl): Print multiple values on successive
1703 lines.
1704 (process-define-module): Bugfix: Make sure that exports are done
1705 *after* all used interfaces has been added.
1706
1707 2000-07-24 Marius Vollmer <mvo@zagadka.ping.de>
1708
1709 * common-list.scm (uniq): Made tail-recursive. Thanks to thi!
1710
1711 2000-07-13 Dirk Herrmann <D.Herrmann@tu-bs.de>
1712
1713 * boot-9.scm (expt): In case of negative integer exponents return
1714 an exact result if the input paramters were exact. Thanks to
1715 Mikael for the suggestion.
1716
1717 2000-07-12 Dirk Herrmann <D.Herrmann@tu-bs.de>
1718
1719 * boot-9.scm (expt): Make sure that integer-expt is only called
1720 if the exponent is a non-negative integer.
1721
1722 2000-07-01 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
1723
1724 * boot-9.scm (process-define-module): Bugfix: Only check the CDR
1725 for export args.
1726
1727 2000-06-27 Dirk Herrmann <D.Herrmann@tu-bs.de>
1728
1729 * popen.scm: gc-thunk is deprecated. Use after-gc-hook instead.
1730
1731 2000-06-16 Dirk Herrmann <D.Herrmann@tu-bs.de>
1732
1733 * common-list.scm (intersection, set-difference, remove-if,
1734 remove-if-not): Made tail-recursive. Thanks to William Webber
1735 for the hint.
1736
1737 (delete-if!, delete-if-not!): Renamed parameter from `list' to
1738 `l' in order to avoid confusion. Note: These functions are not
1739 tail recursive yet.
1740
1741 2000-06-21 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
1742
1743 * boot-9.scm: Turned `the-module', `*top-level-lookup-closure*',
1744 and `scm:eval-transformer' into fluids.
1745
1746 * boot-9.scm (purify-module!, module-export!): New procedures.
1747 (export): Rewritten using `module-export!'.
1748 (process-define-module): New define-module options: pure, export.
1749 See NEWS.
1750 (scm-style-repl): Added optional module argument.
1751
1752 * null.scm, r5rs.scm, safe-r5rs.scm, safe.scm: New modules.
1753
1754 2000-06-20 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1755
1756 * session.scm (make-fold-modules): Detect circular references in
1757 module graph. (Thanks to Matthias Köppe.)
1758
1759 2000-06-20 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
1760
1761 * session.scm: Use module (ice-9 regex).
1762 (help): Regexp-quote a name given as a symbol.
1763
1764 2000-06-16 Dirk Herrmann <D.Herrmann@tu-bs.de>
1765
1766 * common-list.scm (list*): Removed, since this function is
1767 implemented as a primitive in libguile/list.c.
1768
1769 2000-06-12 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
1770
1771 * session.scm (help): Warn user if 'regex isn't provided.
1772
1773 * Makefile.am (ice9_sources): Removed getopt-gnu-style.scm.
1774
1775 * getopt-gnu-style.scm: Removed deprecated module.
1776
1777 2000-06-11 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
1778
1779 * boot-9.scm (make-autoload-interface): Set init value for uses to
1780 '() instead of #f.
1781 (make-modules-in): Name modules with their real (= full) names.
1782 (the-root-module, the-scm-module): Named `(guile)' instead of
1783 `the-root-module'.
1784 (the-scm-module): Set kind to 'interface.
1785
1786 * Makefile.am (ice9_sources): Replaced doc.scm with
1787 documentation.scm.
1788
1789 * session.scm (ice-9): Use module (ice-9 documentation).
1790 (name): Use the name property if everything else fails.
1791 (apropos-fold): New procedure.
1792 (apropos-internal): Re-implement in terms of `apropos-fold'.
1793 (help): Rewritten.
1794
1795 * doc.scm: Removed module (ice-9 doc).
1796
1797 * documentation.scm: New module (ice-9 documentation).
1798
1799 2000-06-08 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
1800
1801 * doc.scm (documentation-files): Renamed from `doc-files'.
1802 (write-all): Removed.
1803 (find-documentation): Renamed from `documentation'. Return
1804 documentation string instead of printing it. Not exported.
1805
1806 Tue Jun 6 09:21:28 2000 Greg J. Badros <gregb@go2net.com>
1807
1808 * session.scm: Update references to `proc-doc' to be
1809 `proc-documentation'
1810
1811 * doc.scm: Cleaned up a great deal. Put variables at the top of
1812 the file, eliminated `object-documentation' that was broken
1813 (referencing Scwm), drop `help' as session.scm has a better
1814 supported version of that procedure. Rename `proc-doc' to
1815 `proc-documentation' -- `procedure-documentation' is a primitive
1816 getter function, so I use the shorter name for this more useful
1817 function. (Alternatively, we could rename the primitive
1818 getter...)
1819
1820 2000-06-05 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1821
1822 * boot-9.scm (error-catching-loop): Inform about debugger on error.
1823
1824 2000-06-04 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
1825
1826 * boot-9.scm (scm-module-closure): New procedure: Was previously
1827 anonymous. Now needed in modules.c.
1828 (make-module): Use `standard-eval-closure' to create the eval
1829 closure.
1830
1831 2000-05-14 Gary Houston <ghouston@arglist.com>
1832
1833 * boot-9.scm (load-user-init): rewritten. first work out the home
1834 directory and then try to open the file (previously it could try
1835 to open a file in more than one place). catch exceptions when
1836 trying to get a directory from the user database. don't check
1837 that ~/.guile is not a directory before trying to load it (a lack
1838 of ~/.guile is not a crime, but if the file is not valid for any
1839 reason then primitive-load will raise an error).
1840
1841 2000-05-11 Dirk Herrmann <D.Herrmann@tu-bs.de>
1842
1843 * boot-9.scm (abs): Don't set to magnitude. abs now does not
1844 accept complex numbers as parameter.
1845
1846 2000-05-09 Marius Vollmer <mvo@zagadka.ping.de>
1847
1848 * common-list.scm (delete-if-not!): Bug fix of bug fix: change
1849 label of named let to `delete-if-not'. Sorry.
1850
1851 2000-05-08 Marius Vollmer <mvo@zagadka.ping.de>
1852
1853 * common-list.scm (doc fixes): Talk about `true values' instead of
1854 `#t' when a function treats all non-#f valuers the same.
1855 (remove-if-not): Bug fix: call remove-if-not
1856 instead of remove-if when iterating.
1857 (delete-if-not!): Bug fix: call delete-if-not! instead of
1858 delete-if! when iterating.
1859
1860 2000-04-16 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
1861
1862 * r4rs.scm (close-input-port, close-output-port): Removed.
1863
1864 2000-04-13 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
1865
1866 * session.scm (help): New macro. Prints helpful information.
1867
1868 2000-04-10 Gary Houston <ghouston@arglist.com>
1869
1870 * popen.scm (open-process): after forking, close all ports except
1871 the end of the pipe to the parent. otherwise move->fdes and
1872 the exec'd program and the exit handlers can interfere with file
1873 descriptors still in use in parent ports.
1874
1875 2000-04-09 Gary Houston <ghouston@arglist.com>
1876
1877 * popen.scm (close-process-quietly): new procedure. use it from
1878 reap-pipes to avoid errors or hanging during background cleanup.
1879
1880 2000-04-04 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1881
1882 * format.scm (format:obj->str): Handle circular references. Also,
1883 print improper lists with (x y . z) syntax rather than as
1884 individual pairs. (This code should probably be integrated into C
1885 level facilities. It is currently terribly slow.)
1886
1887 2000-04-03 Michael Livshin <mlivshin@bigfoot.com>
1888
1889 * streams.scm (stream-fold, stream-for-each): don't use named let,
1890 because it prevents the gc from junking the stream argument.
1891
1892 Thu Mar 9 08:05:08 2000 Greg J. Badros <gjb@cs.washington.edu>
1893
1894 * slib.scm: Back-out change to software-type -- renamed
1895 slib:software-type to software-type, and leave it non-public.
1896
1897 Thu Mar 2 12:20:52 2000 Greg J. Badros <gjb@cs.washington.edu>
1898
1899 * boot-9.scm: Drop unused definition of sfx function -- thanks
1900 Dirk Hermann!
1901
1902 Wed Mar 1 12:21:02 2000 Greg J. Badros <gjb@cs.washington.edu>
1903
1904 * streams.scm: Doc patch from Richard Kim, using MIT Scheme as
1905 source of the numerous very short changes.
1906
1907 Sun Feb 13 18:03:19 2000 Greg J. Badros <gjb@cs.washington.edu>
1908
1909 * slib.scm: Rename software-type to slib:software-type and make it
1910 public.
1911
1912 * r4rs.scm: Added documentation; largely cut and pasted from R4RS
1913 info pages.
1914
1915 Sun Feb 13 17:49:29 2000 Greg J. Badros <gjb@cs.washington.edu>
1916
1917 * common-list.scm: Added documentation; largely cut and pasted
1918 from slib docs.
1919
1920 2000-02-11 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1921
1922 * format.scm (format): Reintroduce (define format format:format)
1923 so that the binding in the public interface of the module will be OK.
1924
1925 2000-01-30 Gary Houston <ghouston@arglist.com>
1926
1927 * boot-9.scm (find-and-link-dynamic-module): pass strings, not symbols,
1928 to string-append.
1929
1930 2000-01-29 Gary Houston <ghouston@arglist.com>
1931
1932 * expect.scm (expect): don't call char-ready? before expect-select,
1933 since select now checks port buffers itself. don't bother to check
1934 the time first either, since expect-select does it.
1935
1936 Thu Jan 20 12:57:36 2000 Greg J. Badros <gjb@cs.washington.edu>
1937
1938 * format.scm: Use (variable-set! (builtin-variable 'format)) to
1939 re-define format to be format:format (instead of just define,
1940 which interacts poorly with the module system). Thanks to Shuji
1941 Narazaki for this change.
1942
1943 Tue Jan 11 10:49:22 2000 Greg J. Badros <gjb@cs.washington.edu>
1944
1945 * boot-9.scm expect.scm, syncase.scm: Switch to new style
1946 `simple-format' message strings: substitute ~A for %s, and ~S for
1947 %S.
1948
1949 * boot-9.scm: Added (define format simple-format) to expose that
1950 primitive via the simpler name until format.scm is loaded.
1951
1952 2000-01-09 Marius Vollmer <mvo@zagadka.ping.de>
1953
1954 * boot-9.scm (try-using-libtool-name): Do not bother to look
1955 inside libtool ".la" file, dynamic-link does this for us now.
1956
1957 1999-12-15 Gary Houston <ghouston@freewire.co.uk>
1958
1959 * slib.scm (library-vicinity, home-vicinity,
1960 scheme-implementation-type, scheme-implemenation-version):
1961 use define-public to export from the module.
1962
1963 Wed Dec 15 08:32:09 1999 Greg J. Badros <gjb@cs.washington.edu>
1964
1965 * doc.scm: Use `%library-dir' and the other system directories,
1966 not the quickly defuncted `library-dir' that I added before
1967 realizing the former existed. Thanks Brad Knotwell!
1968
1969 Sun Dec 12 19:18:52 1999 Greg J. Badros <gjb@cs.washington.edu>
1970
1971 * Makefile.am, doc.scm: Added doc.scm.
1972
1973 1999-12-12 18:54:06 1999 Greg J. Badros <gjb@cs.washington.edu>
1974
1975 * popen.scm, slib.scm: Added some docstrings for procedures that
1976 were primitives that I encountered in posix.texi.
1977
1978 1999-11-19 Gary Houston <ghouston@freewire.co.uk>
1979
1980 * Makefile.am (ice9_sources): add arrays.scm.
1981
1982 * boot-9.scm: load arrays.scm if 'array is provided.
1983
1984 * arrays.scm: new file with stuff from boot-9.scm.
1985
1986 1999-11-18 Gary Houston <ghouston@freewire.co.uk>
1987
1988 * boot-9.scm (read-hash-extend to set up arrays): add 'l' for
1989 long_long uniform vectors.
1990
1991 1999-11-17 Gary Houston <ghouston@freewire.co.uk>
1992
1993 * networking.scm (sethostent, setnetent, setprotoent, setservent):
1994 take an optional argument STAYOPEN. default is #f.
1995
1996 1999-10-05 Jim Blandy <jimb@savonarola.red-bean.com>
1997
1998 * Makefile.in: Deleted from CVS repository. Run the autogen.sh
1999 script to create generated files like this one.
2000
2001 1999-09-23 Gary Houston <ghouston@freewire.co.uk>
2002
2003 * boot-9.scm (load-user-init): check that the posix feature is
2004 available before using getpw and getuid.
2005 (top-repl): don't install handlers for SIGINT etc., without posix.
2006 (file-is-directory?): use 'posix instead of i/o-extensions to
2007 check for stat.
2008 (load-user-init): use file-exists? and file-is-directory? to
2009 check for .guile, instead of stat.
2010 (file-is-directory?): don't display the file name if posix not
2011 available.
2012 (feature?): I guess this is deprecated. redefined using "provided?"
2013 and changed users in boot-9.scm to "provided?".
2014 Conditionally load posix.scm and networking.scm.
2015
2016 posix.scm, networking.scm: new files. Move definitions from
2017 boot-9.scm if they are only useful with posix/networking available.
2018
2019 * Makefile.am (ice9_sources): add posix.scm, networking.scm.
2020
2021 1999-09-17 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
2022
2023 * debugger.scm (read-and-dispatch-commands): Handle other throws
2024 than 'exit-debugger.
2025
2026 * boot-9.scm (before-signal-stack): New fluid.
2027 (top-repl): Set before-signal-stack in the signal handler.
2028
2029 * debugger.scm (eval-handler): Handle unhandled exceptions.
2030
2031 1999-09-16 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
2032
2033 * debugger.scm ("p"): New alias for "evaluate";
2034 Mark module with :no-backtrace.
2035 ("position"): New command.
2036 (source-position, display-position): New procedures.
2037 (display-source): Display position of expression, if available.
2038 (catch-user-errors): Return #f on error. (Commands are expected
2039 to return a valid state.)
2040 (read-and-dispatch-command): Bugfix: Return old state on error.
2041
2042 1999-09-16 Jim Blandy <jimb@savonarola.red-bean.com>
2043
2044 * regex.scm (regexp-substitute/global): Handle the end of the
2045 match list and an empty match list identically. (Thanks to Greg
2046 Badros.)
2047
2048 1999-09-15 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
2049
2050 * debugger.scm ("evaluate"): Replaced `write-line' with calls to
2051 `write' and `newline' since write-line doesn't write but displays.
2052
2053 1999-09-12 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
2054
2055 * debugger.scm ("evaluate"): Newline after no env announcement.
2056
2057 * debug.scm, emacs.scm: Updated copyright notices.
2058
2059 * boot-9.scm (make-autoload-interface): Bugfix.
2060 (top-repl): Autoload debugger.
2061
2062 * debugger.scm ("backtrace"): Don't pass length param to
2063 display-backtrace if it wasn't explicitly given by the user.
2064 (write-frame-long/application): Also print corresponding source
2065 expression.
2066 ("evaluate"): Evaluate in local environment frame, if existent;
2067 Handle errors.
2068
2069 1999-09-11 Jim Blandy <jimb@savonarola.red-bean.com>
2070
2071 * format.scm (format:format-work): Use #\tab and #\page instead of
2072 slib:form-feed and slib:tab. (Thanks to Ceri Storey.)
2073
2074 * format.scm (format:abort): Call error, not slib:error.
2075
2076 1999-09-11 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
2077
2078 * boot-9.scm (using-readline?): New procedure: Returns #t if
2079 readline is used by the repl run by this thread.
2080 (handle-system-error): Print "Backtrace:" before backtrace since
2081 this is no longer done by display-backtrace.
2082
2083 * debug.scm (frame-number->index): Optionally take stack as
2084 argument.
2085
2086 * debugger.scm: Use the frame number abstraction which allows for
2087 both forward and backward views of the stack
2088 (write-frame-index-short, write-frame-index-long):
2089 Use selector `frame-number';
2090 (select-frame-absolute): Use frame-number->index.
2091 ("backtrace"): Use builtin backtrace printing.
2092 Use (ice-9 debug).
2093 Use readline conditionally.
2094
2095 1999-09-11 Jim Blandy <jimb@savonarola.red-bean.com>
2096
2097 * regex.scm (fold-matches, list-matches): New functions.
2098 (regexp-substitute/global): Rewritten again in terms of
2099 list-matches, to get null match behavior correct.
2100
2101 * regex.scm (regexp-substitute/global): Rewrite so that 'post at
2102 the end of the item list actually causes a tail call. (Thanks to
2103 Jan Nieuwenhuizen.)
2104
2105 1999-09-11 Marius Vollmer <mvo@zagadka.ping.de>
2106
2107 * readline.scm: Moved to ../guile-readline.
2108
2109 * boot-9.scm (top-repl): Removed code for activating readline.
2110
2111 * Makefile.am: Removed mention of readline.scm.
2112
2113 * Makefile.in: Regenerated.
2114
2115 1999-09-11 Jim Blandy <jimb@savonarola.red-bean.com>
2116
2117 Delete the test which compares the configuration date of libguile
2118 with the configuration date of ice-9. This test yields too many
2119 false positives to be helpful. For example, if you build Guile
2120 for several architectures but have them all share a "share"
2121 directory (which is supposed to work), then all but one
2122 architecture's Guile will complain that the configuration dates
2123 don't match. Which is true, but indicates nothing wrong.
2124 * boot-9.scm: Delete code which compares ice-9-config-stamp with
2125 libguile-config-stamp.
2126 * version.scm.in: Delete.
2127 * Makefile.am (ice9_generated): Delete.
2128 (subpkgdata_DATA): Remove ice9_generated.
2129 (EXTRA_DIST): Remove version.scm.in.
2130 * Makefile.in: Regenerate.
2131
2132 1999-09-11 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
2133
2134 * debugger.scm: New file: Initial version of the Guile debugger
2135 written by Chris Hanson. (The debugger isn't finished, but is
2136 included in Guile anyway since it is already quite useful.)
2137
2138 * boot-9.scm (top-repl): Use (ice-9 debug) (ice-9 debugger) (ice-9
2139 session) (ice-9 threads) (ice-9 regex) from guile-user only if
2140 top-repl is called. This makes startup time for scripts 30% of
2141 what it was before... Removed redundant code for loading of
2142 readline.
2143
2144 * Makefile.am (ice9_sources): Added debugger.scm.
2145
2146 1999-08-29 Keisuke Nishida <kxn30@po.cwru.edu>
2147
2148 * boot-9.scm (try-module-autoload): Use %search-load-path.
2149
2150 1999-08-24 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
2151
2152 * boot-9.scm: Removed old style hooks.
2153 (inherit-print-state): Rwwritten to use port-with-print-state.
2154
2155 1999-08-20 James Blandy <jimb@mule.m17n.org>
2156
2157 Remove support for the #/ path list syntax entirely.
2158 * boot-9.scm (read-path-list-notation,
2159 read-path-list-notation-warning): Deleted.
2160 Don't register read-path-list-notation-warning as a reader for
2161 objects starting with '#/'.
2162
2163 1999-08-05 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
2164
2165 GOOPS needs the observer protocol specified for the new module
2166 system. Here's a simple version for the old module system:
2167 * boot-9.scm (module-observers, module-weak-observers,
2168 module-observer-id, set-module-observers!,
2169 set-module-observer-id!): New accessors.
2170 (module-type): Added slots `observers', `weak-observers' and
2171 `observer-id'.
2172 (module-observe, module-observe-weak, module-unobserve,
2173 module-modified): New procedures.
2174 (module-make-local-var!, module-add!, module-remove!,
2175 module-clear!, module-define!, module-use!): Call module-modified.
2176
2177 1999-07-29 Marius Vollmer <mvo@zagadka.ping.de>
2178
2179 * boot-9.scm (error-catching-loop): Correct non-RnRS usage of internal
2180 defines.
2181
2182 1999-07-19 Jim Blandy <jimb@savonarola.red-bean.com>
2183
2184 * streams.scm: New module, contributed by Michael Livshin.
2185 * Makefile.am (ice9_sources): List it.
2186 * Makefile.in: Regenerated.
2187
2188 * boot-9.scm (read-delimited!): Put the terminator in the correct
2189 position.
2190
2191 1999-06-29 Mikael Djurfeldt <mdj@mdj-pc.nada.kth.se>
2192
2193 * readline.scm: Bugfix: Avoid getting the continued-lines prompt
2194 at multiple calls to read.
2195 (promtp2): Variable for continued-lines prompt.
2196 (make-readline-port): Use prompt2.
2197 (set-readline-prompt!): New optional arg which sets
2198 continued-lines prompt.
2199
2200 * boot-9.scm (top-repl): Set/clear readline prompts before/after
2201 reading expressions.
2202
2203 1999-06-18 Jim Blandy <jimb@savonarola.red-bean.com>
2204
2205 * ls.scm (ls, lls): Handle no arguments as meaning to look in
2206 `(current-module)'. (Patch from Thien-Thi Nguyen.)
2207
2208 1999-06-14 Jim Blandy <jimb@savonarola.red-bean.com>
2209
2210 * string-fun.scm (split-before-predicate, split-after-predicate,
2211 split-discarding-predicate): Make these public. (Thanks to
2212 Thien-Thi Nguyen.)
2213
2214 1999-06-13 Gary Houston <ghouston@easynet.co.uk>
2215
2216 * more changes to expect.scm, to avoid the one-character lookhead
2217 that was introduced to fix the $ problem:
2218
2219 * expect.scm (expect): call the match proc an extra time at end
2220 of file and set the eof? argument appropriately. call
2221 expect-eof-proc only if the last call didn't match.
2222 * expect.scm (expect-strings): change port to eof? in match proc.
2223 * expect.scm (expect-regexec): take an eof indicator as an argument
2224 instead of a port.
2225
2226 1999-06-09 Jim Blandy <jimb@savonarola.red-bean.com>
2227
2228 * Makefile.am (ice9_sources): Add popen.scm to list.
2229 * Makefile.in: Regenerated.
2230
2231 Fixes for expect from Gary Houston <ghouston@easynet.co.uk>:
2232
2233 * expect.scm (expect-regexec): define 'eof-next?'. I don't
2234 know why it was missing. also don't peek for end of lines
2235 unless expect-strings-exec-flags contains regexp/noteol.
2236 (expect-strings-exec-flags): initialise to regexp/noteol.
2237
2238 Gary Houston's open-buffer port patches:
2239
2240 1999-04-01 Gary Houston <ghouston@easynet.co.uk>
2241
2242 * popen.scm: applied fixes from Greg Harvey. use a guardian
2243 and a gc-thunk so that cleanup is done if a pipe is garbage
2244 collected or closed with close-port. use a weak hash-table instead of
2245 an alist.
2246
2247 1999-03-20 Gary Houston <ghouston@easynet.co.uk>
2248
2249 * expect.scm (expect): call the match proc with the port instead.
2250 (expect-strings): use peek-char to get the next char. this has
2251 the advantage of getting the handling of $ "correct", but the
2252 disadvantage of needing to get (and maybe block for) an extra character
2253 from the port when it may not be needed. hence:
2254 (expect-strings-exec-flags): new variable/parameter, supplies
2255 flags for regexp-exec. if this includes regexp/noteol, then
2256 automatic regexp/noteol handling (requiring an extra peeked char)
2257 is enabled. default is regexp/noteol.
2258 (expect-strings-compile-flags): new variable/parameter, supplies
2259 flags for make-regexp. default is regexp/newline.
2260
2261 1999-03-15 Gary Houston <ghouston@easynet.co.uk>
2262
2263 * expect.scm (expect): call the match proc with an extra char,
2264 peeked from the stream.
2265 (expect-strings): build a match proc which takes the extra char.
2266 (expect-regexec): take an extra arg "eof-next?" and use it
2267 to decide whether the regexp/noteol flag should be added.
2268
2269 1999-02-26 Gary Houston <ghouston@easynet.co.uk>
2270
2271 * boot-9.scm (top-repl): don't flush all ports at exit.
2272 (error-catching-loop): likewise.
2273
2274 1998-12-23 Gary Houston <ghouston@easynet.co.uk>
2275
2276 * boot-9.scm (scm-style-repl): -read: don't call
2277 consume-trailing-whitespace if val is eof object. Allows
2278 exiting repl with single control-D.
2279
2280 1998-12-06 Gary Houston <ghouston@easynet.co.uk>
2281
2282 * boot-9.scm (error-catching-loop): don't force output within
2283 error catching loop after quit received.
2284 (top-repl): flush all ports when the repl terminates.
2285
2286 * boot-9.scm (error-catching-loop): flush all ports before
2287 primitive exit if non-interactive.
2288 force-output on current-error-port if interactive.
2289
2290 * boot-9.scm (reopen-file): deleted.
2291 * popen.scm (open-output-pipe, open-input-pipe): moved from
2292 boot-9.scm.
2293 * popen.scm: new file.
2294
2295 1999-06-04 Dirk Herrmann <D.Herrmann@tu-bs.de>
2296
2297 * boot-9.scm (iota): replaced by a tail recursive version.
2298 (reverse-iota): removed.
2299
2300 1999-06-03 Mikael Djurfeldt <mdj@mdj-pc.nada.kth.se>
2301
2302 * optargs.scm (lambda*): Bugfix: Replaced ARGLIST -->
2303 non-optional-args. (Thanks to David Lutterkort.)
2304
2305 1999-05-09 Jim Blandy <jimb@savonarola.red-bean.com>
2306
2307 * string-case.scm: Removed; functions moved to libguile/strop.c
2308 (which could be dynamically linked in the future anyway).
2309 * Makefile.am (ice9_sources): Don't list string-case.scm.
2310 * Makefile.in: Regenerated.
2311 * format.scm: Don't bother importing (ice-9 string-case).
2312
2313 1999-05-02 Jim Blandy <jimb@savonarola.red-bean.com>
2314
2315 * boot-9.scm (provided?): New function.
2316
2317 * Makefile.am: Add string-case.scm and format.scm to ice9_sources.
2318 * Makefile.in: Regenerated.
2319
2320 * string-case.scm: New file, brought in from SLIB, and adapted to
2321 Guile's module system.
2322
2323 * format.scm: New file, brought in from SLIB, with the following
2324 changes:
2325 (format:format): If the first argument is the format string, stick
2326 a #f on the front of it, so it is now a valid CL format argument
2327 list. This is easier than changing everyplace else (like the
2328 error formatter) that expects it to be in CL form. The other
2329 clause which explicitly tests for this case is now dead code.
2330 (format:format-work): Allow `@' and `:' in either order, as per
2331 modern CL behavior.
2332 (format:num->cardinal): Don't assume that an elseless if returns
2333 '() when the condition is false.
2334
2335 1999-04-17 Jim Blandy <jimb@savonarola.red-bean.com>
2336
2337 * Makefile.in: Regenerated.
2338
2339 1999-04-08 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2340
2341 * boot-9.scm: Provide 'values.
2342
2343 1999-03-21 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2344
2345 * boot-9.scm (process-define-module, use-syntax): Bugfix:
2346 :use-syntax should add syntax to using module, not current module.
2347 (internal-use-syntax): Removed.
2348
2349 1999-03-21 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2350
2351 * session.scm (apropos-internal): Modified to comply with new
2352 argument order for hash-fold.
2353
2354 1999-03-19 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2355
2356 * boot-9.scm (try-load-module): New procedure. Broken out from
2357 resolve-module.
2358 (resolve-module): Bugfix: Make it possible for a module at a
2359 deeper level (x y z) to depend on a module on a higher (x y).
2360
2361 This also has the desired side-effect that multiple attempts to
2362 load a module (e.g. with `use-modules') work until source is
2363 actually found for the module (e.g. because the correct catalog
2364 has been added to the load path).
2365
2366 Use try-load-module.
2367
2368 1999-03-18 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2369
2370 * session.scm (system-module): New procedure. Used to switch a
2371 module between system and user state.
2372
2373 1999-03-16 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2374
2375 * session.scm (apropos-internal): Rewritten using hash-fold.
2376
2377 * emacs.scm, session.scm, slib.scm): Added :no-backtrace in module
2378 definition.
2379
2380 1999-03-14 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2381
2382 * boot-9.scm (make-record-type): Use `set-struct-vtable-name!' to
2383 associate a name to the record type descriptor so that the object
2384 system can create a wrapper class for it.
2385
2386 1999-03-12 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2387
2388 Improvement of backtraces: Introduces a new stack narrowing
2389 specifier, #t, for the inner cut. If the inner cut is specified
2390 by #t, `make-stack' will throw away inner stack frames (most
2391 recent calls on call chain) up to but excluding the first user
2392 stack frame encountered.
2393
2394 This specifier is now used in `save-stack' so that the call
2395 `(save-stack)' will get the new behaviour. [It is recommended that
2396 any error reporting functions written by the user have this call
2397 on the outermost expression level (i.e. as a member of the lambda
2398 list).]
2399
2400 Modules are partitioned into "user" and "system" modules. [I know
2401 that some names used here are silly, but I don't have more time to
2402 spend on a better solution, especially considering that the module
2403 system will be replaced. But if people have better ideas, then
2404 please tell me!]
2405
2406 System modules are created by adding :no-backtrace among the
2407 define-module switches:
2408
2409 (define-module (foo)
2410 :no-backtrace)
2411
2412 Modules which doesn't have the :no-backtrace specifier are user
2413 modules.
2414
2415 A stack frame is classified as a user frame if it has source code
2416 associated with it and if this source code can be proven to come
2417 from a user module. If it can be proven to come from a system
2418 module it is a system frame.
2419
2420 Frames which can't be classified, e.g. application frames, are cut
2421 away if they occur between system frames, but are left on the
2422 stack if they occur between the last system frame and the first
2423 user frame encountered. (Note that the first user frame
2424 encountered is the last user code being evaluated!)
2425
2426 In some cases the system part of the call chain is introduced by
2427 frames which should but can't be proven to be system frames. The
2428 following workaround has been implemented: The cutting proceeds
2429 over application frames where the operator is marked by the
2430 `system-procedure' property. (This has been used to cut away
2431 generic function dispatch code in the object system.)
2432
2433 * boot-9.scm (set-system-module!): New procedure: Set system/user
2434 status of a module.;
2435 Mark `the-root-module' and `the-scm-module' as system modules.
2436 (process-define-module): Add new keyword :no-backtrace.
2437
2438 * boot-9.scm (environment-module): Bugfixed.
2439 (set-module-eval-closure!): Add a pointer back from the eval
2440 closure to the module.
2441
2442 * emacs.scm (emacs-load): Reset port filename after transfer.
2443
2444 1999-03-03 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2445
2446 * slib.scm (make-random-state): Added for compatibility.
2447
2448 1999-02-16 Maciej Stachowiak <mstachow@alum.mit.edu>
2449
2450 * optargs.scm (lambda*): Handle empty argument lists properly.
2451
2452 1999-02-15 Jim Blandy <jimb@savonarola.red-bean.com>
2453
2454 Fix from Russ McManus:
2455 * getopt-long.scm (parse-option-spec): Store 'optional as the
2456 value-required? field for options that take optional values.
2457 (process-short-option): Grab a value for the option when it takes
2458 either an optional or required value.
2459
2460 1999-02-12 Jim Blandy <jimb@savonarola.red-bean.com>
2461
2462 * getopt-long.scm: Remove debugging calls to `pk'.
2463
2464 * getopt-long.scm: Return list of ordinary arguments as the value
2465 of the '() key, not `rest'.
2466
2467 A new argument-processing package from Russ McManus.
2468 * getopt-long.scm: New file.
2469 * Makefile.am (ice9_sources): Added getopt-long.scm.
2470 * Makefile.in: Regenerated.
2471
2472 1999-02-09 Maciej Stachowiak <mstachow@alum.mit.edu>
2473
2474 * optargs.scm: New file.
2475 * Makefile.am (ice9_sources): Add optargs.scm here. Makefile.in
2476 not regenerated because I don't have the right version of Automake.
2477
2478 1999-02-06 Jim Blandy <jimb@zwingli.cygnus.com>
2479
2480 * and-let*.scm: New file, from Michael Livshin.
2481 * Makefile.am (ice9_sources): Add and-let* here.
2482 * Makefile.in: Regenerated.
2483
2484 1999-01-11 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2485
2486 * slib.scm (install-require-module): Fixed the kludge which loads
2487 the slib catalog: Doesn't anylonger assume that the feature tested
2488 for isn't loaded.
2489
2490 1998-12-14 Jim Blandy <jimb@zwingli.cygnus.com>
2491
2492 * Makefile.in: Regenerated.
2493
2494 1998-12-14 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2495
2496 * boot-9.scm (process-define-module): Reverted the change of
2497 1998-11-23 which caused loading of object code if :use-module was
2498 applied to the module itself.
2499
2500 1998-12-11 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2501
2502 * Makefile.am: Removed setf.scm.
2503
2504 * setf.scm: Removed. 1. It was buggy. 2. It was unschemey.
2505 (These shortcomings were my fault.)
2506
2507 1998-12-10 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2508
2509 * boot-9.scm (environment-module): New procedure.
2510
2511 1998-12-07 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2512
2513 * Makefile.am: Added setf.scm.
2514
2515 1998-12-05 Christian Lynbech <chl@tbit.dk>
2516
2517 * setf.scm: New file. Adds the new forms `setf!' and `setter'
2518 which implements generalized references a la Common LISP.
2519
2520 1998-12-02 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2521
2522 * boot-9.scm (process-define-module): Added new specifier
2523 :autoload MODULENAME BINDINGS to the define-module form.
2524 The autoload specifier tells the module system to load the module
2525 MODULENAME at the first occasion that any variable with its name
2526 among BINDINGS is referenced.
2527 (make-autoload-interface): New procedure: Constructs a stand-in
2528 for the public interface for the module to be autoloaded.
2529
2530 1998-12-01 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2531
2532 * boot-9.scm (*suppress-old-style-hook-warning*): Set this to #t
2533 if you don't want the old style hook warnings.
2534
2535 1998-12-01 Christian Lynbech <chl@tbit.dk>
2536
2537 * boot-9.scm (try-using-libtool-name): Fix check on dlname to make
2538 sure that it isn't empty, as it is when we are only buidling
2539 static libraries.
2540
2541 1998-11-27 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2542
2543 * session.scm (arity): New procedure.
2544
2545 1998-11-26 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2546
2547 * boot-9.scm: Use run-hook instead of run-hooks everywhere.
2548
2549 1998-11-26 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2550
2551 * boot-9.scm (run-hooks, add-hook!, remove-hook!): Added temporary
2552 code for backward compatibility until people have had time to
2553 adapt to the new hooks.
2554
2555 1998-11-23 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2556
2557 * boot-9.scm (beautify-user-module!): Beautify also if public
2558 interface is set to the module itself. In this way we can use
2559 beautify-user-module! to beautify a module prepared for object
2560 code.
2561 (process-define-module): Special case: Try to load object code as
2562 well if a module does :use-module on itself.
2563
2564 * boot-9.scm: Bugfix: Since boot-9.scm is now loaded from
2565 invoke_main_func, we can no longer be sure that all modules have
2566 been registered when boot-9.scm is loaded.
2567 (register-modules): New function: Register and tag modules
2568 registered by scm_register_module_xxx since last call to this
2569 function. Modules are tagged with the dynamic object passed as
2570 argument. (Already linked modules should be tagged with #f.)
2571 (init-dynamic-module, link-dynamic-module): Call register-modules
2572 first to register linked modules.
2573
2574 * boot-9.scm (init-dynamic-module): Remove module from
2575 registered-modules as soon as possible in case we are recursively
2576 invoked; Set public interface before doing the dynamic-call.
2577
2578 * boot-9.scm (map-in-order): Removed (replaced by scm_serial_map).
2579 (abort-hook, before-error-hook, after-error-hook,
2580 before-backtrace-hook, after-backtrace-hook, before-read-hook,
2581 after-read-hook, exit-hook): Make hooks with `make-hook'.
2582
2583 * boot-9.scm: Make hooks first class citizens and make them easier
2584 to use from C:
2585 (make-hook, add-hook!, remove-hook!, run-hooks): Moved to
2586 libguile/feature.c.
2587
2588 * boot-9.scm: Added warnings about bindings used in
2589 libguile/modules.c: the-module, set-current-module,
2590 make-modules-in, beautify-user-module!, module-eval-closure.
2591
2592 1998-11-21 Mikael Djurfeldt <mdj@kenneth>
2593
2594 * boot-9.scm (the-environment): New special form: Returns an
2595 object representing the current local evaluation environment.
2596 This object can be used in `local-eval' and `defined?'.
2597
2598 1998-11-13 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2599
2600 * boot-9.scm (collect): New syntax. Similar to begin but returns
2601 a list of the results of all forms in the sequence instead of the
2602 result of the last form.
2603
2604 1998-11-10 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2605
2606 * boot-9.scm (values, call-with-values): Moved here from
2607 syncase.scm.
2608
2609 * syncase.scm (values, call-with-values): Moved to boot-9.scm.
2610
2611 * boot-9.scm (readline-options, readline-enable, readline.disable,
2612 readline-set!: New options interface.
2613
2614 * readline.scm (readline-port): Use readline-options-interface.
2615
2616 1998-11-05 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2617
2618 * boot-9.scm: Set the repl start module in `top-repl' instead of
2619 at the end of boot-9.scm.
2620
2621 1998-11-01 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2622
2623 * emacs.scm (format): Bugfix: Handle multiple arguments
2624 correctly. (Thanks to Thien-Thi Nguyen.)
2625
2626 1998-11-01 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2627
2628 * boot-9.scm (exit-hook): New hook: Is run at the very end of an
2629 interactive session.
2630 (top-repl): Run exit-hook on exit.
2631
2632 * readline.scm (readline-port): Maybe read history; Maybe write
2633 history at exit (add to exit-hook).
2634
2635 Fri Oct 30 15:15:37 1998 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2636
2637 * readline.scm (make-readline-port): Bugfixed last change...
2638
2639 1998-10-28 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2640
2641 * readline.scm (make-readline-port): Don't set prompt to "... " if
2642 read line was empty.
2643
2644 1998-10-19 Jim Blandy <jimb@zwingli.cygnus.com>
2645
2646 * boot-9.scm, debug.scm, expect.scm, hcons.scm, lineio.scm,
2647 r4rs.scm, slib.scm, threads.scm: Update copyright years.
2648
2649 * getopt-gnu-style.scm, slib.scm: Add copyright notice.
2650
2651 Talked to Stallman. Actually, the syntax-case copyright is no
2652 problem. Duh.
2653 * Makefile.am (ice9_sources): Revert last change.
2654 * syncase.scm, psyntax.pp, psyntax.ss: Added again.
2655 * Makefile.in: Regeneretade.
2656
2657 * boot-9.scm: Don't assume that this file is loaded just before
2658 entering a read-eval-print loop. Turn code to load (ice-9 emacs)
2659 into...
2660 (load-emacs-interface): New function.
2661 (top-repl): Call it, if use-emacs-interface is defined and true.
2662 At this point, we *do* know we're about to enter a REPL.
2663
2664 We can't include Kent Dybvig's syntax-case macro expander in the
2665 core Guile distribution, because we don't have copyright
2666 assignments for this code. We can certainly distribute them as a
2667 separate package, but Guile should be FSF code.
2668 * syncase.scm, psyntax.pp, psyntax.ss: Removed.
2669 * Makefile.am (ice9_sources): Removed syncase.scm, psyntax.pp, and
2670 psyntax.ss.
2671 * Makefile.in: Regenerated.
2672
2673 * Makefile.am (ice9_sources): Add getopt-gnu-style.scm.
2674 * Makefile.in: Regenerated.
2675
2676 1998-10-18 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2677
2678 * boot-9.scm: Added extended read syntax for byte vectors #y(...)
2679 and short vectors #h(...).
2680
2681 1998-10-14 Jim Blandy <jimb@zwingli.cygnus.com>
2682
2683 * calling.scm (excursion-function-syntax): Use a sequence of
2684 set!'s, not a single multi-variable set!; we removed support for
2685 that syntax a long time ago. (Thanks to Shuji Narazaki.)
2686
2687 1998-10-12 Jim Blandy <jimb@zwingli.cygnus.com>
2688
2689 * r4rs.scm (OPEN_READ, OPEN_WRITE, OPEN_BOTH): Don't bother
2690 testing software-type here. That's the least of our Windows
2691 porting issues, and it's done wrong anyway.
2692
2693 1998-10-09 Jim Blandy <jimb@zwingli.cygnus.com>
2694
2695 * boot-9.scm (read-path-list-notation-warning): New function:
2696 print a warning the first time we see `#/' notation.
2697
2698 * q.scm (sync-q!, q?, q-remove!, q-push!, enq!): Lots of bugs, and
2699 (eq? #f '()) assumptions. Make functions that aren't documented
2700 to return anything else return the queue itself. (Bug report from
2701 Michael Livshin --- thanks!)
2702
2703 1998-08-21 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2704
2705 * debug.scm (trace-entry, trace-exit): Removed re-enabling of
2706 trace flag.
2707
2708 * boot-9.scm (make-options): Bugfix: Changed pair? --> list? in
2709 order to allow the empty list as arg.
2710 (error-catching-loop): Use `with-traps' to create a dynamic
2711 context with traps enabled.
2712
2713 1998-08-19 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2714
2715 * boot-9.scm: Removed (ice-9 regex) from use-list of (guile)
2716 module.
2717 (try-using-libtool-name): Removed dependency on (ice-9 regex).
2718
2719 1998-08-15 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2720
2721 * boot-9.scm: Make the root module use (ice-9 regex) if
2722 available. The dynamic linking facilities in boot-9.scm are
2723 currently dependent upon regular expressions. My change of
2724 1998-07-14 removed (ice-9 regex) from the use-list of the root
2725 module and thereby destroyed dynamic linking.
2726
2727 1998-07-29 Jim Blandy <jimb@zwingli.cygnus.com>
2728
2729 * Makefile.in: Regenerated using the last public version of
2730 automake, not the hacked Cygnus version.
2731
2732 1998-07-28 Jim Blandy <jimb@zwingli.cygnus.com>
2733
2734 * Makefile.in: Regenerated, after removing Totoro kludge.
2735
2736 1998-07-28 Jim Blandy <jimb@totoro.red-bean.com>
2737
2738 * getopt-gnu-style.scm: New file. (Thanks to Russ McManus.)
2739
2740 1998-07-26 Jim Blandy <jimb@zwingli.cygnus.com>
2741
2742 * Makefile.in Rebuilt, for config changes in parent dir.
2743
2744 1998-07-21 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2745
2746 * readline.scm (make-readline-port): Set prompt string to "... "
2747 after first read line. (Thanks to Richard Polton.)
2748
2749 1998-07-19 Jim Blandy <jimb@zwingli.cygnus.com>
2750
2751 * lineio.scm (make-line-buffering-input-port): Don't use
2752 ungetc-char-ready?, since we don't provide that function any
2753 more. The unread-string function doesn't interact properly with
2754 any of the standard I/O functions anyway. (Thanks to Andrew
2755 Archibald.)
2756
2757 * hcons.scm (hashq-cons-assoc): Don't assume the empty list is
2758 false. Return false when we cannot find a matching entry in the
2759 list. (Thanks to Andrew Archibald.)
2760
2761 1998-07-16 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2762
2763 * boot-9.scm (export, export-syntax): New special forms: Export
2764 bindings from a module. `(export name1 name2 ...)' can be used at
2765 the top of a module (after `define-module') to specify which names
2766 should be exported. It can be used as an alternative to
2767 `define-public'. `export-syntax' works equivalently to `export'
2768 but is intended for export of syntactic keywords.
2769 (Thanks to Thien-Thi Nguyen.)
2770
2771 1998-07-15 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2772
2773 * boot-9.scm: Renamed module `(guile-repl)' --> `(guile-user)'.
2774
2775 1998-07-14 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2776
2777 * boot-9.scm: Let the user start in module `(guile-repl)' instead
2778 of module `(guile)'. Also make sure that `(guile-repl)' uses
2779 suitable modules. This change improves Guile stability
2780 substantially since bindings will only be copied from the root
2781 module: If the user redefines builtins in `(guile-repl)' it won't
2782 affect the internal operation of Guile itself.
2783
2784 1998-06-19 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2785
2786 * boot-9.scm (load-module): When loading files from within files
2787 themselves being loaded: Use the directory path of the file being
2788 loaded as root for relative filenames. (After suggestion by
2789 Steven G. Johnson.)
2790
2791 1998-06-15 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2792
2793 * emacs.scm (emacs-load): New feature: Eval in specified module.
2794
2795 1998-06-14 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2796
2797 * readline.scm: Typo in regex module name.
2798
2799 1998-06-13 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
2800
2801 * readline.scm (apropos-completion-function): regexp-quote text to
2802 be completed.
2803
2804 1998-06-11 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2805
2806 * debug.scm, emacs.scm: Bugfix: Treat `the-last-stack' as a fluid.
2807
2808 1998-06-09 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2809
2810 * boot-9.scm: Check that (current-input-port) is a tty before
2811 enabling readline. (Thanks to Michael N. Livshin.)
2812
2813 1998-06-07 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2814
2815 * boot-9.scm (use-syntax): Turned into a macro inorder to be
2816 similar in use to `use-modules'.
2817 Example: (use-syntax (ice-9 syncase)) will 1. load the module
2818 (ice-9 syncase), and, 2. install the procedure `syncase' as eval
2819 transformer.
2820 (internal-use-syntax): New procedure.
2821 (process-define-module): Use `internal-use-syntax'.
2822
2823 1998-05-19 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2824
2825 * Makefile.am (ice9_sources): Add emacs.scm.
2826
2827 1998-05-13 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2828
2829 * readline.scm: Use the new readline facilities: Add the
2830 possibility to control input and output ports; Add apropos
2831 completion.
2832
2833 * boot-9.scm: Antirevert Jim's readline code which he reverted
2834 19971027 and adapt it to the current readline interface.
2835
2836 * boot-9.scm (top-repl): Only enable readline if not using the
2837 Emacs interface; Only use repl prompt when using the readline port
2838 from repl-read. (We don't want to see it when calling `read'.)
2839
2840 * boot-9.scm (remove-hook!): Parenthesis bug.
2841
2842 1998-05-11 Mikael Djurfeldt <mdj@kenneth>
2843
2844 * boot-9.scm: Load readline module if readline is present.
2845
2846 * readline.scm (apropos-completion-function): New procedure:
2847 Symbolic completion. (Thanks to Andrew Archibald!)
2848
2849 1998-04-22 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2850
2851 * boot-9.scm (process-define-module): Added keyword use-syntax.
2852
2853 1998-04-19 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2854
2855 * nonblocking.scm: Removed. libguile is now inherently
2856 nonblocking through the use of scm_internal_select.
2857
2858 * emacs.scm: Removed use of nonblocking.scm.
2859
2860 * gwish.scm, gtcl.scm: Removed. tcltk.scm has made these
2861 obsolete.
2862
2863 1998-04-15 Mikael Djurfeldt <mdj@nada.kth.se>
2864
2865 * runq.scm (runq-control): Corrected spelling of enqueue!.
2866 (Thanks to Karl M. Hegbloom.)
2867
2868 1998-03-30 Mikael Djurfeldt <mdj@nada.kth.se>
2869
2870 * boot-9.scm: Added new run-time option interface eval-options.
2871
2872 1998-03-28 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2873
2874 * boot-9.scm (remove-hook!): New macro. (Thanks to Maciej
2875 Stachowiak.)
2876
2877 1998-01-30 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2878
2879 * threads.scm: Added simple error and signal handler.
2880 (make-thread, begin-handler): Use this handler. The most
2881 important effect of this is that signals get unmasked.
2882 Previously, when a signal was thrown signals remained masked
2883 (signals get masked when a signal is taken) which influenced other
2884 threads.
2885
2886 1998-01-01 Tim Pierce <twp@skepsis.com>
2887
2888 A better fix to the SLIB identity problem -- thanks to Marius Vollmer.
2889 * slib.scm (identity): Unmake public.
2890 (slib:eval): Evaluate inside `slib-module'.
2891
2892 1997-12-24 Tim Pierce <twp@skepsis.com>
2893
2894 * boot-9.scm: Doc fix.
2895
2896 * slib.scm (identity): Made public.
2897 (home-vicinity): New function (from SLIB/Template.scm).
2898
2899 1997-12-13 Tim Pierce <twp@skepsis.com>
2900
2901 * boot-9.scm (read-line): Rewritten to call %read-line for
2902 improved speed. Minor user-visible changes: the new functions are
2903 hardwired to treat the LFD character as signifying end-of-line, so
2904 changing `scm-line-incrementors' will no longer affect the
2905 behavior of read-line. On platforms which do not represent
2906 end-of-line with a LFD character, read-line should behave more
2907 like native line-processing facilities, but there is still a ways
2908 to go here.
2909
2910 Sat Nov 29 01:24:46 1997 Mikael Djurfeldt <mdj@kenneth>
2911
2912 * boot-9.scm (error-catching-loop, save-stack): `the-last-stack'
2913 is now a fluid.
2914
2915 1997-11-28 Tim Pierce <twp@skepsis.com>
2916
2917 * boot-9.scm (find-and-link-dynamic-module): If a module directory
2918 contains a .la file (a libtool support file), attempt to extract
2919 the shared library name from that file. If the .la file does not
2920 exist, try to link against a .so file. Libtool-generated compiled
2921 modules should load more cleanly in Guile now.
2922 (try-using-libtool-name, try-using-sharlib-name): New functions.
2923
2924 Sun Nov 9 06:10:59 1997 Gary Houston <ghouston@actrix.gen.nz>
2925
2926 * boot-9.scm (set-batch-mode?!, batch-mode?): initialize more
2927 usefully so they will work from a script.
2928
2929 1997-10-31 Marius Vollmer <mvo@zagadka.ping.de>
2930
2931 * boot-9.scm (inherit-print-state): Moved definition to the
2932 neighborhood of the record code.
2933
2934 Mon Oct 27 02:05:49 1997 Jim Blandy <jimb@totoro.red-bean.com>
2935
2936 * boot-9.scm: Revert changes to this file from Oct 23. It turns
2937 out to interact badly with the Emacs support and the Tcl/Tk
2938 support. It's not a high enough priority at the moment to be
2939 worth fixing. I'm leaving the other readline support in, though.
2940
2941 Sat Oct 25 14:23:22 1997 Jim Blandy <jimb@totoro.red-bean.com>
2942
2943 * Makefile.am: Include readline.scm in the list of files to be
2944 installed, so Guile can find it for interactive use.
2945 * Makefile.in: Regenerated.
2946
2947 Thu Oct 23 01:00:33 1997 Jim Blandy <jimb@totoro.red-bean.com>
2948
2949 Add support for readline function.
2950 * readline.scm: New module.
2951 * boot-9.scm (repl-reader): New function.
2952 (scm-style-repl): Call repl-reader, instead of doing the reading
2953 ourselves. Remove repl-report-reset; it was never used for
2954 anything.
2955 (top-repl): If we've got the readline primitives, then redefine
2956 repl-reader to use them.
2957 If we've got the readline primitives, import the readline module.
2958
2959 * ls.scm (ls, lls): Don't assume (eq? #f '()).
2960
2961 Wed Oct 22 18:26:57 1997 Jim Blandy <jimb@totoro.red-bean.com>
2962
2963 * calling.scm, common-list.scm, ls.scm, q.scm, runq.scm,
2964 string-fun.scm: Added copyright notices; reformatted.
2965
2966 Thu Oct 9 05:44:00 1997 Gary Houston <ghouston@actrix.gen.nz>
2967
2968 * expect.scm: (expect-regexec): new procedure, use it in
2969 expect-strings to fix the => syntax under the new regex system.
2970 (top): include regex module in define-module statement.
2971
2972 Wed Oct 8 03:16:01 1997 Gary Houston <ghouston@actrix.gen.nz>
2973
2974 * (error-catching-loop): new local variable "interactive". if
2975 #f, abort terminates the process.
2976 (set-batch-mode?!, batch-mode?): new closures, defined in
2977 error-catching-loop. the names are from scsh.
2978
2979 1997-10-06 Marius Vollmer <mvo@zagadka.ping.de>
2980
2981 * boot-9.scm (inherit-print-state): If NEW-PORT contains a
2982 print-state, throw it away.
2983
2984 Fri Oct 3 12:00:00 Mikael Djurfeldt <mdj@nada.kth.se>
2985
2986 * boot-9.scm (struct-layout): Use `vtable-index-layout' instead of
2987 `0'.
2988
2989 Thu Oct 2 12:00:00 Mikael Djurfeldt <mdj@nada.kth.se>
2990
2991 * boot-9.scm (struct-printer, make-struct-printer,
2992 set-struct-printer-in-vtable!, *struct-printer*): Removed.
2993 (record-type-vtable, make-record-type): Don't use make-struct-printer.
2994 (record-type-vtable): User fields "prpr" (printer is no longer a
2995 user field).
2996 (record-type-name, record-type-fields): Decreased slot index by
2997 one; Use `vtable-offset-user'.
2998
2999 Thu Oct 2 12:00:00 Marius Vollmer <mvo@zagadka.ping.de>
3000
3001 * boot-9.scm (inherit-print-state): New experimental function.
3002
3003 Tue Sep 30 13:12:48 1997 Jim Blandy <jimb@totoro.red-bean.com>
3004
3005 Suggestion and script from Maciej Stachowiak:
3006 * boot-9.scm: Split off modules into separate, autoloadable files.
3007 This reduces startup time from 10.5s to 5.5s (user cpu).
3008 * calling.scm, common-list.scm, ls.scm, q.scm, runq.scm,
3009 string-fun.scm: New files, containing stuff that used to be in
3010 boot-9.scm.
3011 * Makefile.am (ice9_sources): List new files here, for
3012 distribution and installation.
3013 * Makefile.in: Regenerated.
3014
3015 Mon Sep 29 23:53:55 1997 Jim Blandy <jimb@totoro.red-bean.com>
3016
3017 * Makefile.in: Regenerated with automake 1.2c.
3018
3019 Mon Sep 29 03:21:24 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3020
3021 * slib.scm (slib:load): slib:load first tries to load the file
3022 named NAME, then NAME.scm. On error, report the error occuring at
3023 the first attempt (NAME) rather than the second (NAME.scm).
3024
3025 * boot-9.scm: Bugfix: Hard-solder the print-option procedure into
3026 the make-options macro so that we needn't refer to a global
3027 symbol.
3028
3029 Sun Sep 28 21:40:24 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3030
3031 * debug.scm: Moved options interface procedures to boot-9.scm.
3032
3033 * boot-9.scm: Define options interface procedures here instead.
3034
3035 Sat Sep 27 20:19:20 1997 Jim Blandy <jimb@totoro.red-bean.com>
3036
3037 * boot-9.scm (separate-fields-discarding-char,
3038 separate-fields-after-char, separate-fields-before-char): Call
3039 continuation function, RET, as advertised: with each separated
3040 field a separate argument.
3041
3042 * Makefile.in: Regenerated with automake 1.2a.
3043
3044 Sat Sep 20 14:23:53 1997 Mikael Djurfeldt <mdj@kenneth>
3045
3046 * slib.scm (slib:load): Export.
3047
3048 * boot-9.scm (in-vicinity): Bugfix: Don't add "/" to an empty
3049 vicinity;
3050 Provide defmacro.
3051
3052 Thu Sep 18 01:24:31 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3053
3054 * r4rs.scm (apply): Set name property to 'apply.
3055
3056 Tue Sep 16 22:09:50 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3057
3058 * boot-9.scm (keyword->symbol, display-usage-report): Changed
3059 length --> string-length. (Thanks to Aleksandar Bakic.)
3060 (separate-fields-discarding-char, separate-fields-after-char,
3061 separate-fields-before-char): Bugfix from Maciej Stachowiak
3062 <mstachow@mit.edu>. Thanks!
3063 (try-module-linked): Try to find module among those already
3064 registered.
3065 (try-module-dynamic-link): Removed the first test which
3066 corresponds to a call to `try-module-linked'.
3067 (resolve-module): Resolve modules in this order: 1. Already
3068 registered modules (for example those which have been statically
3069 linked), 2. Try to autoload an .scm-file, 3. Try to dynamically
3070 link a .so-file.
3071
3072 Mon Sep 15 23:39:54 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3073
3074 * boot-9.scm (iota): Renamed list-reverse! --> reverse!
3075
3076 Thu Sep 11 02:31:38 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3077
3078 * session.scm (name): New procedure: Gives name of object.
3079 (source): New procedure: Gives source of object.
3080
3081 Wed Sep 10 20:12:45 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3082
3083 * boot-9.scm (primitive-macro?): New procedure.
3084
3085 * slib.scm: Added hack which transfers syntactic information from
3086 the builtin variable `define' to the slib version if module (ice-9
3087 syncase) has been loaded. This is necessary to get correct
3088 expansion inside the slib module.
3089
3090 * psyntax.ss (build-let, build-named-let): New output
3091 constructors.
3092 (build-lexical-var): Seed gensym with symbolic name.
3093 (self-evaluating?): Add keywords among self-evaluating types.
3094 (let): New core form.
3095 (if): Removed from core language.
3096 (or, and, let, cond): Removed syntactic definitions.
3097 (sc-expand3): New procedure: Expander which takes optional mode
3098 and eval-syntactic-expanders-when arguments.
3099
3100 * syncase.scm (psyncomp): New procedure: Recompiles psyntax.pp.
3101 Should be used inside the (ice-9 syncase) module with (use-syntax
3102 syncase) and with the current directory containing the psyntax.ss
3103 source.
3104 Added hack to transfer syntactic information from the builtin
3105 variable `define' to the slib version if module (ice-9 slib) has
3106 been loaded.
3107
3108 Fri Sep 5 05:47:36 1997 Mikael Djurfeldt <mdj@faun.nada.kth.se>
3109
3110 * syncase.scm (sc-interface, sc-expand): Removed hook setup.
3111 (syncase): Publish syntax transformer to be used with
3112 `use-syntax'.
3113 (sc-macro): Use this as the value when publishing macros.
3114
3115 * boot-9.scm (module-type): Added `transformer'.
3116 (make-module): Modified initialization.
3117 (module-transformer, set-module-transformer!): Selector and
3118 mutator for module-associated transformer.
3119 (set-current-module): Use module-transformer to set
3120 `scm:eval-transformer'.
3121 (module-use!): Previous change reverted.
3122 (use-syntax): New function: Install a transformer in current
3123 module.
3124 (sc-interface, sc-expand): Removed! :)
3125
3126 Fri Sep 5 03:09:09 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3127
3128 * emacs.scm (emacs-load): Added new parameter `module'.
3129
3130 * syncase.scm (putprop, getprop): Modified to use the object
3131 properties of the variable object corresponding to the symbol;
3132 This way we can ride on the mechanisms of the module system.
3133 Changed `builtin-variable' calls to `define-public' calls.
3134 Setup the hooks sc-expand and sc-interface.
3135
3136 * boot-9.scm (sc-interface, sc-expand): New builtin variables.
3137 (set-current-module): Switch to and from sc-expand as
3138 scm:eval-transformer when going into and out of modules using
3139 syncase macros.
3140 (module-use!): Set scm:eval-transformer to sc-expand when adding
3141 the syncase interface.
3142
3143 Thu Sep 4 14:57:04 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3144
3145 * syncase.scm (putprop): Temporary fix which publishes new syntax
3146 globally (the old behaviour was complex and connected to the inner
3147 workings of the current module system).
3148
3149 Wed Sep 3 21:29:13 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3150
3151 * psyntax.ss: Updated.
3152 psyntax.pp: Bugfix: Previous version had some leading "t":s cut
3153 off!
3154
3155 Tue Sep 2 00:26:42 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3156
3157 * boot-9.scm (gensym): Removed (replaced by primitive).
3158 (obarray-gensym): Rewritten to use `gensym'.
3159 (gentemp): Rewritten to use `gensym'.
3160
3161 Mon Sep 1 20:08:32 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3162
3163 * gtcl.scm (make-tcl-binder): Rewritten to choose bindings
3164 according to the following priorities:
3165 1. tcl bindings which are present in override-scheme-list
3166 2. bindings from the-scm-module
3167 3. tcl bindings
3168 This way the gtcl module can occur first in the use-list without
3169 disabling the scheme interpreter.
3170 (new-interpreter): New function.
3171
3172 * gwish.scm: Moved initialization code for the-interpreter to
3173 gtcl.scm; Moved name space cleaning code to gtcl.scm and rewrote
3174 it; Call `new-interpreter'; Don't :use-module (guile).
3175
3176 Thu Aug 28 23:48:53 1997 Jim Blandy <jimb@totoro.red-bean.com>
3177
3178 * Makefile.in: Regenerated.
3179
3180 Wed Aug 27 11:35:09 1997 Jim Blandy <jimb@totoro.red-bean.com>
3181
3182 * Makefile.in: Regenerated, so it uses "tar", not "gtar".
3183
3184 Mon Aug 25 22:00:44 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3185
3186 * emacs.scm (object->string, format, error-args->string): New
3187 procedures.
3188 (emacs-frame-eval): Reworked.
3189
3190 Mon Aug 25 16:15:55 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3191
3192 * session.scm (apropos-internal): Musn't initialize symbol
3193 accumulator with a constant pair. That led to mutation of the
3194 source!
3195
3196 Sun Aug 24 01:03:10 1997 Mikael Djurfeldt <mdj@kenneth>
3197
3198 * session.scm (vector-for-each): Removed.
3199 (apropos): vector-for-each --> array-for-each.
3200 (apropos-internal): New function. Return list of accessible
3201 symbols matching regexp.
3202
3203 * debug.scm (frame-number->index): New function. Convert frame
3204 number (as displayed in the backtrace) to frame index (to be used
3205 in stack-ref).
3206
3207 * emacs.scm (emacs-load): New arguments: interactivep: when
3208 non-false, send back results to Emacs; colnum: Column number;
3209 Use modules (ice-9 debug) and (ice-9 session);
3210 (no-stack, no-source): New simple-actions;
3211 (result-to-emacs): New procedure. Sends data to Emacs via the
3212 result protocol;
3213 (get-frame-source, emacs-select-frame, emacs-frame-eval,
3214 emacs-symdoc): New procedures.
3215
3216 Wed Aug 20 13:21:11 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3217
3218 * emacs.scm (emacs-load): Adjust stack narrowing.
3219 (whitespace-chars): Include #\np.
3220
3221 * syncase.scm: Also turn off debugging evaluator and recording of
3222 procedure names during loading of psyntax.pp.
3223
3224 * psyntax.pp: Removed leading blanks => 800K -> 100K.
3225
3226 Tue Aug 19 02:39:41 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3227
3228 * syncase.scm: Don't tamper with debug mode setting when enabling
3229 macros. Instead cut the stack with start-stack.
3230 Load psyntax.pp with recording of positions turned off.
3231
3232 * psyntax.pp, psyntax.ss (quasiquote): Changed fx= --> =.
3233
3234 * syncase.scm: New file: Guile-adaption for syntax-case macros.
3235 * psyntax.pp, psyntax.ss: Syntax-case macros, portable version 2 by
3236 R. Kent Dybvig, Oscar Waddell, Bob Hieb and Carl Bruggeman
3237
3238 Mon Aug 18 21:58:25 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3239
3240 * session.scm: New file: Session support.
3241 (apropos): New procedure: List bindings given regexp.
3242
3243 Sat Aug 16 18:44:24 1997 Gary Houston <ghouston@actrix.gen.nz>
3244
3245 * boot-9.scm: define tms accessors: clock, utime, stime, cutime,
3246 cstime.
3247
3248 Thu Aug 14 19:55:37 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3249
3250 * emacs.scm (emacs-load): Something has changed in the reader so
3251 that we now should set the port line count to the specified value
3252 (linum) instead of (- linum 1).
3253
3254 * slib.scm (slib:load): Use load-from-path instead of
3255 primitive-load-path so that backtraces get narrowed properly at
3256 the top.
3257
3258 * boot-9.scm (top-repl): Save stack already in signal handler in
3259 order to narrow it correctly.
3260 (save-stack): Adjust narrowing tag for the top of load-stacks.
3261
3262 Tue Jul 29 01:18:08 1997 Gary Houston <ghouston@actrix.gen.nz>
3263
3264 * boot-9.scm (move->fdes, dup->port): use dup->fdes, not primitive-dup.
3265 (dup->fdes): deleted, now done in C.
3266
3267 Sat Jul 26 08:00:42 1997 Gary Houston <ghouston@actrix.gen.nz>
3268
3269 * boot-9.scm (setenv): new procedure, scsh compatible.
3270
3271 Sat Jul 26 21:30:10 1997 Marius Vollmer <mvo@zagadka.ping.de>
3272
3273 * boot-9.scm (with-fluids): New macro to go with the
3274 builtin `with-fluids*'.
3275
3276 Thu Jul 24 04:28:11 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3277
3278 * slib.scm (install-require-module): In newer versions of slib
3279 *catalog* is #f until the first access. Therefore we call
3280 require:provided? for a random feature if *catalog* is #f.
3281
3282 Wed Jul 23 20:13:04 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3283
3284 * boot-9.scm: If using emacs interface, enable backtraces
3285 automatically.
3286
3287 Mon Jul 21 06:45:45 1997 Gary Houston <ghouston@actrix.gen.nz>
3288
3289 * boot-9.scm (dup->port, dup->inport, dup->outport, dup->fdes,
3290 dup, fdes->inport, fdes->outport, port->fdes): new procedures.
3291 (duplicate-port): was a C primitive, now it's here.
3292 (move->fdes): allow the first argument to be a file descriptor.
3293 Return the modified port or file descriptor (was unspecified.)
3294
3295 Fri Jul 11 00:13:43 1997 Jim Blandy <jimb@floss.red-bean.com>
3296
3297 Changes to compile under gnu-win32, from Marcus Daniels:
3298 * boot-9.scm (load-user-init): If HOME is unset, provide
3299 a default of /.
3300
3301 * boot-9.scm (define-public): Changed to accomodate Hobbit.
3302
3303 Tue Jun 24 00:31:47 1997 Jim Blandy <jimb@floss.red-bean.com>
3304
3305 * boot-9.scm, debug.scm, hcons.scm, lineio.scm, mapping.scm,
3306 poe.scm, slib.scm, tags.scm, threads.scm: Use normal list
3307 notation, instead of #/ notation.
3308
3309 * expect.scm (expect-strings): Pass regexp/newline flag to
3310 make-regexp.
3311
3312 Mon Jun 23 16:13:38 1997 Jim Blandy <jimb@floss.red-bean.com>
3313
3314 Fix inconsistencies in parsing of #/ style lists.
3315 * boot-9.scm (read-path-list-notation): New function.
3316 (parse-path-symbol): Deleted. Replaced by above.
3317 Plug in read-path-list-notation as the parser for #/ lists,
3318 instead of the anonymous lambda form calling parse-path-symbol.
3319 (Thanks to Maurizio Vitale.)
3320
3321 * boot-9.scm (make-list): Remove the definition of this function
3322 from the (ice-9 common-list) module; make the `init' argument
3323 optional in the scm module's definition, to match the deleted
3324 definition. Harmony reigneth? (Thanks to Bernard URBAN.)
3325
3326 Sun Jun 22 18:33:17 1997 Jim Blandy <jimb@floss.red-bean.com>
3327
3328 Try to detect when people are using one version of libguile and a
3329 different version of ice-9. People have been skewing things and
3330 sending in bug reports.
3331 * version.scm.in: New file, which the configure script munges to
3332 produce version.scm, which contains the ice-9 config stamp.
3333 * boot-9.scm: Compare the libguile and ice-9 config stamps;
3334 display a warning if the two are different.
3335 * Makefile.am: Install version.scm, but don't distribute it.
3336 Distribute version.scm.in, but don't install it.
3337 * Makefile.in: Regenerated.
3338
3339 Thu Jun 19 21:01:16 1997 Jim Blandy <jimb@floss.red-bean.com>
3340
3341 * slib.scm (slib:warn): Alias for WARN function.
3342
3343 Fri Jun 13 00:32:04 1997 Jim Blandy <jimb@floss.red-bean.com>
3344
3345 * boot-9.scm (struct-printer): Fix off-by-one error in range
3346 check. Correctly check for struct printer tag.
3347
3348 * expect.scm: Turn this into a module, (ice-9 expect).
3349 (expect-port, expect-timeout, expect-timeout-proc,
3350 expect-eof-proc, expect-char-proc, expect, expect-strings,
3351 expect-select): Make these public definitions.
3352 (expect-strings): Use make-regexp and regexp-exec, instead of
3353 regcomp and regexec. We've omitted the REG_NEWLINE flag; hope
3354 that's okay.
3355
3356 * boot-9.scm (with-regexp-parts): Comment this out. It has no
3357 users in the core, and relies on mildly hairy details of the old
3358 regexp interface.
3359
3360 * test.scm: Re-enable tests asserting that '() is true, and not a
3361 boolean. This stuff has been true for a while.
3362
3363 * boot-9.scm (ipow-by-squaring, butlast): Fix uses of outdated
3364 function names.
3365
3366 * boot-9.scm (with-excursion-getter-and-setter, q-rear): Doc
3367 fixes.
3368
3369 Wed Jun 11 00:31:40 1997 Jim Blandy <jimb@floss.red-bean.com>
3370
3371 * Makefile.in: Regenerated after xtra_PLUGIN_guile_libs change in
3372 ../configure.in.
3373
3374 Fri Jun 6 14:37:18 1997 Marius Vollmer <mvo@zagadka.ping.de>
3375
3376 * boot-9.scm (struct-printer): Bugfix: Check the layout of the
3377 vtable and not the one of the struct.
3378
3379 Wed Jun 4 23:27:16 1997 Marius Vollmer <mvo@zagadka.ping.de>
3380
3381 * boot-9.scm (struct-layout, %struct-printer-tag, struct-printer,
3382 make-struct-printer, set-struct-printer-in-vtable!): New bindings
3383 to support printing of structures.
3384 (record-type-vtable, make-record-type): Add slot to hold printing
3385 function and initialize it with something appropriate. Removed
3386 commented out printing code.
3387 (record-type-name, record-type-fields): Adjusted slot offsets.
3388 (%print-module): Reduce argument list to "mod" and "port".
3389
3390 Tue Jun 3 17:04:18 1997 Jim Blandy <jimb@totoro.cyclic.com>
3391
3392 * slib.scm (identity): New function, used by SLIB.
3393
3394 Sat May 31 18:57:12 1997 Gary Houston <ghouston@actrix.gen.nz>
3395
3396 * boot-9.scm: signal-handler, alarm-thunk: removed.
3397 don't define ticks-interrupt etc.
3398 top-repl: install signal handlers for SIGINT, SIGFPE, SIGSEGV, SIGBUS
3399 during call to scm-style-repl.
3400
3401 Fri May 30 18:08:10 1997 Jim Blandy <jimb@floss.cyclic.com>
3402
3403 * slib.scm (slib:load): Use primitive-load-path instead of
3404 basic-load. This is probably wrong, but hopefully the entire
3405 source access system will be revised soon anyway, and this will
3406 make require behave more like Emacs Lisp's require. If this
3407 breaks something, please let me know. Maybe this is real dumb.
3408
3409 Thu May 29 02:36:48 1997 Jim Blandy <jimb@floss.cyclic.com>
3410
3411 * regex.scm: Add a module declaration. Use DEFINE-PUBLIC everywhere.
3412 * boot-9.scm: If the `regex' feature is present, use the module
3413 (ice-9 regex).
3414
3415 Tue May 27 22:48:14 1997 Tim Pierce <twp@twp.tezcat.com>
3416
3417 * regex.scm: New file.
3418 * Makefile.am (subpkgdata_DATA): Add regex.scm.
3419 * Makefile.in: Regenerated.
3420
3421 Mon May 26 17:24:48 1997 Jim Blandy <jimb@totoro.cyclic.com>
3422
3423 * COPYING, boot-9.scm, debug.scm, emacs.scm, expect.scm, gtcl.scm,
3424 gwish.scm, hcons.scm, lineio.scm, mapping.scm, nonblocking.scm,
3425 oldprint.scm, poe.scm, r4rs.scm, source.scm, tags.scm, test.scm,
3426 threads.scm: New address for FSF.
3427
3428 Fri May 16 04:09:45 1997 Jim Blandy <jimb@floss.cyclic.com>
3429
3430 * debug.scm: Update copyright years; this file has been worked on
3431 in 1997.
3432
3433 Thu May 15 07:56:08 1997 Gary Houston <ghouston@actrix.gen.nz>
3434
3435 * expect.scm: use gettimeofday instead of get-internal-real-time
3436 and use a floating point timeout when calling select. Untested,
3437 since the regex library is currently AWOL.
3438
3439 Wed May 14 21:00:30 1997 Jim Blandy <jimb@floss.cyclic.com>
3440
3441 * boot-9.scm (eval-string): Function deleted; it was already
3442 implemented in C, so there's no point in making a divergable copy
3443 here.
3444
3445 Tue May 13 16:40:06 1997 Jim Blandy <jimb@floss.cyclic.com>
3446
3447 * Makefile.in: Regenerated, using automake-1.1p.
3448
3449 Tue May 13 16:40:06 1997 Jim Blandy <jimb@floss.cyclic.com>
3450
3451 * Makefile.in: Regenerated, using automake-1.1p.
3452
3453 Tue May 13 02:48:49 1997 Gary Houston <ghouston@actrix.gen.nz>
3454
3455 * boot-9.scm (error-catching-loop): don't read a line from
3456 current input when quit is encountered, the previous change
3457 fixes this too.
3458
3459 Mon May 12 19:00:21 1997 Jim Blandy <jimb@floss.cyclic.com>
3460
3461 * boot-9.scm (scm-style-repl): After reading an expression,
3462 consume any trailing newline (perhaps preceded by whitespace), to
3463 avoid screwing up GDB. More detail in comments.
3464
3465 Mon May 5 13:18:38 1997 Jim Blandy <jimb@floss.cyclic.com>
3466
3467 * Makefile.am (ETAGS_ARGS): New variable, since we're not treating
3468 the Scheme code like code yet.
3469 * Makefile.in: Resrac,husrched.
3470
3471 Wed Apr 30 15:25:15 1997 Marius Vollmer <mvo@zagadka.ping.de>
3472
3473 * boot-9.scm (link-dynamic-module): Do not catch errors from
3474 dynamic-link and dynamic-call. When the shared library exists it
3475 is now assumed to be suitable for a dynamic C module.
3476
3477 Fri Apr 25 21:21:35 1997 Marius Vollmer <mvo@zagadka.ping.de>
3478
3479 * boot-9.scm (process-use-modules): New function to support the
3480 use-modules macro
3481 (use-modules): throw an error iff one of the requested modules
3482 can't be found.
3483
3484 Tue Apr 29 06:54:46 1997 Gary Houston <ghouston@actrix.gen.nz>
3485
3486 * boot-9.scm: don't define timer-thunk or gc-thunk.
3487
3488 Sun Apr 27 17:56:09 1997 Jim Blandy <jimb@floss.cyclic.com>
3489
3490 * aclocal.m4: Removed; unnecessary, given changes of Apr 24.
3491
3492 * Makefile.am (subpkgdatadir): Use "ice-9" instead of "@module@";
3493 we're not using AM_INIT_GUILE_MODULE any more.
3494 * Makefile.in: Regeneratitetedrerd.
3495
3496 Thu Apr 24 01:33:33 1997 Jim Blandy <jimb@floss.cyclic.com>
3497
3498 Get 'make dist' to work again.
3499 * Makefile.am (EXTRA_DIST): Remove PLUGIN files.
3500 * Makefile.in: Regenerated, like two tons of fleas.
3501
3502 Changes for reduced Guile distribution: one configure script,
3503 no plugins.
3504 * configure.in, configure: Removed.
3505 * Makefile.in: Regenerated.
3506
3507 Sat Apr 19 08:03:50 1997 Jim Blandy <jimb@floss.cyclic.com>
3508
3509 * boot-9.scm (eval-string, command-line, load-user-init): New
3510 functions.
3511
3512 Sat Apr 12 08:27:05 1997 Gary Houston <ghouston@actrix.gen.nz>
3513
3514 * boot-9.scm (log10): defined.
3515
3516 Tue Apr 1 17:46:49 1997 Gary Houston <ghouston@actrix.gen.nz>
3517
3518 * expect.scm (expect-select): correct the millisecond timeout
3519 arithmetic (from Marko.Kohtala@ntc.nokia.com).
3520
3521 Mon Mar 31 03:23:19 1997 Gary Houston <ghouston@actrix.gen.nz>
3522
3523 * boot-9.scm (open-input-pipe, open-output-pipe): defined here
3524 instead of in libguile.
3525 (tm:sec etc.) new accessors for broken-down time.
3526 (set-tm:sec etc.) new setters for broken-down time.
3527
3528 Thu Mar 27 05:06:00 1997 Gary Houston <ghouston@actrix.gen.nz>
3529
3530 * boot-9.scm (netent:addrtype, servent:port): added missing
3531 procedures.
3532 (netent:net, servent:proto): repaired.
3533 (utsname:sysname etc.): new accessors for uname.
3534
3535 Tue Mar 25 03:04:03 1997 Gary Houston <ghouston@actrix.gen.nz>
3536
3537 * boot-9.scm (sockaddr:fam, sockaddr:path, sockaddr:addr,
3538 sockaddr:port): new functions.
3539
3540 Wed Mar 19 04:50:34 1997 Gary Houston <ghouston@actrix.gen.nz>
3541
3542 * boot-9.scm: define accessor procedures for the objects returned
3543 by getpw, getgr, gethost, getnet, getproto, getserv (e.g.,
3544 passwd:name, where the first component is the name of the C structure
3545 and the second is the unprefixed C member name.)
3546
3547 Tue Mar 18 18:39:31 1997 Gary Houston <ghouston@actrix.gen.nz>
3548
3549 * boot-9.scm (setpwent, setgrent, sethostent, setnetent, setprotoent,
3550 setservent): no longer take an argument, it was bogus.
3551
3552 Thu Mar 13 00:13:41 1997 Gary Houston <ghouston@actrix.gen.nz>
3553
3554 * boot-9.scm (scm-error): deleted, reimplemented in C.
3555
3556 Mon Mar 10 15:48:31 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3557
3558 * boot-9.scm (process-define-module): Modified to handle both
3559 keywords and symbols.
3560
3561 Sat Mar 8 04:32:44 1997 Gary Houston <ghouston@actrix.gen.nz>
3562
3563 * slib.scm: update read usage.
3564
3565 * r4rs.scm: update primitive-load usage.
3566 Don't define read-sharp.
3567
3568 * boot-9.scm: use read-hash-extend to install extra read syntax.
3569 (read-sharp): removed.
3570 Adjust usage of primitive-load-path, read, which no longer take
3571 case_i or read-sharp arguments.
3572
3573 Sat Mar 8 00:07:54 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3574
3575 * boot-9.scm: Added loading of session support module.
3576
3577 * debug.scm: Removed `display-application'. (Replaced by
3578 primitive procedure.)
3579
3580 * boot-9.scm (beautify-user-module!): Don't add the root module
3581 interface to the end of the use-list of the root module.
3582
3583 Thu Mar 6 07:26:34 1997 Gary Houston <ghouston@actrix.gen.nz>
3584
3585 * boot-9.scm: repl-quit, repl-abort: obsolete variables deleted.
3586
3587 Wed Mar 5 20:30:24 1997 Gary Houston <ghouston@actrix.gen.nz>
3588
3589 * boot-9.scm: check use-emacs-interface for emacs support.
3590
3591 Sun Mar 2 19:47:14 1997 Gary Houston <ghouston@actrix.gen.nz>
3592
3593 * boot-9.scm (scm-style-repl): call repl-report-start-timing if
3594 read gets EOF.
3595 * (exit): alias for quit.
3596
3597 Sun Mar 2 05:25:11 1997 Gary Houston <ghouston@actrix.gen.nz>
3598
3599 * boot-9.scm (error-catching-loop thunk): use a status variable to
3600 return the quit args.
3601 (scm-style-repl): call -quit, passing return value from
3602 error-catching-repl. Make -quit return its args.
3603 stand-alone-repl: comment out, since it seems unused.
3604
3605 (error-catching-loop thunk): discard trailing junk after a (quit).
3606
3607 Sat Mar 1 15:24:39 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3608
3609 * boot-9.scm: Removed the old printer code.
3610
3611 * r4rs.scm (apply, call-with-current-continuation): Added comment
3612 explaining why apply and call/cc need to be closures.
3613
3614 * boot-9.scm (apply, call-with-current-continuation): Bugfix:
3615 Removed. These definitions are already present in r4rs.scm.
3616
3617 * debug.scm (trace-entry, trace-exit): Check that we're on a repl
3618 stack before printing traced frames; Re-enable trace flag at end
3619 of handlers.
3620
3621 Sat Mar 1 00:10:38 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3622
3623 * debug.scm: Add hook for reset of trace level at abort.
3624
3625 * boot-9.scm (run-hooks): New procedure.
3626 (add-hooks!): New macro.
3627 Change hooks to use these functions.
3628
3629 * debug.scm: *Warning* This feature is a bit premature. I add
3630 it anyway because 1. it is very useful, and, 2. you can start
3631 making it less premature by complaining to me and by modifying
3632 the source! :-)
3633 (trace): Given one or more procedure objects, trace each one.
3634 Given no arguments, show all traced procedures.
3635 (untrace): Given one or more procedure objects, untrace each one.
3636 Given no arguments, untrace all traced procedures. The tracing in
3637 Guile have an advantage to most other systems: We don't create new
3638 procedure objects, but mark the procedure objects themselves.
3639 This means that also anonymous and internal procedures can be
3640 traced.
3641
3642 * boot-9.scm (error-catching-loop): Added handling of apply-frame
3643 and exit-frame exceptions.
3644
3645 * boot-9.scm (assert-repl-prompt, the-prompt-string): Removed.
3646 (set-repl-prompt!): Setter for repl prompt.
3647 (scm-style-repl): If prompt is #f, don't prompt; if prompt is a
3648 string, display it; if prompt is a thunk, call it and display its
3649 result; otherwise display "> ".
3650 (Change suggested by Roland Orre <orre@nada.kth.se>.)
3651
3652 * r4rs.scm (%load-verbosely): Reverted change to
3653 `module-defined?', since the module system isn't bootstrapped when
3654 we load r4rs.scm. This is just a temporary fix to make the
3655 repository version runnable.
3656
3657 Thu Feb 27 23:25:47 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3658
3659 * boot-9.scm: Removed the enabling of debug evaluator and
3660 recording of source code positions. This was placed there for our
3661 convenience, but it has already sneaked into the distribution
3662 once... so we'd better add this in our local copies instead when
3663 we need it. (These options are normally enabled at the end of
3664 boot-9.scm when loading the debug module.)
3665
3666 Thu Feb 27 16:04:45 1997 Marius Vollmer <mvo@zagadka.ping.de>
3667
3668 * boot-9.scm (module-defined?): New function.
3669 (macroexpand-1, macroexpand): Use local-ref instead of defined?
3670 and eval.
3671 * r4rs.scm (%load-verbosely): Use "module-defined?" instead of
3672 "defined?".
3673 * slib.scm (defined?): New function to take the place of the
3674 builtin "defined?". It allways examines the slib module.
3675
3676 Mon Feb 24 21:46:15 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3677
3678 * configure.in: Added AM_MAINTAINER_MODE
3679
3680 Sat Feb 15 04:51:20 1997 Gary Houston <ghouston@actrix.gen.nz>
3681
3682 * boot-9.scm (read-sharp): define directly, don't go through a
3683 %read-sharp layer.
3684
3685 Tue Feb 11 08:45:48 1997 Gary Houston <ghouston@actrix.gen.nz>
3686
3687 * boot-9.scm (uniform-vector-set!): use uniform-array-set1!, not
3688 uniform-vector-set1! which doesn't exist.
3689
3690 Mon Feb 10 03:01:48 1997 Mikael Djurfeldt <mdj@kenneth>
3691
3692 * boot-9.scm (backtrace): Removed. (A C version now exists in
3693 backtrace.c.)
3694
3695 Fri Jan 24 06:05:36 1997 Gary Houston <ghouston@actrix.gen.nz>
3696
3697 * boot-9.scm (read-line!, read-delimited!, read-delimited,
3698 read-line): new procedures, see libguile/ChangeLog.
3699
3700 Thu Jan 16 17:07:03 1997 Marius Vollmer <mvo@zagadka.ping.de>
3701
3702 Added dynamic linking of modules. See libguile/DYNAMIC-LINKING.
3703
3704 * boot-9.scm (split-c-module-name, convert-c-registered-modules,
3705 init-dynamic-module, dynamic-maybe-call,
3706 find-and-link-dynamic-module, link-dynamic-module,
3707 try-module-dynamic-link, registered-modules): New definitions for
3708 dynamic linking of modules.
3709 (resolve-module): Try to dynamically link the requested module
3710 after failing to load it as Scheme code.
3711
3712 Wed Jan 8 05:50:14 1997 Gary Houston <ghouston@actrix.gen.nz>
3713
3714 * boot-9.scm (getservbyport, getservbyname): remove stray %.
3715
3716 Tue Jan 7 20:02:24 1997 Jim Blandy <jimb@floss.cyclic.com>
3717
3718 * boot-9.scm (and=>): Rename THUNK argument to PROCEDURE, 'cos
3719 that's what it is.
3720
3721 * lineio.scm (make-line-buffering-input-port): Properly test for
3722 the case of an empty buffer list. The old code assumed that '()
3723 was false.
3724
3725 Mon Jan 6 01:13:53 1997 Mikael Djurfeldt <mdj@kenneth>
3726
3727 * boot-9.scm (use-modules): New macro (from Marius Vollmer).
3728 (use-modules <module name> ...) Put the the modules named by
3729 <module name> ... on the use list of the current module.
3730
3731 Sun Jan 5 15:52:59 1997 Jim Blandy <jimb@floss.cyclic.com>
3732
3733 * boot-9.scm (error-catching-loop): Remove message saying that
3734 typing "$" will put you in the debugger. This isn't implemented
3735 yet.
3736
3737 Sun Dec 22 23:27:25 1996 Jim Blandy <jimb@floss.cyclic.com>
3738
3739 * boot-9.scm (delq-all!): Function deleted; delq!'s semantics have
3740 been fixed, so this function is superfluous.
3741 (transform-usage-lambda): Use delq!, not delq-all!.
3742
3743 Tue Dec 17 20:36:45 1996 Marius Vollmer <mvo@zagadka.ping.de>
3744
3745 * boot-9.scm (resolve-module): New optional parameter that
3746 controls whether autoloading is attempted or not. Default is #t.
3747 (process-define-module): Don't autoload the defined module.
3748 (try-module-autoload): Don't autoload the directory modules.
3749
3750 * boot-9.scm (process-define-module): Ensure that the-scm-module
3751 is last in the `uses' list to allow shadowing builtin
3752 bindings. All :use-module options are added in the order they
3753 appear in the arguments but before anything already on the list
3754 (such as the-scm-module).
3755
3756 Wed Dec 11 21:06:05 1996 Gary Houston <ghouston@actrix.gen.nz>
3757
3758 * slib.scm (slib-parent-dir): throw error if #f returned from
3759 %search-load-path.
3760
3761 Sat Nov 30 23:57:28 1996 Tom Tromey <tromey@cygnus.com>
3762
3763 * PLUGIN/greet, PLUGIN/split.sed, PLUGIN/this.configure: Removed.
3764 * Makefile.am, aclocal.m4: New files.
3765 * configure.in: Updated for Automake.
3766
3767 Wed Nov 27 14:16:14 1996 Marius Vollmer <mvo@zagadka.ping.de>
3768
3769 * boot-9.scm (macroexpand-1, macroexpand), slib.scm
3770 (slib:features), r4rs.scm (%load-verbosely): "defined?" is now a
3771 function, use it accordingly.
3772
3773 Thu Nov 21 11:12:10 1996 Jim Blandy <jimb@floss.cyclic.com>
3774
3775 It's an "eval closure", not an "eval thunk." A thunk is a
3776 function of no arguments.
3777 * boot-9.scm (module-type): Rename module field.
3778 (make-module, eval-in-module, make-root-module,
3779 set-current-module): Uses changed.
3780 (module-eval-closure, set-module-eval-closure!,
3781 root-module-closure): Renamed from module-eval-thunk,
3782 set-module-eval-thunk!, root-module-thunk.
3783 (set-current-module): Change uses of *top-level-lookup-thunk* to
3784 *top-level-eval-closure*.
3785
3786 Wed Nov 20 14:45:27 1996 Jim Blandy <jimb@totoro.cyclic.com>
3787
3788 * slib.scm (slib-parent-dir): Use string-length, not length.
3789 (Thanks to Bernard Urban.)
3790
3791 Sat Nov 2 20:00:42 1996 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3792
3793 * boot-9.scm: The debugging evaluator and recording of positions
3794 aren't enabled by default any longer (they are switched on in
3795 debug.scm). But during development we want to have them also
3796 *inside* boot-9.scm. Therefore, two lines are added at the
3797 beginning of boot-9.scm to enable these.
3798
3799 Call `provide' so that `records' are included among the
3800 `*features*'.
3801
3802 The scheme for saving the stack has been adjusted: save-stack is
3803 now commonly available for saving the stack. Calling `save-stack'
3804 sets a flag `stack-saved?' which prevents overwriting the stack.
3805 `stack-saved?' is reset at `abort'.
3806
3807 Spelling correction: seperate --> separate.
3808
3809 Removed `:'s that had creeped into some comments.
3810
3811 The repl now doesn't print #<unspecified> results any longer
3812 If the user wants to see this, he can do
3813 (assert-repl-print-unspecified #t) in his startup file.
3814
3815 The user now gets a friendly message instead of a backtrace at
3816 error.
3817
3818 Added `before-read-hook'.
3819
3820 Load module (ice-9 emacs) if option `-e' was specified.
3821
3822 (provide): New function.
3823
3824 (error): Save stack at entry, so that Guile entrails won't show up
3825 in backtraces.
3826
3827 (backtrace): New function.
3828
3829 (save-stack): Can now take arbitrary number of stack narrowing
3830 specifier pairs. The first specifier in a pair controls inner
3831 border, the second the outer border. A number means cut that
3832 number of frames, a procedure object means cut until that object
3833 is found in operator position in a frame.
3834
3835 * debug.scm: Enable debugging evaluator and recording of positions
3836 by default.
3837
3838 * slib.scm (slib:load): Adapt to the new behavior of
3839 primitive-load: It doesn't any longer try both with and without
3840 ".scm" extension. (We don't want to use %search-load-path here.)
3841
3842 (implementation-vicinity): New function. slib requires it
3843
3844 (library-vicinity): Updated.
3845
3846 Load "require.scm" in the library-vicinity.
3847
3848 (install-require-vicinity, install-require-module): New functions.
3849
3850 Mon Oct 28 17:56:29 1996 Jim Blandy <jimb@floss.cyclic.com>
3851
3852 * boot-9.scm (load-from-path): New function.
3853
3854 * boot-9.scm (try-load, basic-try-load, try-load-module,
3855 try-load): Deleted. I don't think they're being used.
3856
3857 * Makefile.in (scm_files): Add r4rs.scm and test.scm to this list,
3858 so they'll get distributed.
3859
3860 Get Guile to be a little less chatty by default. The new user
3861 should see as little clutter as possible.
3862 * r4rs.scm (%load-verbosely): Make this #f by default.
3863 * boot-9.scm (scm-repl-verbose): Make this #f by default.
3864 (scm-style-repl): Don't run 'pk' on the value passed to quit.
3865
3866 * r4rs.scm: New file.
3867 * boot-9.scm: Load r4rs.scm, first thing.
3868 (OPEN_READ, OPEN_WRITE, OPEN_BOTH, *null-device*, open-input-file,
3869 open-output-file, open-io-file, close-input-port,
3870 close-output-port, close-io-port, call-with-input-file,
3871 call-with-output-file, with-input-from-port, with-output-to-port,
3872 with-error-to-port, with-input-from-file, with-output-to-file,
3873 with-error-to-file, with-input-from-string, with-output-to-string,
3874 with-error-to-string, the-eof-object): Definitions moved to
3875 r4rs.scm. Not all of them are R4RS, but those that are use those
3876 that are not.
3877 (load, %load-verbosely, %load-announce): Moved, along with code to
3878 set %load-hook, to r4rs.scm.
3879
3880 * test.scm: New file.
3881
3882 * boot-9.scm (integer?): Definition deleted, in favor of the one
3883 present in libguile (which used to be called int?). I have no
3884 idea why integer? didn't just call int? to begin with.
3885
3886 * boot-9.scm (<, <=, =, >, >=): Definitions in terms of <?, <=?,
3887 =?, >?, and >=? deleted; they're defined that way by libguile now.
3888
3889 * boot-9.scm (load): Simplified; primitive-load does most of this
3890 work now.
3891 (%load-announce-win): Removed; no longer used. Set %load-hook to
3892 call %load-announce.
3893
3894 Sun Oct 27 07:47:03 1996 Gary Houston <ghouston@actrix.gen.nz>
3895
3896 * boot-9.scm (stat:dev, stat:ino, stat:mode, stat:nlink, stat:uid,
3897 stat:gid, stat:rdev, stat:size, stat:atime, stat:mtime,
3898 stat:ctime, stat:blksize, stat:blocks) accessor functions for stat
3899 components.
3900 (file-is-directory?): use stat:type.
3901
3902 Fri Oct 25 03:34:47 1996 Jim Blandy <jimb@floss.cyclic.com>
3903
3904 * boot-9.scm (%read-sharp): Don't recognize the `#!' syntax here;
3905 that's now taken care of in libguile, and in a way compatible with
3906 SCSH (which this isn't).
3907
3908 Mon Oct 21 18:52:36 1996 Jim Blandy <jimb@totoro.cyclic.com>
3909
3910 * boot-9.scm: Formatting tweaks.
3911
3912 Fri Oct 18 01:03:08 1996 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
3913
3914 * boot-9.scm (handle-system-error): Added hooks before-error-hook,
3915 after-error-hook, before-backtrace-hook and after-backtrace-hook
3916 to the error handler. E.g.: fancy emacs support could plug into
3917 these.
3918 (save-stack): New function. The stack is now made differently
3919 depending on the stack id. (The motivation is to make a better
3920 choice regarding what stack frames to present to the user.)
3921 (error-catching-loop): Stack handling code moved outside into
3922 save-stack.
3923
3924 Thu Oct 17 20:33:08 1996 Gary Houston <ghouston@actrix.gen.nz>
3925
3926 * Makefile.in (scm_files): add expect.scm.
3927
3928 * expect.scm: new file ported from guile-iii.
3929
3930 * boot-9.scm: remove handle-system-error, after moving the code into
3931 error-catching-loop.
3932 Don't set 'throw-handler-default property on error keys.
3933 Just interpret (almost) any throw with 4 args as an error throw.
3934 Delete some try-load stuff that was already commented out.
3935
3936 Second thoughts, keep handle-system-error but call it from
3937 error-catching-loop.
3938
3939 Tue Oct 15 17:07:20 1996 Jim Blandy <jimb@floss.cyclic.com>
3940
3941 * boot-9.scm: Doc fixes.
3942 (make-module): Rework for readability.
3943 (make-root-module, make-scm-module): USES argument to make-module
3944 should be '(), not #f.
3945
3946 * boot-9.scm (try-load): %sys-load-path has been renamed to
3947 primitive-load-path; adjust call here.
3948
3949 Tue Oct 15 14:25:01 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
3950
3951 * boot-9.scm (signal-handler): Bugfix: Moved the recording of
3952 the stack to the correct place: when it is decided to generate an
3953 error-signal.
3954
3955 Mon Oct 14 22:20:30 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
3956
3957 * boot-9.scm (error-catching-loop, signal-handler,
3958 handle-system-error): Backtracing now works for signals aswell;
3959 Backtracing mechanism can now identify the stack root created by
3960 start-stack so that the user isn't exposed to system stack frames.
3961
3962 Mon Oct 14 06:05:42 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
3963
3964 * Makefile.in: Added threads.scm.
3965
3966 Mon Oct 14 04:21:51 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
3967
3968 * debug.scm (make-enable, make-disable): Simplified.
3969
3970 * boot-9.scm: Renamed %%throw-handler-default -->
3971 throw-handler-default.
3972 ((handle-system-error key . arg-list)): Changed the way errors are
3973 reported.
3974 ((scm-style-repl)): Wrap up the call to eval in a start-stack
3975 acro.
3976 ((error-catching-loop thunk)): Introduce a lazy-catch into
3977 error-catching-loop so that the stack can be captured.
3978
3979 Thu Oct 10 22:27:32 1996 Jim Blandy <jimb@totoro.cyclic.com>
3980
3981 * mapping.scm (hash-table-mapping): Explicitly request that
3982 make-vector fill new vectors with '(); this will make it easier to
3983 port Guile Scheme code to other Schemes.
3984 * boot-9.scm (make-print-style, make-print-table): Same.
3985
3986 Sun Oct 6 03:54:59 1996 Gary Houston <ghouston@actrix.gen.nz>
3987
3988 * boot-9.scm (load): rewritten again.
3989 Append "." to the default %load-path.
3990 (feature?): new function: checks for a symbol in the features list.
3991 (module-local-variable): remove apparently useless (caddr (list m v
3992 ...))
3993 (%load-announce): minor formatting change.
3994 (file-exists?): use access? if posix is featured.
3995 (file-is-directory?): use stat if i/o-extensions is featured.
3996 (try-module-autoload module-name): use file-exists? before
3997 file-is-directory?
3998
3999 Sat Oct 5 18:54:03 1996 Mikael Djurfeldt <mdj@kenneth>
4000
4001 * boot-9.scm: Added conditional loading of threads.scm.
4002
4003 * threads.scm: New file. Modified from the Cygnus-r0.3
4004 distribution.
4005
4006 * boot-9.scm (error-catching-loop): Added handling of key
4007 `switch-repl'.
4008
4009 * boot-9.scm: Name change %%bad-throw --> bad-throw.
4010
4011 Wed Oct 2 23:38:44 1996 Jim Blandy <jimb@totoro.cyclic.com>
4012
4013 * boot-9.scm (make-record-type, record-constructor): Don't assume
4014 the empty list is false when parsing the argument list.
4015
4016 Mon Sep 30 22:15:50 1996 Jim Blandy <jimb@totoro.cyclic.com>
4017
4018 * boot-9.scm (signal-handler): Clean up logic.
4019
4020 * boot-9.scm (load): Assume %load-path is always bound.
4021
4022 Sat Sep 28 00:15:37 1996 Gary Houston <ghouston@actrix.gen.nz>
4023
4024 * boot-9.scm (error): replace another throw with scm-error. Throw
4025 to 'misc-error instead of 'error (no need to distinguish these.)
4026 Don't set up 'error as a key.
4027 Set up regex-error as a key, if regex is available.
4028 (signal-handler): use scm-error, not throw.
4029
4030 (%try-load, try-load-with-path, %load, load-with-path,
4031 basic-try-load-with-path, basic-load-with-path,
4032 try-load-module-with-path,load-module-with-path): deleted, since
4033 they seem redundant.
4034 (try-load): define using %try-load, not try-load-with-path.
4035 (load): rewritten. load tries to open the file directly and
4036 with a .scm extension before searching the library directories
4037 (should "." be added to %load-path? then load could still open
4038 directly files starting with "/").
4039 (try-module-autoload): use load, not load-with-path.
4040 (%load-indent): deleted, -2 was causing errors.
4041
4042 (%read-sharp): use port-line, not line-number.
4043
4044 Fri Sep 27 16:23:51 1996 Jim Blandy <jimb@totoro.cyclic.com>
4045
4046 * boot-9.scm (%%bad-throw): Delete definition. 1) It's very
4047 straightforward to provide the equivalent functionality using
4048 (catch #t ...), so there's no need for the extra complexity. 2)
4049 Outside the context of a read-eval-print loop (which Guile should
4050 not require) it's not clear we should do anything more complicated
4051 than print an error and exit; the user or REPL can establish
4052 something better if it wants. 3) In that case, it's much more
4053 robust to just do it in the C code.
4054
4055 Tue Sep 24 06:53:04 1996 Gary Houston <ghouston@actrix.gen.nz>
4056
4057 * boot-9.scm (%try-load): define using primitive-load. Previously
4058 %try-load itself was the primitive.
4059 (load-with-path): use scm-error instead of %load-announce-lossage.
4060 Errors are thrown to 'misc-error instead of 'could-not-load.
4061 (%load-announce-lossage): deleted.
4062
4063 Mon Sep 23 00:16:31 1996 Mikael Djurfeldt <mdj@kenneth>
4064
4065 * boot-9.scm (warn, scm-style-repl): Use C printer instead of `print'.
4066 (make-record-type type-name fields): Temporarily remove support
4067 for printing of records (not possible yet with C printer).
4068
4069 Fri Sep 20 00:24:27 1996 Gary Houston <ghouston@actrix.gen.nz>
4070
4071 * boot-9.scm (file-exists?, file-is-directory): catch only
4072 system-error, not every kind of error.
4073 (scm-error): new procedure.
4074
4075 Thu Sep 19 16:02:46 1996 Jim Blandy <jimb@totoro.cyclic.com>
4076
4077 * boot-9.scm: Formatting tweaks.
4078
4079 Wed Sep 18 09:07:37 1996 Gary Houston <ghouston@actrix.gen.nz>
4080
4081 * boot-9.scm (%%handle-system-error key): remove the code for
4082 SCM-style errors. handle the case that an unexpected number
4083 of args are supplied.
4084 (%%system-errors): removed.
4085 (error): redefine using a throw with key and 4 args.
4086 ('error): associate 'error, 'error-signal keys with
4087 %%handle-system-error.
4088 (%%default-error-handler): removed.
4089 (signal-handler): throw with 4 args and use the error-signal key.
4090 Create an error message instead of using numerical codes.
4091 (%%bad-throw): call error instead of throw if key not found.
4092
4093 Tue Sep 17 04:11:28 1996 Gary Houston <ghouston@actrix.gen.nz>
4094
4095 * boot-9.scm: initialize new error keys (see libguile/ChangeLog).
4096 (%%handle-system-error key): check subr is not #f before printing.
4097 Recognize %s (embed an argument using "display") and
4098 %S (embed an argument using "write").
4099
4100 Sun Sep 15 03:55:35 1996 Gary Houston <ghouston@actrix.gen.nz>
4101
4102 * boot-9.scm (%%handle-system-error key): set args and rest to
4103 the empty list if they are #f.
4104 Initialize out-of-range as an error key.
4105
4106 Sat Sep 14 03:41:15 1996 Gary Houston <ghouston@actrix.gen.nz>
4107
4108 * PLUGIN/REQ: remove the "ice-9 lgh" line which causes a cycle.
4109
4110 * boot-9.scm: remove leading %% from references to '%%system-error.
4111 (%%handle-system-error): don't pass all the thrown arguments when
4112 aborting, just the key and subr.
4113 Remove the code to "Install default handlers for built-in errors."
4114 Remove the definition of the syserror procedure.
4115 Associate 'numerical-overflow with default handler.
4116
4117 Fri Sep 13 04:58:11 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
4118
4119 * boot-9.scm: Name change: value-ref --> local-ref
4120 resolved-ref --> nested-ref Motivation: conformance to the other
4121 dictionary operators: list-ref operates on list, vector-ref
4122 operates on vector, nested-ref operates on nested namespace,
4123 local-ref operates on the local nested namespace.
4124
4125 Sat Sep 7 06:44:47 1996 Gary Houston <ghouston@actrix.gen.nz>
4126
4127 * boot-9.scm (%%handle-system-error): recognise errors thrown
4128 by lgh-error (fill-message etc.)
4129 (fill-message): check first whether args is null.
4130 (fill-message): bug fix and check that args is a list.
4131
4132 Thu Sep 5 11:33:41 1996 Jim Blandy <jimb@floss.cyclic.com>
4133
4134 * boot-9.scm: %load-path is initialized in C code now.
4135 (implementation-vicinity, parse-path): Deleted, along with code to
4136 initialize %load-path.
4137
4138 * boot-9.scm (in-vicinity): If the vicinity doesn't end with a
4139 "/", use one to separate it from the file.
4140
4141 Thu Aug 29 23:05:11 1996 Thomas Morgan <tmorgan@gnu.ai.mit.edu>
4142
4143 * boot-9.scm (%load-path): Add the site directory.
4144 Add the directory named after the version number.
4145 Prepend the version number to the other directories in the path.
4146 Simplify by mapping the common prefix onto each item.
4147 * Makefile.in (datadir, pkgdatadir, pkgverdatadir, subpkgdatadir,
4148 sitedatadir): New definitions.
4149 (libparent, libdir, install_path): Replaced by above.
4150 (install): Create the above directories.
4151 Put the source files into subpkgdatadir.
4152 (uninstall): Remove the above directories.
4153
4154 Thu Aug 29 21:48:47 1996 Jim Blandy <jimb@floss.cyclic.com>
4155
4156 Don't use the PLUGIN system to gather information for the
4157 Makefile's distribution and installation targets; just put it all
4158 in the Makefile directly.
4159 * PLUGIN/this.configure (scm_files, aux_files): Remove sections
4160 for these.
4161 * configure.in: Remove code that gets and substitutes scm_files and
4162 aux_files.
4163 * Makefile.in (scm_files, aux_files): Write out the list of files
4164 here, where people expect to find them.
4165
4166 Fri Aug 23 06:44:36 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
4167
4168 * boot-9.scm: Preliminary solution: optionally load the debug
4169 module. Changed "gls" to "guile1.0b3".
4170
4171 * debug.scm: New file: debug extensions.
4172
4173 Wed Aug 21 13:06:56 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
4174
4175 * boot-9.scm (print-vector): Renamed weak-hash-table? -->
4176 weak-key-hash-table?. (Again!)
4177
4178 Tue Aug 20 07:31:39 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
4179
4180 * boot-9.scm (print-vector, macro-table, xformer-table):
4181 Renamed weak-hash-table --> weak-key-hash-table.
4182
4183 * poe.scm (funcq-memo): Renamed weak-hash-table -->
4184 weak-key-hash-table.
4185
4186 Sat Aug 3 06:16:35 1996 Gary Houston <ghouston@actrix.gen.nz>
4187
4188 * boot-9.scm (*null-device*): global constant from goonix.
4189 (move->fdes): adjusted for boolean primitive-move->fdes. return
4190 the modified port, always set revealed count to 1 (SCSH compatible).
4191 (release-port-handle port): from goonix (SCSH compatible).
4192 (%open-file): removed.
4193 (open-input-file, open-output-file, file-exists?, file-is-directory?):
4194 modified for open-file change (does not return #f).
4195
4196 Thu Aug 1 02:52:42 1996 Jim Blandy <jimb@totoro.cyclic.com>
4197
4198 * Makefile.in (dist-dir): New target for new dist system.
4199 (manifest): Deleted.
4200 * PLUGIN/this.configure (aux_files): Removed PLUGIN; it's a
4201 directory, and needs special treatment in the dist-dir target.
4202
4203 Thu Aug 1 09:00:21 1996 Gary Houston <ghouston@actrix.gen.nz>
4204
4205 * boot-9.scm: remove the wrappers for '%' system primitives,
4206 now that they throw errors directly.
4207 remove make-simple-wrapper and similar functions.
4208 protect a call to getenv which may now throw an exception.
4209
4210 Wed Jul 31 23:44:42 1996 Gary Houston <ghouston@actrix.gen.nz>
4211
4212 * boot-9.scm (false-if-exception): new macro.
4213
4214 Fri Apr 19 13:53:08 1996 Tom Lord <lord@beehive>
4215
4216 * The more things change...
4217
4218