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