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