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