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