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