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