It's an "eval closure", not an "eval thunk." A thunk is a
[bpt/guile.git] / ice-9 / ChangeLog
CommitLineData
3763761c
JB
1Wed Nov 20 14:45:27 1996 Jim Blandy <jimb@totoro.cyclic.com>
2
3 * slib.scm (slib-parent-dir): Use string-length, not length.
4 (Thanks to Bernard Urban.)
5
7ad737b6
MD
6Sat Nov 2 20:00:42 1996 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
7
8* * boot-9.scm: The debugging evaluator and recording of positions
9 aren't enabled by default any longer (they are switched on in
10 debug.scm). But during development we want to have them also
11 *inside* boot-9.scm. Therefore, two lines are added at the
12 beginning of boot-9.scm to enable these.
13
14 Call `provide' so that `records' are included among the
15 `*features*'.
16
17 The scheme for saving the stack has been adjusted: save-stack is
18 now commonly available for saving the stack. Calling `save-stack'
19 sets a flag `stack-saved?' which prevents overwriting the stack.
20 `stack-saved?' is reset at `abort'.
21
22 Spelling correction: seperate --> separate.
23
24 Removed `:'s that had creeped into some comments.
25
26* The repl now doesn't print #<unspecified> results any longer
27 If the user wants to see this, he can do
28 (assert-repl-print-unspecified #t) in his startup file.
29
30* The user now gets a friendly message instead of a backtrace at
31 error.
32
33 Added `before-read-hook'.
34
35 Load module (ice-9 emacs) if option `-e' was specified.
36
37 (provide): New function.
38
39 (error): Save stack at entry, so that Guile entrails won't show up
40 in backtraces.
41
42 (backtrace): New function.
43
44* (save-stack): Can now take arbitrary number of stack narrowing
45 specifier pairs. The first specifier in a pair controls inner
46 border, the second the outer border. A number means cut that
47 number of frames, a procedure object means cut until that object
48 is found in operator position in a frame.
49
50 * debug.scm: Enable debugging evaluator and recording of positions
51 by default.
52
53 * slib.scm (slib:load): Adapt to the new behavior of
54 primitive-load: It doesn't any longer try both with and without
55 ".scm" extension. (We don't want to use %search-load-path here.)
56
57 (implementation-vicinity): New function. slib requires it
58
59 (library-vicinity): Updated.
60
61 Load "require.scm" in the library-vicinity.
62
63 (install-require-vicinity, install-require-module): New functions.
64
99f97bfe
JB
65Mon Oct 28 17:56:29 1996 Jim Blandy <jimb@floss.cyclic.com>
66
581a242b
JB
67 * boot-9.scm (load-from-path): New function.
68
69 * boot-9.scm (try-load, basic-try-load, try-load-module,
70 try-load): Deleted. I don't think they're being used.
71
48be3fb3
JB
72 * Makefile.in (scm_files): Add r4rs.scm and test.scm to this list,
73 so they'll get distributed.
74
75 Get Guile to be a little less chatty by default. The new user
76 should see as little clutter as possible.
77 * r4rs.scm (%load-verbosely): Make this #f by default.
78 * boot-9.scm (scm-repl-verbose): Make this #f by default.
79 (scm-style-repl): Don't run 'pk' on the value passed to quit.
80
81 * r4rs.scm: New file.
82 * boot-9.scm: Load r4rs.scm, first thing.
83 (OPEN_READ, OPEN_WRITE, OPEN_BOTH, *null-device*, open-input-file,
84 open-output-file, open-io-file, close-input-port,
85 close-output-port, close-io-port, call-with-input-file,
86 call-with-output-file, with-input-from-port, with-output-to-port,
87 with-error-to-port, with-input-from-file, with-output-to-file,
88 with-error-to-file, with-input-from-string, with-output-to-string,
89 with-error-to-string, the-eof-object): Definitions moved to
90 r4rs.scm. Not all of them are R4RS, but those that are use those
91 that are not.
92 (load, %load-verbosely, %load-announce): Moved, along with code to
93 set %load-hook, to r4rs.scm.
94
95 * test.scm: New file.
96
97 * boot-9.scm (integer?): Definition deleted, in favor of the one
98 present in libguile (which used to be called int?). I have no
99 idea why integer? didn't just call int? to begin with.
100
101 * boot-9.scm (<, <=, =, >, >=): Definitions in terms of <?, <=?,
102 =?, >?, and >=? deleted; they're defined that way by libguile now.
103
99f97bfe
JB
104 * boot-9.scm (load): Simplified; primitive-load does most of this
105 work now.
106 (%load-announce-win): Removed; no longer used. Set %load-hook to
107 call %load-announce.
108
3afb28ce
GH
109Sun Oct 27 07:47:03 1996 Gary Houston <ghouston@actrix.gen.nz>
110
4fe3604d
JB
111 * boot-9.scm (stat:dev, stat:ino, stat:mode, stat:nlink, stat:uid,
112 stat:gid, stat:rdev, stat:size, stat:atime, stat:mtime,
113 stat:ctime, stat:blksize, stat:blocks) accessor functions for stat
114 components.
3afb28ce
GH
115 (file-is-directory?): use stat:type.
116
3065a62a
JB
117Fri Oct 25 03:34:47 1996 Jim Blandy <jimb@floss.cyclic.com>
118
119 * boot-9.scm (%read-sharp): Don't recognize the `#!' syntax here;
120 that's now taken care of in libguile, and in a way compatible with
121 SCSH (which this isn't).
122
e4c5095f
JB
123Mon Oct 21 18:52:36 1996 Jim Blandy <jimb@totoro.cyclic.com>
124
125 * boot-9.scm: Formatting tweaks.
126
1bb961a3
MD
127Fri Oct 18 01:03:08 1996 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
128
129 * boot-9.scm (handle-system-error): Added hooks before-error-hook,
130 after-error-hook, before-backtrace-hook and after-backtrace-hook
131 to the error handler. E.g.: fancy emacs support could plug into
132 these.
133 (save-stack): New function. The stack is now made differently
134 depending on the stack id. (The motivation is to make a better
135 choice regarding what stack frames to present to the user.)
136 (error-catching-loop): Stack handling code moved outside into
137 save-stack.
138
9a0d70e2
GH
139Thu Oct 17 20:33:08 1996 Gary Houston <ghouston@actrix.gen.nz>
140
d7189b49
GH
141 * Makefile.in (scm_files): add expect.scm.
142
143 * expect.scm: new file ported from guile-iii.
144
9a0d70e2
GH
145 * boot-9.scm: remove handle-system-error, after moving the code into
146 error-catching-loop.
147 Don't set 'throw-handler-default property on error keys.
148 Just interpret (almost) any throw with 4 args as an error throw.
149 Delete some try-load stuff that was already commented out.
150
35c5db87
GH
151 Second thoughts, keep handle-system-error but call it from
152 error-catching-loop.
153
d065b65f
JB
154Tue Oct 15 17:07:20 1996 Jim Blandy <jimb@floss.cyclic.com>
155
aa9576ad
JB
156 * boot-9.scm: Doc fixes.
157 (make-module): Rework for readability.
158 (make-root-module, make-scm-module): USES argument to make-module
159 should be '(), not #f.
160
d065b65f
JB
161 * boot-9.scm (try-load): %sys-load-path has been renamed to
162 primitive-load-path; adjust call here.
163
c01c94bf
MD
164Tue Oct 15 14:25:01 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
165
d065b65f 166 * boot-9.scm (signal-handler): Bugfix: Moved the recording of
c01c94bf
MD
167 the stack to the correct place: when it is decided to generate an
168 error-signal.
169
2dfc85c0
MD
170Mon Oct 14 22:20:30 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
171
172 * boot-9.scm (error-catching-loop, signal-handler,
173 handle-system-error): Backtracing now works for signals aswell;
174 Backtracing mechanism can now identify the stack root created by
175 start-stack so that the user isn't exposed to system stack frames.
176
84d8ad97
MD
177Mon Oct 14 06:05:42 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
178
179 * Makefile.in: Added threads.scm.
180
4f0292cf
MD
181Mon Oct 14 04:21:51 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
182
183 * debug.scm (make-enable, make-disable): Simplified.
184
185 * boot-9.scm: Renamed %%throw-handler-default -->
186 throw-handler-default.
187 ((handle-system-error key . arg-list)): Changed the way errors are
188 reported.
189 ((scm-style-repl)): Wrap up the call to eval in a start-stack
190 acro.
191 ((error-catching-loop thunk)): Introduce a lazy-catch into
192 error-catching-loop so that the stack can be captured.
193
1eaceb61
JB
194Thu Oct 10 22:27:32 1996 Jim Blandy <jimb@totoro.cyclic.com>
195
196 * mapping.scm (hash-table-mapping): Explicitly request that
197 make-vector fill new vectors with '(); this will make it easier to
198 port Guile Scheme code to other Schemes.
199 * boot-9.scm (make-print-style, make-print-table): Same.
200
6fa8995c
GH
201Sun Oct 6 03:54:59 1996 Gary Houston <ghouston@actrix.gen.nz>
202
203 * boot-9.scm (load): rewritten again.
204 Append "." to the default %load-path.
205 (feature?): new function: checks for a symbol in the features list.
206 (module-local-variable): remove apparently useless (caddr (list m v
207 ...))
208 (%load-announce): minor formatting change.
209 (file-exists?): use access? if posix is featured.
210 (file-is-directory?): use stat if i/o-extensions is featured.
211 (try-module-autoload module-name): use file-exists? before
212 file-is-directory?
213
8b4a21d1
MD
214Sat Oct 5 18:54:03 1996 Mikael Djurfeldt <mdj@kenneth>
215
8acae5bb
MD
216 * boot-9.scm: Added conditional loading of threads.scm.
217
218 * threads.scm: New file. Modified from the Cygnus-r0.3
219 distribution.
220
8b4a21d1
MD
221 * boot-9.scm (error-catching-loop): Added handling of key
222 `switch-repl'.
223
224 * boot-9.scm: Name change %%bad-throw --> bad-throw.
225
c90c9685
JB
226Wed Oct 2 23:38:44 1996 Jim Blandy <jimb@totoro.cyclic.com>
227
228 * boot-9.scm (make-record-type, record-constructor): Don't assume
229 the empty list is false when parsing the argument list.
230
231Mon Sep 30 22:15:50 1996 Jim Blandy <jimb@totoro.cyclic.com>
232
233 * boot-9.scm (signal-handler): Clean up logic.
234
235 * boot-9.scm (load): Assume %load-path is always bound.
236
5552355a
GH
237Sat Sep 28 00:15:37 1996 Gary Houston <ghouston@actrix.gen.nz>
238
239 * boot-9.scm (error): replace another throw with scm-error. Throw
240 to 'misc-error instead of 'error (no need to distinguish these.)
241 Don't set up 'error as a key.
242 Set up regex-error as a key, if regex is available.
243 (signal-handler): use scm-error, not throw.
244
245* (%try-load, try-load-with-path, %load, load-with-path,
246 basic-try-load-with-path, basic-load-with-path,
247 try-load-module-with-path,load-module-with-path): deleted, since
248 they seem redundant.
249 (try-load): define using %try-load, not try-load-with-path.
250* (load): rewritten. load tries to open the file directly and
251 with a .scm extension before searching the library directories
252 (should "." be added to %load-path? then load could still open
253 directly files starting with "/").
254 (try-module-autoload): use load, not load-with-path.
255 (%load-indent): deleted, -2 was causing errors.
256
257 (%read-sharp): use port-line, not line-number.
258
c90c9685
JB
259Fri Sep 27 16:23:51 1996 Jim Blandy <jimb@totoro.cyclic.com>
260
261 * boot-9.scm (%%bad-throw): Delete definition. 1) It's very
262 straightforward to provide the equivalent functionality using
263 (catch #t ...), so there's no need for the extra complexity. 2)
264 Outside the context of a read-eval-print loop (which Guile should
265 not require) it's not clear we should do anything more complicated
266 than print an error and exit; the user or REPL can establish
267 something better if it wants. 3) In that case, it's much more
268 robust to just do it in the C code.
269
855c0eac
GH
270Tue Sep 24 06:53:04 1996 Gary Houston <ghouston@actrix.gen.nz>
271
272 * boot-9.scm (%try-load): define using primitive-load. Previously
273 %try-load itself was the primitive.
274 (load-with-path): use scm-error instead of %load-announce-lossage.
275 Errors are thrown to 'misc-error instead of 'could-not-load.
276 (%load-announce-lossage): deleted.
277
a0c97697
MD
278Mon Sep 23 00:16:31 1996 Mikael Djurfeldt <mdj@kenneth>
279
280 * boot-9.scm (warn, scm-style-repl): Use C printer instead of `print'.
281 (make-record-type type-name fields): Temporarily remove support
282 for printing of records (not possible yet with C printer).
283
be2d2c70
GH
284Fri Sep 20 00:24:27 1996 Gary Houston <ghouston@actrix.gen.nz>
285
286 * boot-9.scm (file-exists?, file-is-directory): catch only
287 system-error, not every kind of error.
288 (scm-error): new procedure.
289
434bf5ce
JB
290Thu Sep 19 16:02:46 1996 Jim Blandy <jimb@totoro.cyclic.com>
291
292 * boot-9.scm: Formatting tweaks.
293
2194b6f0
GH
294Wed Sep 18 09:07:37 1996 Gary Houston <ghouston@actrix.gen.nz>
295
296 * boot-9.scm (%%handle-system-error key): remove the code for
297 SCM-style errors. handle the case that an unexpected number
298 of args are supplied.
299 (%%system-errors): removed.
300 (error): redefine using a throw with key and 4 args.
301 ('error): associate 'error, 'error-signal keys with
302 %%handle-system-error.
303 (%%default-error-handler): removed.
304 (signal-handler): throw with 4 args and use the error-signal key.
305 Create an error message instead of using numerical codes.
306 (%%bad-throw): call error instead of throw if key not found.
307
308Tue Sep 17 04:11:28 1996 Gary Houston <ghouston@actrix.gen.nz>
309
310 * boot-9.scm: initialize new error keys (see libguile/ChangeLog).
311 (%%handle-system-error key): check subr is not #f before printing.
312 Recognize %s (embed an argument using "display") and
313 %S (embed an argument using "write").
314
234f2da6
GH
315Sun Sep 15 03:55:35 1996 Gary Houston <ghouston@actrix.gen.nz>
316
317 * boot-9.scm (%%handle-system-error key): set args and rest to
318 the empty list if they are #f.
319 Initialize out-of-range as an error key.
320
e1724d20
GH
321Sat Sep 14 03:41:15 1996 Gary Houston <ghouston@actrix.gen.nz>
322
40c8906e
GH
323 * PLUGIN/REQ: remove the "ice-9 lgh" line which causes a cycle.
324
e1724d20
GH
325 * boot-9.scm: remove leading %% from references to '%%system-error.
326 (%%handle-system-error): don't pass all the thrown arguments when
327 aborting, just the key and subr.
328 Remove the code to "Install default handlers for built-in errors."
329 Remove the definition of the syserror procedure.
330 Associate 'numerical-overflow with default handler.
331
1a80fb07
MD
332Fri Sep 13 04:58:11 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
333
334 * boot-9.scm: Name change: value-ref --> local-ref
335 resolved-ref --> nested-ref Motivation: conformance to the other
336 dictionary operators: list-ref operates on list, vector-ref
337 operates on vector, nested-ref operates on nested namespace,
338 local-ref operates on the local nested namespace.
339
7cb1d4d3
GH
340Sat Sep 7 06:44:47 1996 Gary Houston <ghouston@actrix.gen.nz>
341
342 * boot-9.scm (%%handle-system-error): recognise errors thrown
343 by lgh-error (fill-message etc.)
9561554c 344 (fill-message): check first whether args is null.
a949b3f2 345 (fill-message): bug fix and check that args is a list.
7cb1d4d3 346
393ee9a8
JB
347Thu Sep 5 11:33:41 1996 Jim Blandy <jimb@floss.cyclic.com>
348
349 * boot-9.scm: %load-path is initialized in C code now.
350 (implementation-vicinity, parse-path): Deleted, along with code to
351 initialize %load-path.
352
353 * boot-9.scm (in-vicinity): If the vicinity doesn't end with a
354 "/", use one to separate it from the file.
355
e4ef46d4
JB
356Thu Aug 29 23:05:11 1996 Thomas Morgan <tmorgan@gnu.ai.mit.edu>
357
358 * boot-9.scm (%load-path): Add the site directory.
359 Add the directory named after the version number.
360 Prepend the version number to the other directories in the path.
361 Simplify by mapping the common prefix onto each item.
362 * Makefile.in (datadir, pkgdatadir, pkgverdatadir, subpkgdatadir,
363 sitedatadir): New definitions.
364 (libparent, libdir, install_path): Replaced by above.
365 (install): Create the above directories.
366 Put the source files into subpkgdatadir.
367 (uninstall): Remove the above directories.
368
00312aa3
JB
369Thu Aug 29 21:48:47 1996 Jim Blandy <jimb@floss.cyclic.com>
370
371 Don't use the PLUGIN system to gather information for the
372 Makefile's distribution and installation targets; just put it all
373 in the Makefile directly.
374 * PLUGIN/this.configure (scm_files, aux_files): Remove sections
375 for these.
376 * configure.in: Remove code that gets and substitutes scm_files and
377 aux_files.
378 * Makefile.in (scm_files, aux_files): Write out the list of files
379 here, where people expect to find them.
380
96a8aaf3
MD
381Fri Aug 23 06:44:36 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
382
383 * boot-9.scm: Preliminary solution: optionally load the debug
7685f77c 384 module. Changed "gls" to "guile1.0b3".
96a8aaf3
MD
385
386 * debug.scm: New file: debug extensions.
387
4e378733
MD
388Wed Aug 21 13:06:56 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
389
390 * boot-9.scm (print-vector): Renamed weak-hash-table? -->
391 weak-key-hash-table?. (Again!)
392
0190d683
MD
393Tue Aug 20 07:31:39 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
394
395 * boot-9.scm (print-vector, macro-table, xformer-table):
396 Renamed weak-hash-table --> weak-key-hash-table.
397
398 * poe.scm (funcq-memo): Renamed weak-hash-table -->
399 weak-key-hash-table.
400
8b13c6b3
GH
401Sat Aug 3 06:16:35 1996 Gary Houston <ghouston@actrix.gen.nz>
402
403 * boot-9.scm (*null-device*): global constant from goonix.
404 (move->fdes): adjusted for boolean primitive-move->fdes. return
405 the modified port, always set revealed count to 1 (SCSH compatible).
406 (release-port-handle port): from goonix (SCSH compatible).
407 (%open-file): removed.
408 (open-input-file, open-output-file, file-exists?, file-is-directory?):
409 modified for open-file change (does not return #f).
410
a44a755d
JB
411Thu Aug 1 02:52:42 1996 Jim Blandy <jimb@totoro.cyclic.com>
412
413 * Makefile.in (dist-dir): New target for new dist system.
414 (manifest): Deleted.
415 * PLUGIN/this.configure (aux_files): Removed PLUGIN; it's a
416 directory, and needs special treatment in the dist-dir target.
417
02b754d3
GH
418Thu Aug 1 09:00:21 1996 Gary Houston <ghouston@actrix.gen.nz>
419
420 * boot-9.scm: remove the wrappers for '%' system primitives,
421 now that they throw errors directly.
422 remove make-simple-wrapper and similar functions.
423 protect a call to getenv which may now throw an exception.
424
425Wed Jul 31 23:44:42 1996 Gary Houston <ghouston@actrix.gen.nz>
426
427 * boot-9.scm (false-if-exception): new macro.
428
0f2d19dd
JB
429Fri Apr 19 13:53:08 1996 Tom Lord <lord@beehive>
430
431 * The more things change...
432
433