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