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