*** empty log message ***
[bpt/guile.git] / ice-9 / ChangeLog
1 2000-08-11 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
2
3 * r5rs.scm (interaction-environment): Removed definition. (Is now
4 provided by libguile/modules.c.)
5
6 * safe-r5rs.scm (null-environment): Bugfix: Should include
7 syntactic bindings.
8
9 * boot-9.scm (record-constructor, record-accessor,
10 record-modifier, scm-style-repl): Add second arg to eval.
11 (read-hash-extend #\.): Ditto. (This is actually a bugfix!)
12 (eval-in-module): Redefined to be eval and deprecated.
13
14 * syncase.scm (eval): Add second arg both in definition and use.
15
16 * slib.scm (slib:eval): Use eval instead of eval-in-module.
17 (defmacro:eval): Eval in (interaction-environment).
18
19 * safe-r5rs.scm (eval): Removed definition.
20
21 * emacs.scm (emacs-eval-request):
22 (emacs-symdoc): (This procedure needs updating!)
23
24 2000-08-10 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
25
26 * boot-9.scm: Added note about dependency in modules.h to
27 definition of module-type.
28
29 * Makefile.am (ice9_sources): Added receive.scm, srfi-8.scm.
30
31 * receive.scm, srfi-8.scm: New files.
32
33 * boot-9.scm (scm-style-repl): Print multiple values on successive
34 lines.
35 (process-define-module): Bugfix: Make sure that exports are done
36 *after* all used interfaces has been added.
37
38 2000-07-24 Marius Vollmer <mvo@zagadka.ping.de>
39
40 * common-list.scm (uniq): Made tail-recursive. Thanks to thi!
41
42 2000-07-13 Dirk Herrmann <D.Herrmann@tu-bs.de>
43
44 * boot-9.scm (expt): In case of negative integer exponents return
45 an exact result if the input paramters were exact. Thanks to
46 Mikael for the suggestion.
47
48 2000-07-12 Dirk Herrmann <D.Herrmann@tu-bs.de>
49
50 * boot-9.scm (expt): Make sure that integer-expt is only called
51 if the exponent is a non-negative integer.
52
53 2000-07-01 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
54
55 * boot-9.scm (process-define-module): Bugfix: Only check the CDR
56 for export args.
57
58 2000-06-27 Dirk Herrmann <D.Herrmann@tu-bs.de>
59
60 * popen.scm: gc-thunk is deprecated. Use after-gc-hook instead.
61
62 2000-06-16 Dirk Herrmann <D.Herrmann@tu-bs.de>
63
64 * common-list.scm (intersection, set-difference, remove-if,
65 remove-if-not): Made tail-recursive. Thanks to William Webber
66 for the hint.
67
68 (delete-if!, delete-if-not!): Renamed parameter from `list' to
69 `l' in order to avoid confusion. Note: These functions are not
70 tail recursive yet.
71
72 2000-06-21 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
73
74 * boot-9.scm: Turned `the-module', `*top-level-lookup-closure*',
75 and `scm:eval-transformer' into fluids.
76
77 * boot-9.scm (purify-module!, module-export!): New procedures.
78 (export): Rewritten using `module-export!'.
79 (process-define-module): New define-module options: pure, export.
80 See NEWS.
81 (scm-style-repl): Added optional module argument.
82
83 * null.scm, r5rs.scm, safe-r5rs.scm, safe.scm: New modules.
84
85 2000-06-20 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
86
87 * session.scm (make-fold-modules): Detect circular references in
88 module graph. (Thanks to Matthias Köppe.)
89
90 2000-06-20 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
91
92 * session.scm: Use module (ice-9 regex).
93 (help): Regexp-quote a name given as a symbol.
94
95 2000-06-16 Dirk Herrmann <D.Herrmann@tu-bs.de>
96
97 * common-list.scm (list*): Removed, since this function is
98 implemented as a primitive in libguile/list.c.
99
100 2000-06-12 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
101
102 * session.scm (help): Warn user if 'regex isn't provided.
103
104 * Makefile.am (ice9_sources): Removed getopt-gnu-style.scm.
105
106 * getopt-gnu-style.scm: Removed deprecated module.
107
108 2000-06-11 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
109
110 * boot-9.scm (make-autoload-interface): Set init value for uses to
111 '() instead of #f.
112 (make-modules-in): Name modules with their real (= full) names.
113 (the-root-module, the-scm-module): Named `(guile)' instead of
114 `the-root-module'.
115 (the-scm-module): Set kind to 'interface.
116
117 * Makefile.am (ice9_sources): Replaced doc.scm with
118 documentation.scm.
119
120 * session.scm (ice-9): Use module (ice-9 documentation).
121 (name): Use the name property if everything else fails.
122 (apropos-fold): New procedure.
123 (apropos-internal): Re-implement in terms of `apropos-fold'.
124 (help): Rewritten.
125
126 * doc.scm: Removed module (ice-9 doc).
127
128 * documentation.scm: New module (ice-9 documentation).
129
130 2000-06-08 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
131
132 * doc.scm (documentation-files): Renamed from `doc-files'.
133 (write-all): Removed.
134 (find-documentation): Renamed from `documentation'. Return
135 documentation string instead of printing it. Not exported.
136
137 Tue Jun 6 09:21:28 2000 Greg J. Badros <gregb@go2net.com>
138
139 * session.scm: Update references to `proc-doc' to be
140 `proc-documentation'
141
142 * doc.scm: Cleaned up a great deal. Put variables at the top of
143 the file, eliminated `object-documentation' that was broken
144 (referencing Scwm), drop `help' as session.scm has a better
145 supported version of that procedure. Rename `proc-doc' to
146 `proc-documentation' -- `procedure-documentation' is a primitive
147 getter function, so I use the shorter name for this more useful
148 function. (Alternatively, we could rename the primitive
149 getter...)
150
151 2000-06-05 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
152
153 * boot-9.scm (error-catching-loop): Inform about debugger on error.
154
155 2000-06-04 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
156
157 * boot-9.scm (scm-module-closure): New procedure: Was previously
158 anonymous. Now needed in modules.c.
159 (make-module): Use `standard-eval-closure' to create the eval
160 closure.
161
162 2000-05-14 Gary Houston <ghouston@arglist.com>
163
164 * boot-9.scm (load-user-init): rewritten. first work out the home
165 directory and then try to open the file (previously it could try
166 to open a file in more than one place). catch exceptions when
167 trying to get a directory from the user database. don't check
168 that ~/.guile is not a directory before trying to load it (a lack
169 of ~/.guile is not a crime, but if the file is not valid for any
170 reason then primitive-load will raise an error).
171
172 2000-05-11 Dirk Herrmann <D.Herrmann@tu-bs.de>
173
174 * boot-9.scm (abs): Don't set to magnitude. abs now does not
175 accept complex numbers as parameter.
176
177 2000-05-09 Marius Vollmer <mvo@zagadka.ping.de>
178
179 * common-list.scm (delete-if-not!): Bug fix of bug fix: change
180 label of named let to `delete-if-not'. Sorry.
181
182 2000-05-08 Marius Vollmer <mvo@zagadka.ping.de>
183
184 * common-list.scm (doc fixes): Talk about `true values' instead of
185 `#t' when a function treats all non-#f valuers the same.
186 (remove-if-not): Bug fix: call remove-if-not
187 instead of remove-if when iterating.
188 (delete-if-not!): Bug fix: call delete-if-not! instead of
189 delete-if! when iterating.
190
191 2000-04-16 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
192
193 * r4rs.scm (close-input-port, close-output-port): Removed.
194
195 2000-04-13 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
196
197 * session.scm (help): New macro. Prints helpful information.
198
199 2000-04-10 Gary Houston <ghouston@arglist.com>
200
201 * popen.scm (open-process): after forking, close all ports except
202 the end of the pipe to the parent. otherwise move->fdes and
203 the exec'd program and the exit handlers can interfere with file
204 descriptors still in use in parent ports.
205
206 2000-04-09 Gary Houston <ghouston@arglist.com>
207
208 * popen.scm (close-process-quietly): new procedure. use it from
209 reap-pipes to avoid errors or hanging during background cleanup.
210
211 2000-04-04 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
212
213 * format.scm (format:obj->str): Handle circular references. Also,
214 print improper lists with (x y . z) syntax rather than as
215 individual pairs. (This code should probably be integrated into C
216 level facilities. It is currently terribly slow.)
217
218 2000-04-03 Michael Livshin <mlivshin@bigfoot.com>
219
220 * streams.scm (stream-fold, stream-for-each): don't use named let,
221 because it prevents the gc from junking the stream argument.
222
223 Thu Mar 9 08:05:08 2000 Greg J. Badros <gjb@cs.washington.edu>
224
225 * slib.scm: Back-out change to software-type -- renamed
226 slib:software-type to software-type, and leave it non-public.
227
228 Thu Mar 2 12:20:52 2000 Greg J. Badros <gjb@cs.washington.edu>
229
230 * boot-9.scm: Drop unused definition of sfx function -- thanks
231 Dirk Hermann!
232
233 Wed Mar 1 12:21:02 2000 Greg J. Badros <gjb@cs.washington.edu>
234
235 * streams.scm: Doc patch from Richard Kim, using MIT Scheme as
236 source of the numerous very short changes.
237
238 Sun Feb 13 18:03:19 2000 Greg J. Badros <gjb@cs.washington.edu>
239
240 * slib.scm: Rename software-type to slib:software-type and make it
241 public.
242
243 * r4rs.scm: Added documentation; largely cut and pasted from R4RS
244 info pages.
245
246 Sun Feb 13 17:49:29 2000 Greg J. Badros <gjb@cs.washington.edu>
247
248 * common-list.scm: Added documentation; largely cut and pasted
249 from slib docs.
250
251 2000-02-11 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
252
253 * format.scm (format): Reintroduce (define format format:format)
254 so that the binding in the public interface of the module will be OK.
255
256 2000-01-30 Gary Houston <ghouston@arglist.com>
257
258 * boot-9.scm (find-and-link-dynamic-module): pass strings, not symbols,
259 to string-append.
260
261 2000-01-29 Gary Houston <ghouston@arglist.com>
262
263 * expect.scm (expect): don't call char-ready? before expect-select,
264 since select now checks port buffers itself. don't bother to check
265 the time first either, since expect-select does it.
266
267 Thu Jan 20 12:57:36 2000 Greg J. Badros <gjb@cs.washington.edu>
268
269 * format.scm: Use (variable-set! (builtin-variable 'format)) to
270 re-define format to be format:format (instead of just define,
271 which interacts poorly with the module system). Thanks to Shuji
272 Narazaki for this change.
273
274 Tue Jan 11 10:49:22 2000 Greg J. Badros <gjb@cs.washington.edu>
275
276 * boot-9.scm expect.scm, syncase.scm: Switch to new style
277 `simple-format' message strings: substitute ~A for %s, and ~S for
278 %S.
279
280 * boot-9.scm: Added (define format simple-format) to expose that
281 primitive via the simpler name until format.scm is loaded.
282
283 2000-01-09 Marius Vollmer <mvo@zagadka.ping.de>
284
285 * boot-9.scm (try-using-libtool-name): Do not bother to look
286 inside libtool ".la" file, dynamic-link does this for us now.
287
288 1999-12-15 Gary Houston <ghouston@freewire.co.uk>
289
290 * slib.scm (library-vicinity, home-vicinity,
291 scheme-implementation-type, scheme-implemenation-version):
292 use define-public to export from the module.
293
294 Wed Dec 15 08:32:09 1999 Greg J. Badros <gjb@cs.washington.edu>
295
296 * doc.scm: Use `%library-dir' and the other system directories,
297 not the quickly defuncted `library-dir' that I added before
298 realizing the former existed. Thanks Brad Knotwell!
299
300 Sun Dec 12 19:18:52 1999 Greg J. Badros <gjb@cs.washington.edu>
301
302 * Makefile.am, doc.scm: Added doc.scm.
303
304 1999-12-12 18:54:06 1999 Greg J. Badros <gjb@cs.washington.edu>
305
306 * popen.scm, slib.scm: Added some docstrings for procedures that
307 were primitives that I encountered in posix.texi.
308
309 1999-11-19 Gary Houston <ghouston@freewire.co.uk>
310
311 * Makefile.am (ice9_sources): add arrays.scm.
312
313 * boot-9.scm: load arrays.scm if 'array is provided.
314
315 * arrays.scm: new file with stuff from boot-9.scm.
316
317 1999-11-18 Gary Houston <ghouston@freewire.co.uk>
318
319 * boot-9.scm (read-hash-extend to set up arrays): add 'l' for
320 long_long uniform vectors.
321
322 1999-11-17 Gary Houston <ghouston@freewire.co.uk>
323
324 * networking.scm (sethostent, setnetent, setprotoent, setservent):
325 take an optional argument STAYOPEN. default is #f.
326
327 1999-10-05 Jim Blandy <jimb@savonarola.red-bean.com>
328
329 * Makefile.in: Deleted from CVS repository. Run the autogen.sh
330 script to create generated files like this one.
331
332 1999-09-23 Gary Houston <ghouston@freewire.co.uk>
333
334 * boot-9.scm (load-user-init): check that the posix feature is
335 available before using getpw and getuid.
336 (top-repl): don't install handlers for SIGINT etc., without posix.
337 (file-is-directory?): use 'posix instead of i/o-extensions to
338 check for stat.
339 (load-user-init): use file-exists? and file-is-directory? to
340 check for .guile, instead of stat.
341 (file-is-directory?): don't display the file name if posix not
342 available.
343 (feature?): I guess this is deprecated. redefined using "provided?"
344 and changed users in boot-9.scm to "provided?".
345 Conditionally load posix.scm and networking.scm.
346
347 posix.scm, networking.scm: new files. Move definitions from
348 boot-9.scm if they are only useful with posix/networking available.
349
350 * Makefile.am (ice9_sources): add posix.scm, networking.scm.
351
352 1999-09-17 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
353
354 * debugger.scm (read-and-dispatch-commands): Handle other throws
355 than 'exit-debugger.
356
357 * boot-9.scm (before-signal-stack): New fluid.
358 (top-repl): Set before-signal-stack in the signal handler.
359
360 * debugger.scm (eval-handler): Handle unhandled exceptions.
361
362 1999-09-16 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
363
364 * debugger.scm ("p"): New alias for "evaluate";
365 Mark module with :no-backtrace.
366 ("position"): New command.
367 (source-position, display-position): New procedures.
368 (display-source): Display position of expression, if available.
369 (catch-user-errors): Return #f on error. (Commands are expected
370 to return a valid state.)
371 (read-and-dispatch-command): Bugfix: Return old state on error.
372
373 1999-09-16 Jim Blandy <jimb@savonarola.red-bean.com>
374
375 * regex.scm (regexp-substitute/global): Handle the end of the
376 match list and an empty match list identically. (Thanks to Greg
377 Badros.)
378
379 1999-09-15 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
380
381 * debugger.scm ("evaluate"): Replaced `write-line' with calls to
382 `write' and `newline' since write-line doesn't write but displays.
383
384 1999-09-12 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
385
386 * debugger.scm ("evaluate"): Newline after no env announcement.
387
388 * debug.scm, emacs.scm: Updated copyright notices.
389
390 * boot-9.scm (make-autoload-interface): Bugfix.
391 (top-repl): Autoload debugger.
392
393 * debugger.scm ("backtrace"): Don't pass length param to
394 display-backtrace if it wasn't explicitly given by the user.
395 (write-frame-long/application): Also print corresponding source
396 expression.
397 ("evaluate"): Evaluate in local environment frame, if existent;
398 Handle errors.
399
400 1999-09-11 Jim Blandy <jimb@savonarola.red-bean.com>
401
402 * format.scm (format:format-work): Use #\tab and #\page instead of
403 slib:form-feed and slib:tab. (Thanks to Ceri Storey.)
404
405 * format.scm (format:abort): Call error, not slib:error.
406
407 1999-09-11 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
408
409 * boot-9.scm (using-readline?): New procedure: Returns #t if
410 readline is used by the repl run by this thread.
411 (handle-system-error): Print "Backtrace:" before backtrace since
412 this is no longer done by display-backtrace.
413
414 * debug.scm (frame-number->index): Optionally take stack as
415 argument.
416
417 * debugger.scm: Use the frame number abstraction which allows for
418 both forward and backward views of the stack
419 (write-frame-index-short, write-frame-index-long):
420 Use selector `frame-number';
421 (select-frame-absolute): Use frame-number->index.
422 ("backtrace"): Use builtin backtrace printing.
423 Use (ice-9 debug).
424 Use readline conditionally.
425
426 1999-09-11 Jim Blandy <jimb@savonarola.red-bean.com>
427
428 * regex.scm (fold-matches, list-matches): New functions.
429 (regexp-substitute/global): Rewritten again in terms of
430 list-matches, to get null match behavior correct.
431
432 * regex.scm (regexp-substitute/global): Rewrite so that 'post at
433 the end of the item list actually causes a tail call. (Thanks to
434 Jan Nieuwenhuizen.)
435
436 1999-09-11 Marius Vollmer <mvo@zagadka.ping.de>
437
438 * readline.scm: Moved to ../guile-readline.
439
440 * boot-9.scm (top-repl): Removed code for activating readline.
441
442 * Makefile.am: Removed mention of readline.scm.
443
444 * Makefile.in: Regenerated.
445
446 1999-09-11 Jim Blandy <jimb@savonarola.red-bean.com>
447
448 Delete the test which compares the configuration date of libguile
449 with the configuration date of ice-9. This test yields too many
450 false positives to be helpful. For example, if you build Guile
451 for several architectures but have them all share a "share"
452 directory (which is supposed to work), then all but one
453 architecture's Guile will complain that the configuration dates
454 don't match. Which is true, but indicates nothing wrong.
455 * boot-9.scm: Delete code which compares ice-9-config-stamp with
456 libguile-config-stamp.
457 * version.scm.in: Delete.
458 * Makefile.am (ice9_generated): Delete.
459 (subpkgdata_DATA): Remove ice9_generated.
460 (EXTRA_DIST): Remove version.scm.in.
461 * Makefile.in: Regenerate.
462
463 1999-09-11 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
464
465 * debugger.scm: New file: Initial version of the Guile debugger
466 written by Chris Hanson. (The debugger isn't finished, but is
467 included in Guile anyway since it is already quite useful.)
468
469 * boot-9.scm (top-repl): Use (ice-9 debug) (ice-9 debugger) (ice-9
470 session) (ice-9 threads) (ice-9 regex) from guile-user only if
471 top-repl is called. This makes startup time for scripts 30% of
472 what it was before... Removed redundant code for loading of
473 readline.
474
475 * Makefile.am (ice9_sources): Added debugger.scm.
476
477 1999-08-29 Keisuke Nishida <kxn30@po.cwru.edu>
478
479 * boot-9.scm (try-module-autoload): Use %search-load-path.
480
481 1999-08-24 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
482
483 * boot-9.scm: Removed old style hooks.
484 (inherit-print-state): Rwwritten to use port-with-print-state.
485
486 1999-08-20 James Blandy <jimb@mule.m17n.org>
487
488 Remove support for the #/ path list syntax entirely.
489 * boot-9.scm (read-path-list-notation,
490 read-path-list-notation-warning): Deleted.
491 Don't register read-path-list-notation-warning as a reader for
492 objects starting with '#/'.
493
494 1999-08-05 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
495
496 GOOPS needs the observer protocol specified for the new module
497 system. Here's a simple version for the old module system:
498 * boot-9.scm (module-observers, module-weak-observers,
499 module-observer-id, set-module-observers!,
500 set-module-observer-id!): New accessors.
501 (module-type): Added slots `observers', `weak-observers' and
502 `observer-id'.
503 (module-observe, module-observe-weak, module-unobserve,
504 module-modified): New procedures.
505 (module-make-local-var!, module-add!, module-remove!,
506 module-clear!, module-define!, module-use!): Call module-modified.
507
508 1999-07-29 Marius Vollmer <mvo@zagadka.ping.de>
509
510 * boot-9.scm (error-catching-loop): Correct non-RnRS usage of internal
511 defines.
512
513 1999-07-19 Jim Blandy <jimb@savonarola.red-bean.com>
514
515 * streams.scm: New module, contributed by Michael Livshin.
516 * Makefile.am (ice9_sources): List it.
517 * Makefile.in: Regenerated.
518
519 * boot-9.scm (read-delimited!): Put the terminator in the correct
520 position.
521
522 1999-06-29 Mikael Djurfeldt <mdj@mdj-pc.nada.kth.se>
523
524 * readline.scm: Bugfix: Avoid getting the continued-lines prompt
525 at multiple calls to read.
526 (promtp2): Variable for continued-lines prompt.
527 (make-readline-port): Use prompt2.
528 (set-readline-prompt!): New optional arg which sets
529 continued-lines prompt.
530
531 * boot-9.scm (top-repl): Set/clear readline prompts before/after
532 reading expressions.
533
534 1999-06-18 Jim Blandy <jimb@savonarola.red-bean.com>
535
536 * ls.scm (ls, lls): Handle no arguments as meaning to look in
537 `(current-module)'. (Patch from Thien-Thi Nguyen.)
538
539 1999-06-14 Jim Blandy <jimb@savonarola.red-bean.com>
540
541 * string-fun.scm (split-before-predicate, split-after-predicate,
542 split-discarding-predicate): Make these public. (Thanks to
543 Thien-Thi Nguyen.)
544
545 1999-06-13 Gary Houston <ghouston@easynet.co.uk>
546
547 * more changes to expect.scm, to avoid the one-character lookhead
548 that was introduced to fix the $ problem:
549
550 * expect.scm (expect): call the match proc an extra time at end
551 of file and set the eof? argument appropriately. call
552 expect-eof-proc only if the last call didn't match.
553 * expect.scm (expect-strings): change port to eof? in match proc.
554 * expect.scm (expect-regexec): take an eof indicator as an argument
555 instead of a port.
556
557 1999-06-09 Jim Blandy <jimb@savonarola.red-bean.com>
558
559 * Makefile.am (ice9_sources): Add popen.scm to list.
560 * Makefile.in: Regenerated.
561
562 Fixes for expect from Gary Houston <ghouston@easynet.co.uk>:
563
564 * expect.scm (expect-regexec): define 'eof-next?'. I don't
565 know why it was missing. also don't peek for end of lines
566 unless expect-strings-exec-flags contains regexp/noteol.
567 (expect-strings-exec-flags): initialise to regexp/noteol.
568
569 Gary Houston's open-buffer port patches:
570
571 1999-04-01 Gary Houston <ghouston@easynet.co.uk>
572
573 * popen.scm: applied fixes from Greg Harvey. use a guardian
574 and a gc-thunk so that cleanup is done if a pipe is garbage
575 collected or closed with close-port. use a weak hash-table instead of
576 an alist.
577
578 1999-03-20 Gary Houston <ghouston@easynet.co.uk>
579
580 * expect.scm (expect): call the match proc with the port instead.
581 (expect-strings): use peek-char to get the next char. this has
582 the advantage of getting the handling of $ "correct", but the
583 disadvantage of needing to get (and maybe block for) an extra character
584 from the port when it may not be needed. hence:
585 (expect-strings-exec-flags): new variable/parameter, supplies
586 flags for regexp-exec. if this includes regexp/noteol, then
587 automatic regexp/noteol handling (requiring an extra peeked char)
588 is enabled. default is regexp/noteol.
589 (expect-strings-compile-flags): new variable/parameter, supplies
590 flags for make-regexp. default is regexp/newline.
591
592 1999-03-15 Gary Houston <ghouston@easynet.co.uk>
593
594 * expect.scm (expect): call the match proc with an extra char,
595 peeked from the stream.
596 (expect-strings): build a match proc which takes the extra char.
597 (expect-regexec): take an extra arg "eof-next?" and use it
598 to decide whether the regexp/noteol flag should be added.
599
600 1999-02-26 Gary Houston <ghouston@easynet.co.uk>
601
602 * boot-9.scm (top-repl): don't flush all ports at exit.
603 (error-catching-loop): likewise.
604
605 1998-12-23 Gary Houston <ghouston@easynet.co.uk>
606
607 * boot-9.scm (scm-style-repl): -read: don't call
608 consume-trailing-whitespace if val is eof object. Allows
609 exiting repl with single control-D.
610
611 1998-12-06 Gary Houston <ghouston@easynet.co.uk>
612
613 * boot-9.scm (error-catching-loop): don't force output within
614 error catching loop after quit received.
615 (top-repl): flush all ports when the repl terminates.
616
617 * boot-9.scm (error-catching-loop): flush all ports before
618 primitive exit if non-interactive.
619 force-output on current-error-port if interactive.
620
621 * boot-9.scm (reopen-file): deleted.
622 * popen.scm (open-output-pipe, open-input-pipe): moved from
623 boot-9.scm.
624 * popen.scm: new file.
625
626 1999-06-04 Dirk Herrmann <D.Herrmann@tu-bs.de>
627
628 * boot-9.scm (iota): replaced by a tail recursive version.
629 (reverse-iota): removed.
630
631 1999-06-03 Mikael Djurfeldt <mdj@mdj-pc.nada.kth.se>
632
633 * optargs.scm (lambda*): Bugfix: Replaced ARGLIST -->
634 non-optional-args. (Thanks to David Lutterkort.)
635
636 1999-05-09 Jim Blandy <jimb@savonarola.red-bean.com>
637
638 * string-case.scm: Removed; functions moved to libguile/strop.c
639 (which could be dynamically linked in the future anyway).
640 * Makefile.am (ice9_sources): Don't list string-case.scm.
641 * Makefile.in: Regenerated.
642 * format.scm: Don't bother importing (ice-9 string-case).
643
644 1999-05-02 Jim Blandy <jimb@savonarola.red-bean.com>
645
646 * boot-9.scm (provided?): New function.
647
648 * Makefile.am: Add string-case.scm and format.scm to ice9_sources.
649 * Makefile.in: Regenerated.
650
651 * string-case.scm: New file, brought in from SLIB, and adapted to
652 Guile's module system.
653
654 * format.scm: New file, brought in from SLIB, with the following
655 changes:
656 (format:format): If the first argument is the format string, stick
657 a #f on the front of it, so it is now a valid CL format argument
658 list. This is easier than changing everyplace else (like the
659 error formatter) that expects it to be in CL form. The other
660 clause which explicitly tests for this case is now dead code.
661 (format:format-work): Allow `@' and `:' in either order, as per
662 modern CL behavior.
663 (format:num->cardinal): Don't assume that an elseless if returns
664 '() when the condition is false.
665
666 1999-04-17 Jim Blandy <jimb@savonarola.red-bean.com>
667
668 * Makefile.in: Regenerated.
669
670 1999-04-08 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
671
672 * boot-9.scm: Provide 'values.
673
674 1999-03-21 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
675
676 * boot-9.scm (process-define-module, use-syntax): Bugfix:
677 :use-syntax should add syntax to using module, not current module.
678 (internal-use-syntax): Removed.
679
680 1999-03-21 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
681
682 * session.scm (apropos-internal): Modified to comply with new
683 argument order for hash-fold.
684
685 1999-03-19 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
686
687 * boot-9.scm (try-load-module): New procedure. Broken out from
688 resolve-module.
689 (resolve-module): Bugfix: Make it possible for a module at a
690 deeper level (x y z) to depend on a module on a higher (x y).
691
692 This also has the desired side-effect that multiple attempts to
693 load a module (e.g. with `use-modules') work until source is
694 actually found for the module (e.g. because the correct catalog
695 has been added to the load path).
696
697 Use try-load-module.
698
699 1999-03-18 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
700
701 * session.scm (system-module): New procedure. Used to switch a
702 module between system and user state.
703
704 1999-03-16 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
705
706 * session.scm (apropos-internal): Rewritten using hash-fold.
707
708 * emacs.scm, session.scm, slib.scm): Added :no-backtrace in module
709 definition.
710
711 1999-03-14 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
712
713 * boot-9.scm (make-record-type): Use `set-struct-vtable-name!' to
714 associate a name to the record type descriptor so that the object
715 system can create a wrapper class for it.
716
717 1999-03-12 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
718
719 Improvement of backtraces: Introduces a new stack narrowing
720 specifier, #t, for the inner cut. If the inner cut is specified
721 by #t, `make-stack' will throw away inner stack frames (most
722 recent calls on call chain) up to but excluding the first user
723 stack frame encountered.
724
725 This specifier is now used in `save-stack' so that the call
726 `(save-stack)' will get the new behaviour. [It is recommended that
727 any error reporting functions written by the user have this call
728 on the outermost expression level (i.e. as a member of the lambda
729 list).]
730
731 Modules are partitioned into "user" and "system" modules. [I know
732 that some names used here are silly, but I don't have more time to
733 spend on a better solution, especially considering that the module
734 system will be replaced. But if people have better ideas, then
735 please tell me!]
736
737 System modules are created by adding :no-backtrace among the
738 define-module switches:
739
740 (define-module (foo)
741 :no-backtrace)
742
743 Modules which doesn't have the :no-backtrace specifier are user
744 modules.
745
746 A stack frame is classified as a user frame if it has source code
747 associated with it and if this source code can be proven to come
748 from a user module. If it can be proven to come from a system
749 module it is a system frame.
750
751 Frames which can't be classified, e.g. application frames, are cut
752 away if they occur between system frames, but are left on the
753 stack if they occur between the last system frame and the first
754 user frame encountered. (Note that the first user frame
755 encountered is the last user code being evaluated!)
756
757 In some cases the system part of the call chain is introduced by
758 frames which should but can't be proven to be system frames. The
759 following workaround has been implemented: The cutting proceeds
760 over application frames where the operator is marked by the
761 `system-procedure' property. (This has been used to cut away
762 generic function dispatch code in the object system.)
763
764 * boot-9.scm (set-system-module!): New procedure: Set system/user
765 status of a module.;
766 Mark `the-root-module' and `the-scm-module' as system modules.
767 (process-define-module): Add new keyword :no-backtrace.
768
769 * boot-9.scm (environment-module): Bugfixed.
770 (set-module-eval-closure!): Add a pointer back from the eval
771 closure to the module.
772
773 * emacs.scm (emacs-load): Reset port filename after transfer.
774
775 1999-03-03 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
776
777 * slib.scm (make-random-state): Added for compatibility.
778
779 1999-02-16 Maciej Stachowiak <mstachow@alum.mit.edu>
780
781 * optargs.scm (lambda*): Handle empty argument lists properly.
782
783 1999-02-15 Jim Blandy <jimb@savonarola.red-bean.com>
784
785 Fix from Russ McManus:
786 * getopt-long.scm (parse-option-spec): Store 'optional as the
787 value-required? field for options that take optional values.
788 (process-short-option): Grab a value for the option when it takes
789 either an optional or required value.
790
791 1999-02-12 Jim Blandy <jimb@savonarola.red-bean.com>
792
793 * getopt-long.scm: Remove debugging calls to `pk'.
794
795 * getopt-long.scm: Return list of ordinary arguments as the value
796 of the '() key, not `rest'.
797
798 A new argument-processing package from Russ McManus.
799 * getopt-long.scm: New file.
800 * Makefile.am (ice9_sources): Added getopt-long.scm.
801 * Makefile.in: Regenerated.
802
803 1999-02-09 Maciej Stachowiak <mstachow@alum.mit.edu>
804
805 * optargs.scm: New file.
806 * Makefile.am (ice9_sources): Add optargs.scm here. Makefile.in
807 not regenerated because I don't have the right version of Automake.
808
809 1999-02-06 Jim Blandy <jimb@zwingli.cygnus.com>
810
811 * and-let*.scm: New file, from Michael Livshin.
812 * Makefile.am (ice9_sources): Add and-let* here.
813 * Makefile.in: Regenerated.
814
815 1999-01-11 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
816
817 * slib.scm (install-require-module): Fixed the kludge which loads
818 the slib catalog: Doesn't anylonger assume that the feature tested
819 for isn't loaded.
820
821 1998-12-14 Jim Blandy <jimb@zwingli.cygnus.com>
822
823 * Makefile.in: Regenerated.
824
825 1998-12-14 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
826
827 * boot-9.scm (process-define-module): Reverted the change of
828 1998-11-23 which caused loading of object code if :use-module was
829 applied to the module itself.
830
831 1998-12-11 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
832
833 * Makefile.am: Removed setf.scm.
834
835 * setf.scm: Removed. 1. It was buggy. 2. It was unschemey.
836 (These shortcomings were my fault.)
837
838 1998-12-10 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
839
840 * boot-9.scm (environment-module): New procedure.
841
842 1998-12-07 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
843
844 * Makefile.am: Added setf.scm.
845
846 1998-12-05 Christian Lynbech <chl@tbit.dk>
847
848 * setf.scm: New file. Adds the new forms `setf!' and `setter'
849 which implements generalized references a la Common LISP.
850
851 1998-12-02 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
852
853 * boot-9.scm (process-define-module): Added new specifier
854 :autoload MODULENAME BINDINGS to the define-module form.
855 The autoload specifier tells the module system to load the module
856 MODULENAME at the first occasion that any variable with its name
857 among BINDINGS is referenced.
858 (make-autoload-interface): New procedure: Constructs a stand-in
859 for the public interface for the module to be autoloaded.
860
861 1998-12-01 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
862
863 * boot-9.scm (*suppress-old-style-hook-warning*): Set this to #t
864 if you don't want the old style hook warnings.
865
866 1998-12-01 Christian Lynbech <chl@tbit.dk>
867
868 * boot-9.scm (try-using-libtool-name): Fix check on dlname to make
869 sure that it isn't empty, as it is when we are only buidling
870 static libraries.
871
872 1998-11-27 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
873
874 * session.scm (arity): New procedure.
875
876 1998-11-26 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
877
878 * boot-9.scm: Use run-hook instead of run-hooks everywhere.
879
880 1998-11-26 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
881
882 * boot-9.scm (run-hooks, add-hook!, remove-hook!): Added temporary
883 code for backward compatibility until people have had time to
884 adapt to the new hooks.
885
886 1998-11-23 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
887
888 * boot-9.scm (beautify-user-module!): Beautify also if public
889 interface is set to the module itself. In this way we can use
890 beautify-user-module! to beautify a module prepared for object
891 code.
892 (process-define-module): Special case: Try to load object code as
893 well if a module does :use-module on itself.
894
895 * boot-9.scm: Bugfix: Since boot-9.scm is now loaded from
896 invoke_main_func, we can no longer be sure that all modules have
897 been registered when boot-9.scm is loaded.
898 (register-modules): New function: Register and tag modules
899 registered by scm_register_module_xxx since last call to this
900 function. Modules are tagged with the dynamic object passed as
901 argument. (Already linked modules should be tagged with #f.)
902 (init-dynamic-module, link-dynamic-module): Call register-modules
903 first to register linked modules.
904
905 * boot-9.scm (init-dynamic-module): Remove module from
906 registered-modules as soon as possible in case we are recursively
907 invoked; Set public interface before doing the dynamic-call.
908
909 * boot-9.scm (map-in-order): Removed (replaced by scm_serial_map).
910 (abort-hook, before-error-hook, after-error-hook,
911 before-backtrace-hook, after-backtrace-hook, before-read-hook,
912 after-read-hook, exit-hook): Make hooks with `make-hook'.
913
914 * boot-9.scm: Make hooks first class citizens and make them easier
915 to use from C:
916 (make-hook, add-hook!, remove-hook!, run-hooks): Moved to
917 libguile/feature.c.
918
919 * boot-9.scm: Added warnings about bindings used in
920 libguile/modules.c: the-module, set-current-module,
921 make-modules-in, beautify-user-module!, module-eval-closure.
922
923 1998-11-21 Mikael Djurfeldt <mdj@kenneth>
924
925 * boot-9.scm (the-environment): New special form: Returns an
926 object representing the current local evaluation environment.
927 This object can be used in `local-eval' and `defined?'.
928
929 1998-11-13 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
930
931 * boot-9.scm (collect): New syntax. Similar to begin but returns
932 a list of the results of all forms in the sequence instead of the
933 result of the last form.
934
935 1998-11-10 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
936
937 * boot-9.scm (values, call-with-values): Moved here from
938 syncase.scm.
939
940 * syncase.scm (values, call-with-values): Moved to boot-9.scm.
941
942 * boot-9.scm (readline-options, readline-enable, readline.disable,
943 readline-set!: New options interface.
944
945 * readline.scm (readline-port): Use readline-options-interface.
946
947 1998-11-05 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
948
949 * boot-9.scm: Set the repl start module in `top-repl' instead of
950 at the end of boot-9.scm.
951
952 1998-11-01 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
953
954 * emacs.scm (format): Bugfix: Handle multiple arguments
955 correctly. (Thanks to Thien-Thi Nguyen.)
956
957 1998-11-01 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
958
959 * boot-9.scm (exit-hook): New hook: Is run at the very end of an
960 interactive session.
961 (top-repl): Run exit-hook on exit.
962
963 * readline.scm (readline-port): Maybe read history; Maybe write
964 history at exit (add to exit-hook).
965
966 Fri Oct 30 15:15:37 1998 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
967
968 * readline.scm (make-readline-port): Bugfixed last change...
969
970 1998-10-28 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
971
972 * readline.scm (make-readline-port): Don't set prompt to "... " if
973 read line was empty.
974
975 1998-10-19 Jim Blandy <jimb@zwingli.cygnus.com>
976
977 * boot-9.scm, debug.scm, expect.scm, hcons.scm, lineio.scm,
978 r4rs.scm, slib.scm, threads.scm: Update copyright years.
979
980 * getopt-gnu-style.scm, slib.scm: Add copyright notice.
981
982 Talked to Stallman. Actually, the syntax-case copyright is no
983 problem. Duh.
984 * Makefile.am (ice9_sources): Revert last change.
985 * syncase.scm, psyntax.pp, psyntax.ss: Added again.
986 * Makefile.in: Regeneretade.
987
988 * boot-9.scm: Don't assume that this file is loaded just before
989 entering a read-eval-print loop. Turn code to load (ice-9 emacs)
990 into...
991 (load-emacs-interface): New function.
992 (top-repl): Call it, if use-emacs-interface is defined and true.
993 At this point, we *do* know we're about to enter a REPL.
994
995 We can't include Kent Dybvig's syntax-case macro expander in the
996 core Guile distribution, because we don't have copyright
997 assignments for this code. We can certainly distribute them as a
998 separate package, but Guile should be FSF code.
999 * syncase.scm, psyntax.pp, psyntax.ss: Removed.
1000 * Makefile.am (ice9_sources): Removed syncase.scm, psyntax.pp, and
1001 psyntax.ss.
1002 * Makefile.in: Regenerated.
1003
1004 * Makefile.am (ice9_sources): Add getopt-gnu-style.scm.
1005 * Makefile.in: Regenerated.
1006
1007 1998-10-18 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
1008
1009 * boot-9.scm: Added extended read syntax for byte vectors #y(...)
1010 and short vectors #h(...).
1011
1012 1998-10-14 Jim Blandy <jimb@zwingli.cygnus.com>
1013
1014 * calling.scm (excursion-function-syntax): Use a sequence of
1015 set!'s, not a single multi-variable set!; we removed support for
1016 that syntax a long time ago. (Thanks to Shuji Narazaki.)
1017
1018 1998-10-12 Jim Blandy <jimb@zwingli.cygnus.com>
1019
1020 * r4rs.scm (OPEN_READ, OPEN_WRITE, OPEN_BOTH): Don't bother
1021 testing software-type here. That's the least of our Windows
1022 porting issues, and it's done wrong anyway.
1023
1024 1998-10-09 Jim Blandy <jimb@zwingli.cygnus.com>
1025
1026 * boot-9.scm (read-path-list-notation-warning): New function:
1027 print a warning the first time we see `#/' notation.
1028
1029 * q.scm (sync-q!, q?, q-remove!, q-push!, enq!): Lots of bugs, and
1030 (eq? #f '()) assumptions. Make functions that aren't documented
1031 to return anything else return the queue itself. (Bug report from
1032 Michael Livshin --- thanks!)
1033
1034 1998-08-21 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1035
1036 * debug.scm (trace-entry, trace-exit): Removed re-enabling of
1037 trace flag.
1038
1039 * boot-9.scm (make-options): Bugfix: Changed pair? --> list? in
1040 order to allow the empty list as arg.
1041 (error-catching-loop): Use `with-traps' to create a dynamic
1042 context with traps enabled.
1043
1044 1998-08-19 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
1045
1046 * boot-9.scm: Removed (ice-9 regex) from use-list of (guile)
1047 module.
1048 (try-using-libtool-name): Removed dependency on (ice-9 regex).
1049
1050 1998-08-15 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
1051
1052 * boot-9.scm: Make the root module use (ice-9 regex) if
1053 available. The dynamic linking facilities in boot-9.scm are
1054 currently dependent upon regular expressions. My change of
1055 1998-07-14 removed (ice-9 regex) from the use-list of the root
1056 module and thereby destroyed dynamic linking.
1057
1058 1998-07-29 Jim Blandy <jimb@zwingli.cygnus.com>
1059
1060 * Makefile.in: Regenerated using the last public version of
1061 automake, not the hacked Cygnus version.
1062
1063 1998-07-28 Jim Blandy <jimb@zwingli.cygnus.com>
1064
1065 * Makefile.in: Regenerated, after removing Totoro kludge.
1066
1067 1998-07-28 Jim Blandy <jimb@totoro.red-bean.com>
1068
1069 * getopt-gnu-style.scm: New file. (Thanks to Russ McManus.)
1070
1071 1998-07-26 Jim Blandy <jimb@zwingli.cygnus.com>
1072
1073 * Makefile.in Rebuilt, for config changes in parent dir.
1074
1075 1998-07-21 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1076
1077 * readline.scm (make-readline-port): Set prompt string to "... "
1078 after first read line. (Thanks to Richard Polton.)
1079
1080 1998-07-19 Jim Blandy <jimb@zwingli.cygnus.com>
1081
1082 * lineio.scm (make-line-buffering-input-port): Don't use
1083 ungetc-char-ready?, since we don't provide that function any
1084 more. The unread-string function doesn't interact properly with
1085 any of the standard I/O functions anyway. (Thanks to Andrew
1086 Archibald.)
1087
1088 * hcons.scm (hashq-cons-assoc): Don't assume the empty list is
1089 false. Return false when we cannot find a matching entry in the
1090 list. (Thanks to Andrew Archibald.)
1091
1092 1998-07-16 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
1093
1094 * boot-9.scm (export, export-syntax): New special forms: Export
1095 bindings from a module. `(export name1 name2 ...)' can be used at
1096 the top of a module (after `define-module') to specify which names
1097 should be exported. It can be used as an alternative to
1098 `define-public'. `export-syntax' works equivalently to `export'
1099 but is intended for export of syntactic keywords.
1100 (Thanks to Thien-Thi Nguyen.)
1101
1102 1998-07-15 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
1103
1104 * boot-9.scm: Renamed module `(guile-repl)' --> `(guile-user)'.
1105
1106 1998-07-14 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1107
1108 * boot-9.scm: Let the user start in module `(guile-repl)' instead
1109 of module `(guile)'. Also make sure that `(guile-repl)' uses
1110 suitable modules. This change improves Guile stability
1111 substantially since bindings will only be copied from the root
1112 module: If the user redefines builtins in `(guile-repl)' it won't
1113 affect the internal operation of Guile itself.
1114
1115 1998-06-19 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
1116
1117 * boot-9.scm (load-module): When loading files from within files
1118 themselves being loaded: Use the directory path of the file being
1119 loaded as root for relative filenames. (After suggestion by
1120 Steven G. Johnson.)
1121
1122 1998-06-15 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1123
1124 * emacs.scm (emacs-load): New feature: Eval in specified module.
1125
1126 1998-06-14 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1127
1128 * readline.scm: Typo in regex module name.
1129
1130 1998-06-13 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
1131
1132 * readline.scm (apropos-completion-function): regexp-quote text to
1133 be completed.
1134
1135 1998-06-11 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1136
1137 * debug.scm, emacs.scm: Bugfix: Treat `the-last-stack' as a fluid.
1138
1139 1998-06-09 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1140
1141 * boot-9.scm: Check that (current-input-port) is a tty before
1142 enabling readline. (Thanks to Michael N. Livshin.)
1143
1144 1998-06-07 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1145
1146 * boot-9.scm (use-syntax): Turned into a macro inorder to be
1147 similar in use to `use-modules'.
1148 Example: (use-syntax (ice-9 syncase)) will 1. load the module
1149 (ice-9 syncase), and, 2. install the procedure `syncase' as eval
1150 transformer.
1151 (internal-use-syntax): New procedure.
1152 (process-define-module): Use `internal-use-syntax'.
1153
1154 1998-05-19 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1155
1156 * Makefile.am (ice9_sources): Add emacs.scm.
1157
1158 1998-05-13 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1159
1160 * readline.scm: Use the new readline facilities: Add the
1161 possibility to control input and output ports; Add apropos
1162 completion.
1163
1164 * boot-9.scm: Antirevert Jim's readline code which he reverted
1165 19971027 and adapt it to the current readline interface.
1166
1167 * boot-9.scm (top-repl): Only enable readline if not using the
1168 Emacs interface; Only use repl prompt when using the readline port
1169 from repl-read. (We don't want to see it when calling `read'.)
1170
1171 * boot-9.scm (remove-hook!): Parenthesis bug.
1172
1173 1998-05-11 Mikael Djurfeldt <mdj@kenneth>
1174
1175 * boot-9.scm: Load readline module if readline is present.
1176
1177 * readline.scm (apropos-completion-function): New procedure:
1178 Symbolic completion. (Thanks to Andrew Archibald!)
1179
1180 1998-04-22 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1181
1182 * boot-9.scm (process-define-module): Added keyword use-syntax.
1183
1184 1998-04-19 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1185
1186 * nonblocking.scm: Removed. libguile is now inherently
1187 nonblocking through the use of scm_internal_select.
1188
1189 * emacs.scm: Removed use of nonblocking.scm.
1190
1191 * gwish.scm, gtcl.scm: Removed. tcltk.scm has made these
1192 obsolete.
1193
1194 1998-04-15 Mikael Djurfeldt <mdj@nada.kth.se>
1195
1196 * runq.scm (runq-control): Corrected spelling of enqueue!.
1197 (Thanks to Karl M. Hegbloom.)
1198
1199 1998-03-30 Mikael Djurfeldt <mdj@nada.kth.se>
1200
1201 * boot-9.scm: Added new run-time option interface eval-options.
1202
1203 1998-03-28 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1204
1205 * boot-9.scm (remove-hook!): New macro. (Thanks to Maciej
1206 Stachowiak.)
1207
1208 1998-01-30 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1209
1210 * threads.scm: Added simple error and signal handler.
1211 (make-thread, begin-handler): Use this handler. The most
1212 important effect of this is that signals get unmasked.
1213 Previously, when a signal was thrown signals remained masked
1214 (signals get masked when a signal is taken) which influenced other
1215 threads.
1216
1217 1998-01-01 Tim Pierce <twp@skepsis.com>
1218
1219 A better fix to the SLIB identity problem -- thanks to Marius Vollmer.
1220 * slib.scm (identity): Unmake public.
1221 (slib:eval): Evaluate inside `slib-module'.
1222
1223 1997-12-24 Tim Pierce <twp@skepsis.com>
1224
1225 * boot-9.scm: Doc fix.
1226
1227 * slib.scm (identity): Made public.
1228 (home-vicinity): New function (from SLIB/Template.scm).
1229
1230 1997-12-13 Tim Pierce <twp@skepsis.com>
1231
1232 * boot-9.scm (read-line): Rewritten to call %read-line for
1233 improved speed. Minor user-visible changes: the new functions are
1234 hardwired to treat the LFD character as signifying end-of-line, so
1235 changing `scm-line-incrementors' will no longer affect the
1236 behavior of read-line. On platforms which do not represent
1237 end-of-line with a LFD character, read-line should behave more
1238 like native line-processing facilities, but there is still a ways
1239 to go here.
1240
1241 Sat Nov 29 01:24:46 1997 Mikael Djurfeldt <mdj@kenneth>
1242
1243 * boot-9.scm (error-catching-loop, save-stack): `the-last-stack'
1244 is now a fluid.
1245
1246 1997-11-28 Tim Pierce <twp@skepsis.com>
1247
1248 * boot-9.scm (find-and-link-dynamic-module): If a module directory
1249 contains a .la file (a libtool support file), attempt to extract
1250 the shared library name from that file. If the .la file does not
1251 exist, try to link against a .so file. Libtool-generated compiled
1252 modules should load more cleanly in Guile now.
1253 (try-using-libtool-name, try-using-sharlib-name): New functions.
1254
1255 Sun Nov 9 06:10:59 1997 Gary Houston <ghouston@actrix.gen.nz>
1256
1257 * boot-9.scm (set-batch-mode?!, batch-mode?): initialize more
1258 usefully so they will work from a script.
1259
1260 1997-10-31 Marius Vollmer <mvo@zagadka.ping.de>
1261
1262 * boot-9.scm (inherit-print-state): Moved definition to the
1263 neighborhood of the record code.
1264
1265 Mon Oct 27 02:05:49 1997 Jim Blandy <jimb@totoro.red-bean.com>
1266
1267 * boot-9.scm: Revert changes to this file from Oct 23. It turns
1268 out to interact badly with the Emacs support and the Tcl/Tk
1269 support. It's not a high enough priority at the moment to be
1270 worth fixing. I'm leaving the other readline support in, though.
1271
1272 Sat Oct 25 14:23:22 1997 Jim Blandy <jimb@totoro.red-bean.com>
1273
1274 * Makefile.am: Include readline.scm in the list of files to be
1275 installed, so Guile can find it for interactive use.
1276 * Makefile.in: Regenerated.
1277
1278 Thu Oct 23 01:00:33 1997 Jim Blandy <jimb@totoro.red-bean.com>
1279
1280 Add support for readline function.
1281 * readline.scm: New module.
1282 * boot-9.scm (repl-reader): New function.
1283 (scm-style-repl): Call repl-reader, instead of doing the reading
1284 ourselves. Remove repl-report-reset; it was never used for
1285 anything.
1286 (top-repl): If we've got the readline primitives, then redefine
1287 repl-reader to use them.
1288 If we've got the readline primitives, import the readline module.
1289
1290 * ls.scm (ls, lls): Don't assume (eq? #f '()).
1291
1292 Wed Oct 22 18:26:57 1997 Jim Blandy <jimb@totoro.red-bean.com>
1293
1294 * calling.scm, common-list.scm, ls.scm, q.scm, runq.scm,
1295 string-fun.scm: Added copyright notices; reformatted.
1296
1297 Thu Oct 9 05:44:00 1997 Gary Houston <ghouston@actrix.gen.nz>
1298
1299 * expect.scm: (expect-regexec): new procedure, use it in
1300 expect-strings to fix the => syntax under the new regex system.
1301 (top): include regex module in define-module statement.
1302
1303 Wed Oct 8 03:16:01 1997 Gary Houston <ghouston@actrix.gen.nz>
1304
1305 * (error-catching-loop): new local variable "interactive". if
1306 #f, abort terminates the process.
1307 (set-batch-mode?!, batch-mode?): new closures, defined in
1308 error-catching-loop. the names are from scsh.
1309
1310 1997-10-06 Marius Vollmer <mvo@zagadka.ping.de>
1311
1312 * boot-9.scm (inherit-print-state): If NEW-PORT contains a
1313 print-state, throw it away.
1314
1315 Fri Oct 3 12:00:00 Mikael Djurfeldt <mdj@nada.kth.se>
1316
1317 * boot-9.scm (struct-layout): Use `vtable-index-layout' instead of
1318 `0'.
1319
1320 Thu Oct 2 12:00:00 Mikael Djurfeldt <mdj@nada.kth.se>
1321
1322 * boot-9.scm (struct-printer, make-struct-printer,
1323 set-struct-printer-in-vtable!, *struct-printer*): Removed.
1324 (record-type-vtable, make-record-type): Don't use make-struct-printer.
1325 (record-type-vtable): User fields "prpr" (printer is no longer a
1326 user field).
1327 (record-type-name, record-type-fields): Decreased slot index by
1328 one; Use `vtable-offset-user'.
1329
1330 Thu Oct 2 12:00:00 Marius Vollmer <mvo@zagadka.ping.de>
1331
1332 * boot-9.scm (inherit-print-state): New experimental function.
1333
1334 Tue Sep 30 13:12:48 1997 Jim Blandy <jimb@totoro.red-bean.com>
1335
1336 Suggestion and script from Maciej Stachowiak:
1337 * boot-9.scm: Split off modules into separate, autoloadable files.
1338 This reduces startup time from 10.5s to 5.5s (user cpu).
1339 * calling.scm, common-list.scm, ls.scm, q.scm, runq.scm,
1340 string-fun.scm: New files, containing stuff that used to be in
1341 boot-9.scm.
1342 * Makefile.am (ice9_sources): List new files here, for
1343 distribution and installation.
1344 * Makefile.in: Regenerated.
1345
1346 Mon Sep 29 23:53:55 1997 Jim Blandy <jimb@totoro.red-bean.com>
1347
1348 * Makefile.in: Regenerated with automake 1.2c.
1349
1350 Mon Sep 29 03:21:24 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1351
1352 * slib.scm (slib:load): slib:load first tries to load the file
1353 named NAME, then NAME.scm. On error, report the error occuring at
1354 the first attempt (NAME) rather than the second (NAME.scm).
1355
1356 * boot-9.scm: Bugfix: Hard-solder the print-option procedure into
1357 the make-options macro so that we needn't refer to a global
1358 symbol.
1359
1360 Sun Sep 28 21:40:24 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1361
1362 * debug.scm: Moved options interface procedures to boot-9.scm.
1363
1364 * boot-9.scm: Define options interface procedures here instead.
1365
1366 Sat Sep 27 20:19:20 1997 Jim Blandy <jimb@totoro.red-bean.com>
1367
1368 * boot-9.scm (separate-fields-discarding-char,
1369 separate-fields-after-char, separate-fields-before-char): Call
1370 continuation function, RET, as advertised: with each separated
1371 field a separate argument.
1372
1373 * Makefile.in: Regenerated with automake 1.2a.
1374
1375 Sat Sep 20 14:23:53 1997 Mikael Djurfeldt <mdj@kenneth>
1376
1377 * slib.scm (slib:load): Export.
1378
1379 * boot-9.scm (in-vicinity): Bugfix: Don't add "/" to an empty
1380 vicinity;
1381 Provide defmacro.
1382
1383 Thu Sep 18 01:24:31 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1384
1385 * r4rs.scm (apply): Set name property to 'apply.
1386
1387 Tue Sep 16 22:09:50 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1388
1389 * boot-9.scm (keyword->symbol, display-usage-report): Changed
1390 length --> string-length. (Thanks to Aleksandar Bakic.)
1391 (separate-fields-discarding-char, separate-fields-after-char,
1392 separate-fields-before-char): Bugfix from Maciej Stachowiak
1393 <mstachow@mit.edu>. Thanks!
1394 (try-module-linked): Try to find module among those already
1395 registered.
1396 (try-module-dynamic-link): Removed the first test which
1397 corresponds to a call to `try-module-linked'.
1398 (resolve-module): Resolve modules in this order: 1. Already
1399 registered modules (for example those which have been statically
1400 linked), 2. Try to autoload an .scm-file, 3. Try to dynamically
1401 link a .so-file.
1402
1403 Mon Sep 15 23:39:54 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1404
1405 * boot-9.scm (iota): Renamed list-reverse! --> reverse!
1406
1407 Thu Sep 11 02:31:38 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1408
1409 * session.scm (name): New procedure: Gives name of object.
1410 (source): New procedure: Gives source of object.
1411
1412 Wed Sep 10 20:12:45 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1413
1414 * boot-9.scm (primitive-macro?): New procedure.
1415
1416 * slib.scm: Added hack which transfers syntactic information from
1417 the builtin variable `define' to the slib version if module (ice-9
1418 syncase) has been loaded. This is necessary to get correct
1419 expansion inside the slib module.
1420
1421 * psyntax.ss (build-let, build-named-let): New output
1422 constructors.
1423 (build-lexical-var): Seed gensym with symbolic name.
1424 (self-evaluating?): Add keywords among self-evaluating types.
1425 (let): New core form.
1426 (if): Removed from core language.
1427 (or, and, let, cond): Removed syntactic definitions.
1428 (sc-expand3): New procedure: Expander which takes optional mode
1429 and eval-syntactic-expanders-when arguments.
1430
1431 * syncase.scm (psyncomp): New procedure: Recompiles psyntax.pp.
1432 Should be used inside the (ice-9 syncase) module with (use-syntax
1433 syncase) and with the current directory containing the psyntax.ss
1434 source.
1435 Added hack to transfer syntactic information from the builtin
1436 variable `define' to the slib version if module (ice-9 slib) has
1437 been loaded.
1438
1439 Fri Sep 5 05:47:36 1997 Mikael Djurfeldt <mdj@faun.nada.kth.se>
1440
1441 * syncase.scm (sc-interface, sc-expand): Removed hook setup.
1442 (syncase): Publish syntax transformer to be used with
1443 `use-syntax'.
1444 (sc-macro): Use this as the value when publishing macros.
1445
1446 * boot-9.scm (module-type): Added `transformer'.
1447 (make-module): Modified initialization.
1448 (module-transformer, set-module-transformer!): Selector and
1449 mutator for module-associated transformer.
1450 (set-current-module): Use module-transformer to set
1451 `scm:eval-transformer'.
1452 (module-use!): Previous change reverted.
1453 (use-syntax): New function: Install a transformer in current
1454 module.
1455 (sc-interface, sc-expand): Removed! :)
1456
1457 Fri Sep 5 03:09:09 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1458
1459 * emacs.scm (emacs-load): Added new parameter `module'.
1460
1461 * syncase.scm (putprop, getprop): Modified to use the object
1462 properties of the variable object corresponding to the symbol;
1463 This way we can ride on the mechanisms of the module system.
1464 Changed `builtin-variable' calls to `define-public' calls.
1465 Setup the hooks sc-expand and sc-interface.
1466
1467 * boot-9.scm (sc-interface, sc-expand): New builtin variables.
1468 (set-current-module): Switch to and from sc-expand as
1469 scm:eval-transformer when going into and out of modules using
1470 syncase macros.
1471 (module-use!): Set scm:eval-transformer to sc-expand when adding
1472 the syncase interface.
1473
1474 Thu Sep 4 14:57:04 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1475
1476 * syncase.scm (putprop): Temporary fix which publishes new syntax
1477 globally (the old behaviour was complex and connected to the inner
1478 workings of the current module system).
1479
1480 Wed Sep 3 21:29:13 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1481
1482 * psyntax.ss: Updated.
1483 psyntax.pp: Bugfix: Previous version had some leading "t":s cut
1484 off!
1485
1486 Tue Sep 2 00:26:42 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1487
1488 * boot-9.scm (gensym): Removed (replaced by primitive).
1489 (obarray-gensym): Rewritten to use `gensym'.
1490 (gentemp): Rewritten to use `gensym'.
1491
1492 Mon Sep 1 20:08:32 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1493
1494 * gtcl.scm (make-tcl-binder): Rewritten to choose bindings
1495 according to the following priorities:
1496 1. tcl bindings which are present in override-scheme-list
1497 2. bindings from the-scm-module
1498 3. tcl bindings
1499 This way the gtcl module can occur first in the use-list without
1500 disabling the scheme interpreter.
1501 (new-interpreter): New function.
1502
1503 * gwish.scm: Moved initialization code for the-interpreter to
1504 gtcl.scm; Moved name space cleaning code to gtcl.scm and rewrote
1505 it; Call `new-interpreter'; Don't :use-module (guile).
1506
1507 Thu Aug 28 23:48:53 1997 Jim Blandy <jimb@totoro.red-bean.com>
1508
1509 * Makefile.in: Regenerated.
1510
1511 Wed Aug 27 11:35:09 1997 Jim Blandy <jimb@totoro.red-bean.com>
1512
1513 * Makefile.in: Regenerated, so it uses "tar", not "gtar".
1514
1515 Mon Aug 25 22:00:44 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1516
1517 * emacs.scm (object->string, format, error-args->string): New
1518 procedures.
1519 (emacs-frame-eval): Reworked.
1520
1521 Mon Aug 25 16:15:55 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1522
1523 * session.scm (apropos-internal): Musn't initialize symbol
1524 accumulator with a constant pair. That led to mutation of the
1525 source!
1526
1527 Sun Aug 24 01:03:10 1997 Mikael Djurfeldt <mdj@kenneth>
1528
1529 * session.scm (vector-for-each): Removed.
1530 (apropos): vector-for-each --> array-for-each.
1531 (apropos-internal): New function. Return list of accessible
1532 symbols matching regexp.
1533
1534 * debug.scm (frame-number->index): New function. Convert frame
1535 number (as displayed in the backtrace) to frame index (to be used
1536 in stack-ref).
1537
1538 * emacs.scm (emacs-load): New arguments: interactivep: when
1539 non-false, send back results to Emacs; colnum: Column number;
1540 Use modules (ice-9 debug) and (ice-9 session);
1541 (no-stack, no-source): New simple-actions;
1542 (result-to-emacs): New procedure. Sends data to Emacs via the
1543 result protocol;
1544 (get-frame-source, emacs-select-frame, emacs-frame-eval,
1545 emacs-symdoc): New procedures.
1546
1547 Wed Aug 20 13:21:11 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1548
1549 * emacs.scm (emacs-load): Adjust stack narrowing.
1550 (whitespace-chars): Include #\np.
1551
1552 * syncase.scm: Also turn off debugging evaluator and recording of
1553 procedure names during loading of psyntax.pp.
1554
1555 * psyntax.pp: Removed leading blanks => 800K -> 100K.
1556
1557 Tue Aug 19 02:39:41 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1558
1559 * syncase.scm: Don't tamper with debug mode setting when enabling
1560 macros. Instead cut the stack with start-stack.
1561 Load psyntax.pp with recording of positions turned off.
1562
1563 * psyntax.pp, psyntax.ss (quasiquote): Changed fx= --> =.
1564
1565 * syncase.scm: New file: Guile-adaption for syntax-case macros.
1566 * psyntax.pp, psyntax.ss: Syntax-case macros, portable version 2 by
1567 R. Kent Dybvig, Oscar Waddell, Bob Hieb and Carl Bruggeman
1568
1569 Mon Aug 18 21:58:25 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1570
1571 * session.scm: New file: Session support.
1572 (apropos): New procedure: List bindings given regexp.
1573
1574 Sat Aug 16 18:44:24 1997 Gary Houston <ghouston@actrix.gen.nz>
1575
1576 * boot-9.scm: define tms accessors: clock, utime, stime, cutime,
1577 cstime.
1578
1579 Thu Aug 14 19:55:37 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1580
1581 * emacs.scm (emacs-load): Something has changed in the reader so
1582 that we now should set the port line count to the specified value
1583 (linum) instead of (- linum 1).
1584
1585 * slib.scm (slib:load): Use load-from-path instead of
1586 primitive-load-path so that backtraces get narrowed properly at
1587 the top.
1588
1589 * boot-9.scm (top-repl): Save stack already in signal handler in
1590 order to narrow it correctly.
1591 (save-stack): Adjust narrowing tag for the top of load-stacks.
1592
1593 Tue Jul 29 01:18:08 1997 Gary Houston <ghouston@actrix.gen.nz>
1594
1595 * boot-9.scm (move->fdes, dup->port): use dup->fdes, not primitive-dup.
1596 (dup->fdes): deleted, now done in C.
1597
1598 Sat Jul 26 08:00:42 1997 Gary Houston <ghouston@actrix.gen.nz>
1599
1600 * boot-9.scm (setenv): new procedure, scsh compatible.
1601
1602 Sat Jul 26 21:30:10 1997 Marius Vollmer <mvo@zagadka.ping.de>
1603
1604 * boot-9.scm (with-fluids): New macro to go with the
1605 builtin `with-fluids*'.
1606
1607 Thu Jul 24 04:28:11 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1608
1609 * slib.scm (install-require-module): In newer versions of slib
1610 *catalog* is #f until the first access. Therefore we call
1611 require:provided? for a random feature if *catalog* is #f.
1612
1613 Wed Jul 23 20:13:04 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1614
1615 * boot-9.scm: If using emacs interface, enable backtraces
1616 automatically.
1617
1618 Mon Jul 21 06:45:45 1997 Gary Houston <ghouston@actrix.gen.nz>
1619
1620 * boot-9.scm (dup->port, dup->inport, dup->outport, dup->fdes,
1621 dup, fdes->inport, fdes->outport, port->fdes): new procedures.
1622 (duplicate-port): was a C primitive, now it's here.
1623 (move->fdes): allow the first argument to be a file descriptor.
1624 Return the modified port or file descriptor (was unspecified.)
1625
1626 Fri Jul 11 00:13:43 1997 Jim Blandy <jimb@floss.red-bean.com>
1627
1628 Changes to compile under gnu-win32, from Marcus Daniels:
1629 * boot-9.scm (load-user-init): If HOME is unset, provide
1630 a default of /.
1631
1632 * boot-9.scm (define-public): Changed to accomodate Hobbit.
1633
1634 Tue Jun 24 00:31:47 1997 Jim Blandy <jimb@floss.red-bean.com>
1635
1636 * boot-9.scm, debug.scm, hcons.scm, lineio.scm, mapping.scm,
1637 poe.scm, slib.scm, tags.scm, threads.scm: Use normal list
1638 notation, instead of #/ notation.
1639
1640 * expect.scm (expect-strings): Pass regexp/newline flag to
1641 make-regexp.
1642
1643 Mon Jun 23 16:13:38 1997 Jim Blandy <jimb@floss.red-bean.com>
1644
1645 Fix inconsistencies in parsing of #/ style lists.
1646 * boot-9.scm (read-path-list-notation): New function.
1647 (parse-path-symbol): Deleted. Replaced by above.
1648 Plug in read-path-list-notation as the parser for #/ lists,
1649 instead of the anonymous lambda form calling parse-path-symbol.
1650 (Thanks to Maurizio Vitale.)
1651
1652 * boot-9.scm (make-list): Remove the definition of this function
1653 from the (ice-9 common-list) module; make the `init' argument
1654 optional in the scm module's definition, to match the deleted
1655 definition. Harmony reigneth? (Thanks to Bernard URBAN.)
1656
1657 Sun Jun 22 18:33:17 1997 Jim Blandy <jimb@floss.red-bean.com>
1658
1659 Try to detect when people are using one version of libguile and a
1660 different version of ice-9. People have been skewing things and
1661 sending in bug reports.
1662 * version.scm.in: New file, which the configure script munges to
1663 produce version.scm, which contains the ice-9 config stamp.
1664 * boot-9.scm: Compare the libguile and ice-9 config stamps;
1665 display a warning if the two are different.
1666 * Makefile.am: Install version.scm, but don't distribute it.
1667 Distribute version.scm.in, but don't install it.
1668 * Makefile.in: Regenerated.
1669
1670 Thu Jun 19 21:01:16 1997 Jim Blandy <jimb@floss.red-bean.com>
1671
1672 * slib.scm (slib:warn): Alias for WARN function.
1673
1674 Fri Jun 13 00:32:04 1997 Jim Blandy <jimb@floss.red-bean.com>
1675
1676 * boot-9.scm (struct-printer): Fix off-by-one error in range
1677 check. Correctly check for struct printer tag.
1678
1679 * expect.scm: Turn this into a module, (ice-9 expect).
1680 (expect-port, expect-timeout, expect-timeout-proc,
1681 expect-eof-proc, expect-char-proc, expect, expect-strings,
1682 expect-select): Make these public definitions.
1683 (expect-strings): Use make-regexp and regexp-exec, instead of
1684 regcomp and regexec. We've omitted the REG_NEWLINE flag; hope
1685 that's okay.
1686
1687 * boot-9.scm (with-regexp-parts): Comment this out. It has no
1688 users in the core, and relies on mildly hairy details of the old
1689 regexp interface.
1690
1691 * test.scm: Re-enable tests asserting that '() is true, and not a
1692 boolean. This stuff has been true for a while.
1693
1694 * boot-9.scm (ipow-by-squaring, butlast): Fix uses of outdated
1695 function names.
1696
1697 * boot-9.scm (with-excursion-getter-and-setter, q-rear): Doc
1698 fixes.
1699
1700 Wed Jun 11 00:31:40 1997 Jim Blandy <jimb@floss.red-bean.com>
1701
1702 * Makefile.in: Regenerated after xtra_PLUGIN_guile_libs change in
1703 ../configure.in.
1704
1705 Fri Jun 6 14:37:18 1997 Marius Vollmer <mvo@zagadka.ping.de>
1706
1707 * boot-9.scm (struct-printer): Bugfix: Check the layout of the
1708 vtable and not the one of the struct.
1709
1710 Wed Jun 4 23:27:16 1997 Marius Vollmer <mvo@zagadka.ping.de>
1711
1712 * boot-9.scm (struct-layout, %struct-printer-tag, struct-printer,
1713 make-struct-printer, set-struct-printer-in-vtable!): New bindings
1714 to support printing of structures.
1715 (record-type-vtable, make-record-type): Add slot to hold printing
1716 function and initialize it with something appropriate. Removed
1717 commented out printing code.
1718 (record-type-name, record-type-fields): Adjusted slot offsets.
1719 (%print-module): Reduce argument list to "mod" and "port".
1720
1721 Tue Jun 3 17:04:18 1997 Jim Blandy <jimb@totoro.cyclic.com>
1722
1723 * slib.scm (identity): New function, used by SLIB.
1724
1725 Sat May 31 18:57:12 1997 Gary Houston <ghouston@actrix.gen.nz>
1726
1727 * boot-9.scm: signal-handler, alarm-thunk: removed.
1728 don't define ticks-interrupt etc.
1729 top-repl: install signal handlers for SIGINT, SIGFPE, SIGSEGV, SIGBUS
1730 during call to scm-style-repl.
1731
1732 Fri May 30 18:08:10 1997 Jim Blandy <jimb@floss.cyclic.com>
1733
1734 * slib.scm (slib:load): Use primitive-load-path instead of
1735 basic-load. This is probably wrong, but hopefully the entire
1736 source access system will be revised soon anyway, and this will
1737 make require behave more like Emacs Lisp's require. If this
1738 breaks something, please let me know. Maybe this is real dumb.
1739
1740 Thu May 29 02:36:48 1997 Jim Blandy <jimb@floss.cyclic.com>
1741
1742 * regex.scm: Add a module declaration. Use DEFINE-PUBLIC everywhere.
1743 * boot-9.scm: If the `regex' feature is present, use the module
1744 (ice-9 regex).
1745
1746 Tue May 27 22:48:14 1997 Tim Pierce <twp@twp.tezcat.com>
1747
1748 * regex.scm: New file.
1749 * Makefile.am (subpkgdata_DATA): Add regex.scm.
1750 * Makefile.in: Regenerated.
1751
1752 Mon May 26 17:24:48 1997 Jim Blandy <jimb@totoro.cyclic.com>
1753
1754 * COPYING, boot-9.scm, debug.scm, emacs.scm, expect.scm, gtcl.scm,
1755 gwish.scm, hcons.scm, lineio.scm, mapping.scm, nonblocking.scm,
1756 oldprint.scm, poe.scm, r4rs.scm, source.scm, tags.scm, test.scm,
1757 threads.scm: New address for FSF.
1758
1759 Fri May 16 04:09:45 1997 Jim Blandy <jimb@floss.cyclic.com>
1760
1761 * debug.scm: Update copyright years; this file has been worked on
1762 in 1997.
1763
1764 Thu May 15 07:56:08 1997 Gary Houston <ghouston@actrix.gen.nz>
1765
1766 * expect.scm: use gettimeofday instead of get-internal-real-time
1767 and use a floating point timeout when calling select. Untested,
1768 since the regex library is currently AWOL.
1769
1770 Wed May 14 21:00:30 1997 Jim Blandy <jimb@floss.cyclic.com>
1771
1772 * boot-9.scm (eval-string): Function deleted; it was already
1773 implemented in C, so there's no point in making a divergable copy
1774 here.
1775
1776 Tue May 13 16:40:06 1997 Jim Blandy <jimb@floss.cyclic.com>
1777
1778 * Makefile.in: Regenerated, using automake-1.1p.
1779
1780 Tue May 13 16:40:06 1997 Jim Blandy <jimb@floss.cyclic.com>
1781
1782 * Makefile.in: Regenerated, using automake-1.1p.
1783
1784 Tue May 13 02:48:49 1997 Gary Houston <ghouston@actrix.gen.nz>
1785
1786 * boot-9.scm (error-catching-loop): don't read a line from
1787 current input when quit is encountered, the previous change
1788 fixes this too.
1789
1790 Mon May 12 19:00:21 1997 Jim Blandy <jimb@floss.cyclic.com>
1791
1792 * boot-9.scm (scm-style-repl): After reading an expression,
1793 consume any trailing newline (perhaps preceded by whitespace), to
1794 avoid screwing up GDB. More detail in comments.
1795
1796 Mon May 5 13:18:38 1997 Jim Blandy <jimb@floss.cyclic.com>
1797
1798 * Makefile.am (ETAGS_ARGS): New variable, since we're not treating
1799 the Scheme code like code yet.
1800 * Makefile.in: Resrac,husrched.
1801
1802 Wed Apr 30 15:25:15 1997 Marius Vollmer <mvo@zagadka.ping.de>
1803
1804 * boot-9.scm (link-dynamic-module): Do not catch errors from
1805 dynamic-link and dynamic-call. When the shared library exists it
1806 is now assumed to be suitable for a dynamic C module.
1807
1808 Fri Apr 25 21:21:35 1997 Marius Vollmer <mvo@zagadka.ping.de>
1809
1810 * boot-9.scm (process-use-modules): New function to support the
1811 use-modules macro
1812 (use-modules): throw an error iff one of the requested modules
1813 can't be found.
1814
1815 Tue Apr 29 06:54:46 1997 Gary Houston <ghouston@actrix.gen.nz>
1816
1817 * boot-9.scm: don't define timer-thunk or gc-thunk.
1818
1819 Sun Apr 27 17:56:09 1997 Jim Blandy <jimb@floss.cyclic.com>
1820
1821 * aclocal.m4: Removed; unnecessary, given changes of Apr 24.
1822
1823 * Makefile.am (subpkgdatadir): Use "ice-9" instead of "@module@";
1824 we're not using AM_INIT_GUILE_MODULE any more.
1825 * Makefile.in: Regeneratitetedrerd.
1826
1827 Thu Apr 24 01:33:33 1997 Jim Blandy <jimb@floss.cyclic.com>
1828
1829 Get 'make dist' to work again.
1830 * Makefile.am (EXTRA_DIST): Remove PLUGIN files.
1831 * Makefile.in: Regenerated, like two tons of fleas.
1832
1833 Changes for reduced Guile distribution: one configure script,
1834 no plugins.
1835 * configure.in, configure: Removed.
1836 * Makefile.in: Regenerated.
1837
1838 Sat Apr 19 08:03:50 1997 Jim Blandy <jimb@floss.cyclic.com>
1839
1840 * boot-9.scm (eval-string, command-line, load-user-init): New
1841 functions.
1842
1843 Sat Apr 12 08:27:05 1997 Gary Houston <ghouston@actrix.gen.nz>
1844
1845 * boot-9.scm (log10): defined.
1846
1847 Tue Apr 1 17:46:49 1997 Gary Houston <ghouston@actrix.gen.nz>
1848
1849 * expect.scm (expect-select): correct the millisecond timeout
1850 arithmetic (from Marko.Kohtala@ntc.nokia.com).
1851
1852 Mon Mar 31 03:23:19 1997 Gary Houston <ghouston@actrix.gen.nz>
1853
1854 * boot-9.scm (open-input-pipe, open-output-pipe): defined here
1855 instead of in libguile.
1856 (tm:sec etc.) new accessors for broken-down time.
1857 (set-tm:sec etc.) new setters for broken-down time.
1858
1859 Thu Mar 27 05:06:00 1997 Gary Houston <ghouston@actrix.gen.nz>
1860
1861 * boot-9.scm (netent:addrtype, servent:port): added missing
1862 procedures.
1863 (netent:net, servent:proto): repaired.
1864 (utsname:sysname etc.): new accessors for uname.
1865
1866 Tue Mar 25 03:04:03 1997 Gary Houston <ghouston@actrix.gen.nz>
1867
1868 * boot-9.scm (sockaddr:fam, sockaddr:path, sockaddr:addr,
1869 sockaddr:port): new functions.
1870
1871 Wed Mar 19 04:50:34 1997 Gary Houston <ghouston@actrix.gen.nz>
1872
1873 * boot-9.scm: define accessor procedures for the objects returned
1874 by getpw, getgr, gethost, getnet, getproto, getserv (e.g.,
1875 passwd:name, where the first component is the name of the C structure
1876 and the second is the unprefixed C member name.)
1877
1878 Tue Mar 18 18:39:31 1997 Gary Houston <ghouston@actrix.gen.nz>
1879
1880 * boot-9.scm (setpwent, setgrent, sethostent, setnetent, setprotoent,
1881 setservent): no longer take an argument, it was bogus.
1882
1883 Thu Mar 13 00:13:41 1997 Gary Houston <ghouston@actrix.gen.nz>
1884
1885 * boot-9.scm (scm-error): deleted, reimplemented in C.
1886
1887 Mon Mar 10 15:48:31 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1888
1889 * boot-9.scm (process-define-module): Modified to handle both
1890 keywords and symbols.
1891
1892 Sat Mar 8 04:32:44 1997 Gary Houston <ghouston@actrix.gen.nz>
1893
1894 * slib.scm: update read usage.
1895
1896 * r4rs.scm: update primitive-load usage.
1897 Don't define read-sharp.
1898
1899 * boot-9.scm: use read-hash-extend to install extra read syntax.
1900 (read-sharp): removed.
1901 Adjust usage of primitive-load-path, read, which no longer take
1902 case_i or read-sharp arguments.
1903
1904 Sat Mar 8 00:07:54 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1905
1906 * boot-9.scm: Added loading of session support module.
1907
1908 * debug.scm: Removed `display-application'. (Replaced by
1909 primitive procedure.)
1910
1911 * boot-9.scm (beautify-user-module!): Don't add the root module
1912 interface to the end of the use-list of the root module.
1913
1914 Thu Mar 6 07:26:34 1997 Gary Houston <ghouston@actrix.gen.nz>
1915
1916 * boot-9.scm: repl-quit, repl-abort: obsolete variables deleted.
1917
1918 Wed Mar 5 20:30:24 1997 Gary Houston <ghouston@actrix.gen.nz>
1919
1920 * boot-9.scm: check use-emacs-interface for emacs support.
1921
1922 Sun Mar 2 19:47:14 1997 Gary Houston <ghouston@actrix.gen.nz>
1923
1924 * boot-9.scm (scm-style-repl): call repl-report-start-timing if
1925 read gets EOF.
1926 * (exit): alias for quit.
1927
1928 Sun Mar 2 05:25:11 1997 Gary Houston <ghouston@actrix.gen.nz>
1929
1930 * boot-9.scm (error-catching-loop thunk): use a status variable to
1931 return the quit args.
1932 (scm-style-repl): call -quit, passing return value from
1933 error-catching-repl. Make -quit return its args.
1934 stand-alone-repl: comment out, since it seems unused.
1935
1936 (error-catching-loop thunk): discard trailing junk after a (quit).
1937
1938 Sat Mar 1 15:24:39 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1939
1940 * boot-9.scm: Removed the old printer code.
1941
1942 * r4rs.scm (apply, call-with-current-continuation): Added comment
1943 explaining why apply and call/cc need to be closures.
1944
1945 * boot-9.scm (apply, call-with-current-continuation): Bugfix:
1946 Removed. These definitions are already present in r4rs.scm.
1947
1948 * debug.scm (trace-entry, trace-exit): Check that we're on a repl
1949 stack before printing traced frames; Re-enable trace flag at end
1950 of handlers.
1951
1952 Sat Mar 1 00:10:38 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1953
1954 * debug.scm: Add hook for reset of trace level at abort.
1955
1956 * boot-9.scm (run-hooks): New procedure.
1957 (add-hooks!): New macro.
1958 Change hooks to use these functions.
1959
1960 * debug.scm: *Warning* This feature is a bit premature. I add
1961 it anyway because 1. it is very useful, and, 2. you can start
1962 making it less premature by complaining to me and by modifying
1963 the source! :-)
1964 (trace): Given one or more procedure objects, trace each one.
1965 Given no arguments, show all traced procedures.
1966 (untrace): Given one or more procedure objects, untrace each one.
1967 Given no arguments, untrace all traced procedures. The tracing in
1968 Guile have an advantage to most other systems: We don't create new
1969 procedure objects, but mark the procedure objects themselves.
1970 This means that also anonymous and internal procedures can be
1971 traced.
1972
1973 * boot-9.scm (error-catching-loop): Added handling of apply-frame
1974 and exit-frame exceptions.
1975
1976 * boot-9.scm (assert-repl-prompt, the-prompt-string): Removed.
1977 (set-repl-prompt!): Setter for repl prompt.
1978 (scm-style-repl): If prompt is #f, don't prompt; if prompt is a
1979 string, display it; if prompt is a thunk, call it and display its
1980 result; otherwise display "> ".
1981 (Change suggested by Roland Orre <orre@nada.kth.se>.)
1982
1983 * r4rs.scm (%load-verbosely): Reverted change to
1984 `module-defined?', since the module system isn't bootstrapped when
1985 we load r4rs.scm. This is just a temporary fix to make the
1986 repository version runnable.
1987
1988 Thu Feb 27 23:25:47 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1989
1990 * boot-9.scm: Removed the enabling of debug evaluator and
1991 recording of source code positions. This was placed there for our
1992 convenience, but it has already sneaked into the distribution
1993 once... so we'd better add this in our local copies instead when
1994 we need it. (These options are normally enabled at the end of
1995 boot-9.scm when loading the debug module.)
1996
1997 Thu Feb 27 16:04:45 1997 Marius Vollmer <mvo@zagadka.ping.de>
1998
1999 * boot-9.scm (module-defined?): New function.
2000 (macroexpand-1, macroexpand): Use local-ref instead of defined?
2001 and eval.
2002 * r4rs.scm (%load-verbosely): Use "module-defined?" instead of
2003 "defined?".
2004 * slib.scm (defined?): New function to take the place of the
2005 builtin "defined?". It allways examines the slib module.
2006
2007 Mon Feb 24 21:46:15 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2008
2009 * configure.in: Added AM_MAINTAINER_MODE
2010
2011 Sat Feb 15 04:51:20 1997 Gary Houston <ghouston@actrix.gen.nz>
2012
2013 * boot-9.scm (read-sharp): define directly, don't go through a
2014 %read-sharp layer.
2015
2016 Tue Feb 11 08:45:48 1997 Gary Houston <ghouston@actrix.gen.nz>
2017
2018 * boot-9.scm (uniform-vector-set!): use uniform-array-set1!, not
2019 uniform-vector-set1! which doesn't exist.
2020
2021 Mon Feb 10 03:01:48 1997 Mikael Djurfeldt <mdj@kenneth>
2022
2023 * boot-9.scm (backtrace): Removed. (A C version now exists in
2024 backtrace.c.)
2025
2026 Fri Jan 24 06:05:36 1997 Gary Houston <ghouston@actrix.gen.nz>
2027
2028 * boot-9.scm (read-line!, read-delimited!, read-delimited,
2029 read-line): new procedures, see libguile/ChangeLog.
2030
2031 Thu Jan 16 17:07:03 1997 Marius Vollmer <mvo@zagadka.ping.de>
2032
2033 Added dynamic linking of modules. See libguile/DYNAMIC-LINKING.
2034
2035 * boot-9.scm (split-c-module-name, convert-c-registered-modules,
2036 init-dynamic-module, dynamic-maybe-call,
2037 find-and-link-dynamic-module, link-dynamic-module,
2038 try-module-dynamic-link, registered-modules): New definitions for
2039 dynamic linking of modules.
2040 (resolve-module): Try to dynamically link the requested module
2041 after failing to load it as Scheme code.
2042
2043 Wed Jan 8 05:50:14 1997 Gary Houston <ghouston@actrix.gen.nz>
2044
2045 * boot-9.scm (getservbyport, getservbyname): remove stray %.
2046
2047 Tue Jan 7 20:02:24 1997 Jim Blandy <jimb@floss.cyclic.com>
2048
2049 * boot-9.scm (and=>): Rename THUNK argument to PROCEDURE, 'cos
2050 that's what it is.
2051
2052 * lineio.scm (make-line-buffering-input-port): Properly test for
2053 the case of an empty buffer list. The old code assumed that '()
2054 was false.
2055
2056 Mon Jan 6 01:13:53 1997 Mikael Djurfeldt <mdj@kenneth>
2057
2058 * boot-9.scm (use-modules): New macro (from Marius Vollmer).
2059 (use-modules <module name> ...) Put the the modules named by
2060 <module name> ... on the use list of the current module.
2061
2062 Sun Jan 5 15:52:59 1997 Jim Blandy <jimb@floss.cyclic.com>
2063
2064 * boot-9.scm (error-catching-loop): Remove message saying that
2065 typing "$" will put you in the debugger. This isn't implemented
2066 yet.
2067
2068 Sun Dec 22 23:27:25 1996 Jim Blandy <jimb@floss.cyclic.com>
2069
2070 * boot-9.scm (delq-all!): Function deleted; delq!'s semantics have
2071 been fixed, so this function is superfluous.
2072 (transform-usage-lambda): Use delq!, not delq-all!.
2073
2074 Tue Dec 17 20:36:45 1996 Marius Vollmer <mvo@zagadka.ping.de>
2075
2076 * boot-9.scm (resolve-module): New optional parameter that
2077 controls whether autoloading is attempted or not. Default is #t.
2078 (process-define-module): Don't autoload the defined module.
2079 (try-module-autoload): Don't autoload the directory modules.
2080
2081 * boot-9.scm (process-define-module): Ensure that the-scm-module
2082 is last in the `uses' list to allow shadowing builtin
2083 bindings. All :use-module options are added in the order they
2084 appear in the arguments but before anything already on the list
2085 (such as the-scm-module).
2086
2087 Wed Dec 11 21:06:05 1996 Gary Houston <ghouston@actrix.gen.nz>
2088
2089 * slib.scm (slib-parent-dir): throw error if #f returned from
2090 %search-load-path.
2091
2092 Sat Nov 30 23:57:28 1996 Tom Tromey <tromey@cygnus.com>
2093
2094 * PLUGIN/greet, PLUGIN/split.sed, PLUGIN/this.configure: Removed.
2095 * Makefile.am, aclocal.m4: New files.
2096 * configure.in: Updated for Automake.
2097
2098 Wed Nov 27 14:16:14 1996 Marius Vollmer <mvo@zagadka.ping.de>
2099
2100 * boot-9.scm (macroexpand-1, macroexpand), slib.scm
2101 (slib:features), r4rs.scm (%load-verbosely): "defined?" is now a
2102 function, use it accordingly.
2103
2104 Thu Nov 21 11:12:10 1996 Jim Blandy <jimb@floss.cyclic.com>
2105
2106 It's an "eval closure", not an "eval thunk." A thunk is a
2107 function of no arguments.
2108 * boot-9.scm (module-type): Rename module field.
2109 (make-module, eval-in-module, make-root-module,
2110 set-current-module): Uses changed.
2111 (module-eval-closure, set-module-eval-closure!,
2112 root-module-closure): Renamed from module-eval-thunk,
2113 set-module-eval-thunk!, root-module-thunk.
2114 (set-current-module): Change uses of *top-level-lookup-thunk* to
2115 *top-level-eval-closure*.
2116
2117 Wed Nov 20 14:45:27 1996 Jim Blandy <jimb@totoro.cyclic.com>
2118
2119 * slib.scm (slib-parent-dir): Use string-length, not length.
2120 (Thanks to Bernard Urban.)
2121
2122 Sat Nov 2 20:00:42 1996 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2123
2124 * boot-9.scm: The debugging evaluator and recording of positions
2125 aren't enabled by default any longer (they are switched on in
2126 debug.scm). But during development we want to have them also
2127 *inside* boot-9.scm. Therefore, two lines are added at the
2128 beginning of boot-9.scm to enable these.
2129
2130 Call `provide' so that `records' are included among the
2131 `*features*'.
2132
2133 The scheme for saving the stack has been adjusted: save-stack is
2134 now commonly available for saving the stack. Calling `save-stack'
2135 sets a flag `stack-saved?' which prevents overwriting the stack.
2136 `stack-saved?' is reset at `abort'.
2137
2138 Spelling correction: seperate --> separate.
2139
2140 Removed `:'s that had creeped into some comments.
2141
2142 The repl now doesn't print #<unspecified> results any longer
2143 If the user wants to see this, he can do
2144 (assert-repl-print-unspecified #t) in his startup file.
2145
2146 The user now gets a friendly message instead of a backtrace at
2147 error.
2148
2149 Added `before-read-hook'.
2150
2151 Load module (ice-9 emacs) if option `-e' was specified.
2152
2153 (provide): New function.
2154
2155 (error): Save stack at entry, so that Guile entrails won't show up
2156 in backtraces.
2157
2158 (backtrace): New function.
2159
2160 (save-stack): Can now take arbitrary number of stack narrowing
2161 specifier pairs. The first specifier in a pair controls inner
2162 border, the second the outer border. A number means cut that
2163 number of frames, a procedure object means cut until that object
2164 is found in operator position in a frame.
2165
2166 * debug.scm: Enable debugging evaluator and recording of positions
2167 by default.
2168
2169 * slib.scm (slib:load): Adapt to the new behavior of
2170 primitive-load: It doesn't any longer try both with and without
2171 ".scm" extension. (We don't want to use %search-load-path here.)
2172
2173 (implementation-vicinity): New function. slib requires it
2174
2175 (library-vicinity): Updated.
2176
2177 Load "require.scm" in the library-vicinity.
2178
2179 (install-require-vicinity, install-require-module): New functions.
2180
2181 Mon Oct 28 17:56:29 1996 Jim Blandy <jimb@floss.cyclic.com>
2182
2183 * boot-9.scm (load-from-path): New function.
2184
2185 * boot-9.scm (try-load, basic-try-load, try-load-module,
2186 try-load): Deleted. I don't think they're being used.
2187
2188 * Makefile.in (scm_files): Add r4rs.scm and test.scm to this list,
2189 so they'll get distributed.
2190
2191 Get Guile to be a little less chatty by default. The new user
2192 should see as little clutter as possible.
2193 * r4rs.scm (%load-verbosely): Make this #f by default.
2194 * boot-9.scm (scm-repl-verbose): Make this #f by default.
2195 (scm-style-repl): Don't run 'pk' on the value passed to quit.
2196
2197 * r4rs.scm: New file.
2198 * boot-9.scm: Load r4rs.scm, first thing.
2199 (OPEN_READ, OPEN_WRITE, OPEN_BOTH, *null-device*, open-input-file,
2200 open-output-file, open-io-file, close-input-port,
2201 close-output-port, close-io-port, call-with-input-file,
2202 call-with-output-file, with-input-from-port, with-output-to-port,
2203 with-error-to-port, with-input-from-file, with-output-to-file,
2204 with-error-to-file, with-input-from-string, with-output-to-string,
2205 with-error-to-string, the-eof-object): Definitions moved to
2206 r4rs.scm. Not all of them are R4RS, but those that are use those
2207 that are not.
2208 (load, %load-verbosely, %load-announce): Moved, along with code to
2209 set %load-hook, to r4rs.scm.
2210
2211 * test.scm: New file.
2212
2213 * boot-9.scm (integer?): Definition deleted, in favor of the one
2214 present in libguile (which used to be called int?). I have no
2215 idea why integer? didn't just call int? to begin with.
2216
2217 * boot-9.scm (<, <=, =, >, >=): Definitions in terms of <?, <=?,
2218 =?, >?, and >=? deleted; they're defined that way by libguile now.
2219
2220 * boot-9.scm (load): Simplified; primitive-load does most of this
2221 work now.
2222 (%load-announce-win): Removed; no longer used. Set %load-hook to
2223 call %load-announce.
2224
2225 Sun Oct 27 07:47:03 1996 Gary Houston <ghouston@actrix.gen.nz>
2226
2227 * boot-9.scm (stat:dev, stat:ino, stat:mode, stat:nlink, stat:uid,
2228 stat:gid, stat:rdev, stat:size, stat:atime, stat:mtime,
2229 stat:ctime, stat:blksize, stat:blocks) accessor functions for stat
2230 components.
2231 (file-is-directory?): use stat:type.
2232
2233 Fri Oct 25 03:34:47 1996 Jim Blandy <jimb@floss.cyclic.com>
2234
2235 * boot-9.scm (%read-sharp): Don't recognize the `#!' syntax here;
2236 that's now taken care of in libguile, and in a way compatible with
2237 SCSH (which this isn't).
2238
2239 Mon Oct 21 18:52:36 1996 Jim Blandy <jimb@totoro.cyclic.com>
2240
2241 * boot-9.scm: Formatting tweaks.
2242
2243 Fri Oct 18 01:03:08 1996 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2244
2245 * boot-9.scm (handle-system-error): Added hooks before-error-hook,
2246 after-error-hook, before-backtrace-hook and after-backtrace-hook
2247 to the error handler. E.g.: fancy emacs support could plug into
2248 these.
2249 (save-stack): New function. The stack is now made differently
2250 depending on the stack id. (The motivation is to make a better
2251 choice regarding what stack frames to present to the user.)
2252 (error-catching-loop): Stack handling code moved outside into
2253 save-stack.
2254
2255 Thu Oct 17 20:33:08 1996 Gary Houston <ghouston@actrix.gen.nz>
2256
2257 * Makefile.in (scm_files): add expect.scm.
2258
2259 * expect.scm: new file ported from guile-iii.
2260
2261 * boot-9.scm: remove handle-system-error, after moving the code into
2262 error-catching-loop.
2263 Don't set 'throw-handler-default property on error keys.
2264 Just interpret (almost) any throw with 4 args as an error throw.
2265 Delete some try-load stuff that was already commented out.
2266
2267 Second thoughts, keep handle-system-error but call it from
2268 error-catching-loop.
2269
2270 Tue Oct 15 17:07:20 1996 Jim Blandy <jimb@floss.cyclic.com>
2271
2272 * boot-9.scm: Doc fixes.
2273 (make-module): Rework for readability.
2274 (make-root-module, make-scm-module): USES argument to make-module
2275 should be '(), not #f.
2276
2277 * boot-9.scm (try-load): %sys-load-path has been renamed to
2278 primitive-load-path; adjust call here.
2279
2280 Tue Oct 15 14:25:01 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
2281
2282 * boot-9.scm (signal-handler): Bugfix: Moved the recording of
2283 the stack to the correct place: when it is decided to generate an
2284 error-signal.
2285
2286 Mon Oct 14 22:20:30 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
2287
2288 * boot-9.scm (error-catching-loop, signal-handler,
2289 handle-system-error): Backtracing now works for signals aswell;
2290 Backtracing mechanism can now identify the stack root created by
2291 start-stack so that the user isn't exposed to system stack frames.
2292
2293 Mon Oct 14 06:05:42 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
2294
2295 * Makefile.in: Added threads.scm.
2296
2297 Mon Oct 14 04:21:51 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
2298
2299 * debug.scm (make-enable, make-disable): Simplified.
2300
2301 * boot-9.scm: Renamed %%throw-handler-default -->
2302 throw-handler-default.
2303 ((handle-system-error key . arg-list)): Changed the way errors are
2304 reported.
2305 ((scm-style-repl)): Wrap up the call to eval in a start-stack
2306 acro.
2307 ((error-catching-loop thunk)): Introduce a lazy-catch into
2308 error-catching-loop so that the stack can be captured.
2309
2310 Thu Oct 10 22:27:32 1996 Jim Blandy <jimb@totoro.cyclic.com>
2311
2312 * mapping.scm (hash-table-mapping): Explicitly request that
2313 make-vector fill new vectors with '(); this will make it easier to
2314 port Guile Scheme code to other Schemes.
2315 * boot-9.scm (make-print-style, make-print-table): Same.
2316
2317 Sun Oct 6 03:54:59 1996 Gary Houston <ghouston@actrix.gen.nz>
2318
2319 * boot-9.scm (load): rewritten again.
2320 Append "." to the default %load-path.
2321 (feature?): new function: checks for a symbol in the features list.
2322 (module-local-variable): remove apparently useless (caddr (list m v
2323 ...))
2324 (%load-announce): minor formatting change.
2325 (file-exists?): use access? if posix is featured.
2326 (file-is-directory?): use stat if i/o-extensions is featured.
2327 (try-module-autoload module-name): use file-exists? before
2328 file-is-directory?
2329
2330 Sat Oct 5 18:54:03 1996 Mikael Djurfeldt <mdj@kenneth>
2331
2332 * boot-9.scm: Added conditional loading of threads.scm.
2333
2334 * threads.scm: New file. Modified from the Cygnus-r0.3
2335 distribution.
2336
2337 * boot-9.scm (error-catching-loop): Added handling of key
2338 `switch-repl'.
2339
2340 * boot-9.scm: Name change %%bad-throw --> bad-throw.
2341
2342 Wed Oct 2 23:38:44 1996 Jim Blandy <jimb@totoro.cyclic.com>
2343
2344 * boot-9.scm (make-record-type, record-constructor): Don't assume
2345 the empty list is false when parsing the argument list.
2346
2347 Mon Sep 30 22:15:50 1996 Jim Blandy <jimb@totoro.cyclic.com>
2348
2349 * boot-9.scm (signal-handler): Clean up logic.
2350
2351 * boot-9.scm (load): Assume %load-path is always bound.
2352
2353 Sat Sep 28 00:15:37 1996 Gary Houston <ghouston@actrix.gen.nz>
2354
2355 * boot-9.scm (error): replace another throw with scm-error. Throw
2356 to 'misc-error instead of 'error (no need to distinguish these.)
2357 Don't set up 'error as a key.
2358 Set up regex-error as a key, if regex is available.
2359 (signal-handler): use scm-error, not throw.
2360
2361 (%try-load, try-load-with-path, %load, load-with-path,
2362 basic-try-load-with-path, basic-load-with-path,
2363 try-load-module-with-path,load-module-with-path): deleted, since
2364 they seem redundant.
2365 (try-load): define using %try-load, not try-load-with-path.
2366 (load): rewritten. load tries to open the file directly and
2367 with a .scm extension before searching the library directories
2368 (should "." be added to %load-path? then load could still open
2369 directly files starting with "/").
2370 (try-module-autoload): use load, not load-with-path.
2371 (%load-indent): deleted, -2 was causing errors.
2372
2373 (%read-sharp): use port-line, not line-number.
2374
2375 Fri Sep 27 16:23:51 1996 Jim Blandy <jimb@totoro.cyclic.com>
2376
2377 * boot-9.scm (%%bad-throw): Delete definition. 1) It's very
2378 straightforward to provide the equivalent functionality using
2379 (catch #t ...), so there's no need for the extra complexity. 2)
2380 Outside the context of a read-eval-print loop (which Guile should
2381 not require) it's not clear we should do anything more complicated
2382 than print an error and exit; the user or REPL can establish
2383 something better if it wants. 3) In that case, it's much more
2384 robust to just do it in the C code.
2385
2386 Tue Sep 24 06:53:04 1996 Gary Houston <ghouston@actrix.gen.nz>
2387
2388 * boot-9.scm (%try-load): define using primitive-load. Previously
2389 %try-load itself was the primitive.
2390 (load-with-path): use scm-error instead of %load-announce-lossage.
2391 Errors are thrown to 'misc-error instead of 'could-not-load.
2392 (%load-announce-lossage): deleted.
2393
2394 Mon Sep 23 00:16:31 1996 Mikael Djurfeldt <mdj@kenneth>
2395
2396 * boot-9.scm (warn, scm-style-repl): Use C printer instead of `print'.
2397 (make-record-type type-name fields): Temporarily remove support
2398 for printing of records (not possible yet with C printer).
2399
2400 Fri Sep 20 00:24:27 1996 Gary Houston <ghouston@actrix.gen.nz>
2401
2402 * boot-9.scm (file-exists?, file-is-directory): catch only
2403 system-error, not every kind of error.
2404 (scm-error): new procedure.
2405
2406 Thu Sep 19 16:02:46 1996 Jim Blandy <jimb@totoro.cyclic.com>
2407
2408 * boot-9.scm: Formatting tweaks.
2409
2410 Wed Sep 18 09:07:37 1996 Gary Houston <ghouston@actrix.gen.nz>
2411
2412 * boot-9.scm (%%handle-system-error key): remove the code for
2413 SCM-style errors. handle the case that an unexpected number
2414 of args are supplied.
2415 (%%system-errors): removed.
2416 (error): redefine using a throw with key and 4 args.
2417 ('error): associate 'error, 'error-signal keys with
2418 %%handle-system-error.
2419 (%%default-error-handler): removed.
2420 (signal-handler): throw with 4 args and use the error-signal key.
2421 Create an error message instead of using numerical codes.
2422 (%%bad-throw): call error instead of throw if key not found.
2423
2424 Tue Sep 17 04:11:28 1996 Gary Houston <ghouston@actrix.gen.nz>
2425
2426 * boot-9.scm: initialize new error keys (see libguile/ChangeLog).
2427 (%%handle-system-error key): check subr is not #f before printing.
2428 Recognize %s (embed an argument using "display") and
2429 %S (embed an argument using "write").
2430
2431 Sun Sep 15 03:55:35 1996 Gary Houston <ghouston@actrix.gen.nz>
2432
2433 * boot-9.scm (%%handle-system-error key): set args and rest to
2434 the empty list if they are #f.
2435 Initialize out-of-range as an error key.
2436
2437 Sat Sep 14 03:41:15 1996 Gary Houston <ghouston@actrix.gen.nz>
2438
2439 * PLUGIN/REQ: remove the "ice-9 lgh" line which causes a cycle.
2440
2441 * boot-9.scm: remove leading %% from references to '%%system-error.
2442 (%%handle-system-error): don't pass all the thrown arguments when
2443 aborting, just the key and subr.
2444 Remove the code to "Install default handlers for built-in errors."
2445 Remove the definition of the syserror procedure.
2446 Associate 'numerical-overflow with default handler.
2447
2448 Fri Sep 13 04:58:11 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
2449
2450 * boot-9.scm: Name change: value-ref --> local-ref
2451 resolved-ref --> nested-ref Motivation: conformance to the other
2452 dictionary operators: list-ref operates on list, vector-ref
2453 operates on vector, nested-ref operates on nested namespace,
2454 local-ref operates on the local nested namespace.
2455
2456 Sat Sep 7 06:44:47 1996 Gary Houston <ghouston@actrix.gen.nz>
2457
2458 * boot-9.scm (%%handle-system-error): recognise errors thrown
2459 by lgh-error (fill-message etc.)
2460 (fill-message): check first whether args is null.
2461 (fill-message): bug fix and check that args is a list.
2462
2463 Thu Sep 5 11:33:41 1996 Jim Blandy <jimb@floss.cyclic.com>
2464
2465 * boot-9.scm: %load-path is initialized in C code now.
2466 (implementation-vicinity, parse-path): Deleted, along with code to
2467 initialize %load-path.
2468
2469 * boot-9.scm (in-vicinity): If the vicinity doesn't end with a
2470 "/", use one to separate it from the file.
2471
2472 Thu Aug 29 23:05:11 1996 Thomas Morgan <tmorgan@gnu.ai.mit.edu>
2473
2474 * boot-9.scm (%load-path): Add the site directory.
2475 Add the directory named after the version number.
2476 Prepend the version number to the other directories in the path.
2477 Simplify by mapping the common prefix onto each item.
2478 * Makefile.in (datadir, pkgdatadir, pkgverdatadir, subpkgdatadir,
2479 sitedatadir): New definitions.
2480 (libparent, libdir, install_path): Replaced by above.
2481 (install): Create the above directories.
2482 Put the source files into subpkgdatadir.
2483 (uninstall): Remove the above directories.
2484
2485 Thu Aug 29 21:48:47 1996 Jim Blandy <jimb@floss.cyclic.com>
2486
2487 Don't use the PLUGIN system to gather information for the
2488 Makefile's distribution and installation targets; just put it all
2489 in the Makefile directly.
2490 * PLUGIN/this.configure (scm_files, aux_files): Remove sections
2491 for these.
2492 * configure.in: Remove code that gets and substitutes scm_files and
2493 aux_files.
2494 * Makefile.in (scm_files, aux_files): Write out the list of files
2495 here, where people expect to find them.
2496
2497 Fri Aug 23 06:44:36 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
2498
2499 * boot-9.scm: Preliminary solution: optionally load the debug
2500 module. Changed "gls" to "guile1.0b3".
2501
2502 * debug.scm: New file: debug extensions.
2503
2504 Wed Aug 21 13:06:56 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
2505
2506 * boot-9.scm (print-vector): Renamed weak-hash-table? -->
2507 weak-key-hash-table?. (Again!)
2508
2509 Tue Aug 20 07:31:39 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
2510
2511 * boot-9.scm (print-vector, macro-table, xformer-table):
2512 Renamed weak-hash-table --> weak-key-hash-table.
2513
2514 * poe.scm (funcq-memo): Renamed weak-hash-table -->
2515 weak-key-hash-table.
2516
2517 Sat Aug 3 06:16:35 1996 Gary Houston <ghouston@actrix.gen.nz>
2518
2519 * boot-9.scm (*null-device*): global constant from goonix.
2520 (move->fdes): adjusted for boolean primitive-move->fdes. return
2521 the modified port, always set revealed count to 1 (SCSH compatible).
2522 (release-port-handle port): from goonix (SCSH compatible).
2523 (%open-file): removed.
2524 (open-input-file, open-output-file, file-exists?, file-is-directory?):
2525 modified for open-file change (does not return #f).
2526
2527 Thu Aug 1 02:52:42 1996 Jim Blandy <jimb@totoro.cyclic.com>
2528
2529 * Makefile.in (dist-dir): New target for new dist system.
2530 (manifest): Deleted.
2531 * PLUGIN/this.configure (aux_files): Removed PLUGIN; it's a
2532 directory, and needs special treatment in the dist-dir target.
2533
2534 Thu Aug 1 09:00:21 1996 Gary Houston <ghouston@actrix.gen.nz>
2535
2536 * boot-9.scm: remove the wrappers for '%' system primitives,
2537 now that they throw errors directly.
2538 remove make-simple-wrapper and similar functions.
2539 protect a call to getenv which may now throw an exception.
2540
2541 Wed Jul 31 23:44:42 1996 Gary Houston <ghouston@actrix.gen.nz>
2542
2543 * boot-9.scm (false-if-exception): new macro.
2544
2545 Fri Apr 19 13:53:08 1996 Tom Lord <lord@beehive>
2546
2547 * The more things change...
2548
2549