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