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