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