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