1 Thu Feb 27 16:04:45 1997 Marius Vollmer <mvo@zagadka.ping.de>
3 * boot-9.scm (module-defined?): New function.
4 (macroexpand-1, macroexpand): Use local-ref instead of defined?
6 * r4rs.scm (%load-verbosely): Use "module-defined?" instead of
8 * slib.scm (defined?): New function to take the place of the
9 builtin "defined?". It allways examines the slib module.
11 Mon Feb 24 21:46:15 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
13 * configure.in: Added AM_MAINTAINER_MODE
15 Sat Feb 15 04:51:20 1997 Gary Houston <ghouston@actrix.gen.nz>
17 * boot-9.scm (read-sharp): define directly, don't go through a
20 Tue Feb 11 08:45:48 1997 Gary Houston <ghouston@actrix.gen.nz>
22 * boot-9.scm (uniform-vector-set!): use uniform-array-set1!, not
23 uniform-vector-set1! which doesn't exist.
25 Mon Feb 10 03:01:48 1997 Mikael Djurfeldt <mdj@kenneth>
27 * boot-9.scm (backtrace): Removed. (A C version now exists in
30 Fri Jan 24 06:05:36 1997 Gary Houston <ghouston@actrix.gen.nz>
32 * boot-9.scm (read-line!, read-delimited!, read-delimited,
33 read-line): new procedures, see libguile/ChangeLog.
35 Thu Jan 16 17:07:03 1997 Marius Vollmer <mvo@zagadka.ping.de>
37 Added dynamic linking of modules. See libguile/DYNAMIC-LINKING.
39 * boot-9.scm (split-c-module-name, convert-c-registered-modules,
40 init-dynamic-module, dynamic-maybe-call,
41 find-and-link-dynamic-module, link-dynamic-module,
42 try-module-dynamic-link, registered-modules): New definitions for
43 dynamic linking of modules.
44 (resolve-module): Try to dynamically link the requested module
45 after failing to load it as Scheme code.
47 Wed Jan 8 05:50:14 1997 Gary Houston <ghouston@actrix.gen.nz>
49 * boot-9.scm (getservbyport, getservbyname): remove stray %.
51 Tue Jan 7 20:02:24 1997 Jim Blandy <jimb@floss.cyclic.com>
53 * boot-9.scm (and=>): Rename THUNK argument to PROCEDURE, 'cos
56 * lineio.scm (make-line-buffering-input-port): Properly test for
57 the case of an empty buffer list. The old code assumed that '()
60 Mon Jan 6 01:13:53 1997 Mikael Djurfeldt <mdj@kenneth>
62 * * boot-9.scm (use-modules): New macro (from Marius Vollmer).
63 (use-modules <module name> ...) Put the the modules named by
64 <module name> ... on the use list of the current module.
66 Sun Jan 5 15:52:59 1997 Jim Blandy <jimb@floss.cyclic.com>
68 * boot-9.scm (error-catching-loop): Remove message saying that
69 typing "$" will put you in the debugger. This isn't implemented
72 Sun Dec 22 23:27:25 1996 Jim Blandy <jimb@floss.cyclic.com>
74 * boot-9.scm (delq-all!): Function deleted; delq!'s semantics have
75 been fixed, so this function is superfluous.
76 (transform-usage-lambda): Use delq!, not delq-all!.
78 Tue Dec 17 20:36:45 1996 Marius Vollmer <mvo@zagadka.ping.de>
80 * boot-9.scm (resolve-module): New optional parameter that
81 controls whether autoloading is attempted or not. Default is #t.
82 (process-define-module): Don't autoload the defined module.
83 (try-module-autoload): Don't autoload the directory modules.
85 * boot-9.scm (process-define-module): Ensure that the-scm-module
86 is last in the `uses' list to allow shadowing builtin
87 bindings. All :use-module options are added in the order they
88 appear in the arguments but before anything already on the list
89 (such as the-scm-module).
91 Wed Dec 11 21:06:05 1996 Gary Houston <ghouston@actrix.gen.nz>
93 * slib.scm (slib-parent-dir): throw error if #f returned from
96 Sat Nov 30 23:57:28 1996 Tom Tromey <tromey@cygnus.com>
98 * PLUGIN/greet, PLUGIN/split.sed, PLUGIN/this.configure: Removed.
99 * Makefile.am, aclocal.m4: New files.
100 * configure.in: Updated for Automake.
102 Wed Nov 27 14:16:14 1996 Marius Vollmer <mvo@zagadka.ping.de>
104 * boot-9.scm (macroexpand-1, macroexpand), slib.scm
105 (slib:features), r4rs.scm (%load-verbosely): "defined?" is now a
106 function, use it accordingly.
108 Thu Nov 21 11:12:10 1996 Jim Blandy <jimb@floss.cyclic.com>
110 It's an "eval closure", not an "eval thunk." A thunk is a
111 function of no arguments.
112 * boot-9.scm (module-type): Rename module field.
113 (make-module, eval-in-module, make-root-module,
114 set-current-module): Uses changed.
115 (module-eval-closure, set-module-eval-closure!,
116 root-module-closure): Renamed from module-eval-thunk,
117 set-module-eval-thunk!, root-module-thunk.
118 (set-current-module): Change uses of *top-level-lookup-thunk* to
119 *top-level-eval-closure*.
121 Wed Nov 20 14:45:27 1996 Jim Blandy <jimb@totoro.cyclic.com>
123 * slib.scm (slib-parent-dir): Use string-length, not length.
124 (Thanks to Bernard Urban.)
126 Sat Nov 2 20:00:42 1996 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
128 * boot-9.scm: The debugging evaluator and recording of positions
129 aren't enabled by default any longer (they are switched on in
130 debug.scm). But during development we want to have them also
131 *inside* boot-9.scm. Therefore, two lines are added at the
132 beginning of boot-9.scm to enable these.
134 Call `provide' so that `records' are included among the
137 The scheme for saving the stack has been adjusted: save-stack is
138 now commonly available for saving the stack. Calling `save-stack'
139 sets a flag `stack-saved?' which prevents overwriting the stack.
140 `stack-saved?' is reset at `abort'.
142 Spelling correction: seperate --> separate.
144 Removed `:'s that had creeped into some comments.
146 The repl now doesn't print #<unspecified> results any longer
147 If the user wants to see this, he can do
148 (assert-repl-print-unspecified #t) in his startup file.
150 The user now gets a friendly message instead of a backtrace at
153 Added `before-read-hook'.
155 Load module (ice-9 emacs) if option `-e' was specified.
157 (provide): New function.
159 (error): Save stack at entry, so that Guile entrails won't show up
162 (backtrace): New function.
164 (save-stack): Can now take arbitrary number of stack narrowing
165 specifier pairs. The first specifier in a pair controls inner
166 border, the second the outer border. A number means cut that
167 number of frames, a procedure object means cut until that object
168 is found in operator position in a frame.
170 * debug.scm: Enable debugging evaluator and recording of positions
173 * slib.scm (slib:load): Adapt to the new behavior of
174 primitive-load: It doesn't any longer try both with and without
175 ".scm" extension. (We don't want to use %search-load-path here.)
177 (implementation-vicinity): New function. slib requires it
179 (library-vicinity): Updated.
181 Load "require.scm" in the library-vicinity.
183 (install-require-vicinity, install-require-module): New functions.
185 Mon Oct 28 17:56:29 1996 Jim Blandy <jimb@floss.cyclic.com>
187 * boot-9.scm (load-from-path): New function.
189 * boot-9.scm (try-load, basic-try-load, try-load-module,
190 try-load): Deleted. I don't think they're being used.
192 * Makefile.in (scm_files): Add r4rs.scm and test.scm to this list,
193 so they'll get distributed.
195 Get Guile to be a little less chatty by default. The new user
196 should see as little clutter as possible.
197 * r4rs.scm (%load-verbosely): Make this #f by default.
198 * boot-9.scm (scm-repl-verbose): Make this #f by default.
199 (scm-style-repl): Don't run 'pk' on the value passed to quit.
201 * r4rs.scm: New file.
202 * boot-9.scm: Load r4rs.scm, first thing.
203 (OPEN_READ, OPEN_WRITE, OPEN_BOTH, *null-device*, open-input-file,
204 open-output-file, open-io-file, close-input-port,
205 close-output-port, close-io-port, call-with-input-file,
206 call-with-output-file, with-input-from-port, with-output-to-port,
207 with-error-to-port, with-input-from-file, with-output-to-file,
208 with-error-to-file, with-input-from-string, with-output-to-string,
209 with-error-to-string, the-eof-object): Definitions moved to
210 r4rs.scm. Not all of them are R4RS, but those that are use those
212 (load, %load-verbosely, %load-announce): Moved, along with code to
213 set %load-hook, to r4rs.scm.
215 * test.scm: New file.
217 * boot-9.scm (integer?): Definition deleted, in favor of the one
218 present in libguile (which used to be called int?). I have no
219 idea why integer? didn't just call int? to begin with.
221 * boot-9.scm (<, <=, =, >, >=): Definitions in terms of <?, <=?,
222 =?, >?, and >=? deleted; they're defined that way by libguile now.
224 * boot-9.scm (load): Simplified; primitive-load does most of this
226 (%load-announce-win): Removed; no longer used. Set %load-hook to
229 Sun Oct 27 07:47:03 1996 Gary Houston <ghouston@actrix.gen.nz>
231 * boot-9.scm (stat:dev, stat:ino, stat:mode, stat:nlink, stat:uid,
232 stat:gid, stat:rdev, stat:size, stat:atime, stat:mtime,
233 stat:ctime, stat:blksize, stat:blocks) accessor functions for stat
235 (file-is-directory?): use stat:type.
237 Fri Oct 25 03:34:47 1996 Jim Blandy <jimb@floss.cyclic.com>
239 * boot-9.scm (%read-sharp): Don't recognize the `#!' syntax here;
240 that's now taken care of in libguile, and in a way compatible with
241 SCSH (which this isn't).
243 Mon Oct 21 18:52:36 1996 Jim Blandy <jimb@totoro.cyclic.com>
245 * boot-9.scm: Formatting tweaks.
247 Fri Oct 18 01:03:08 1996 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
249 * boot-9.scm (handle-system-error): Added hooks before-error-hook,
250 after-error-hook, before-backtrace-hook and after-backtrace-hook
251 to the error handler. E.g.: fancy emacs support could plug into
253 (save-stack): New function. The stack is now made differently
254 depending on the stack id. (The motivation is to make a better
255 choice regarding what stack frames to present to the user.)
256 (error-catching-loop): Stack handling code moved outside into
259 Thu Oct 17 20:33:08 1996 Gary Houston <ghouston@actrix.gen.nz>
261 * Makefile.in (scm_files): add expect.scm.
263 * expect.scm: new file ported from guile-iii.
265 * boot-9.scm: remove handle-system-error, after moving the code into
267 Don't set 'throw-handler-default property on error keys.
268 Just interpret (almost) any throw with 4 args as an error throw.
269 Delete some try-load stuff that was already commented out.
271 Second thoughts, keep handle-system-error but call it from
274 Tue Oct 15 17:07:20 1996 Jim Blandy <jimb@floss.cyclic.com>
276 * boot-9.scm: Doc fixes.
277 (make-module): Rework for readability.
278 (make-root-module, make-scm-module): USES argument to make-module
279 should be '(), not #f.
281 * boot-9.scm (try-load): %sys-load-path has been renamed to
282 primitive-load-path; adjust call here.
284 Tue Oct 15 14:25:01 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
286 * boot-9.scm (signal-handler): Bugfix: Moved the recording of
287 the stack to the correct place: when it is decided to generate an
290 Mon Oct 14 22:20:30 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
292 * boot-9.scm (error-catching-loop, signal-handler,
293 handle-system-error): Backtracing now works for signals aswell;
294 Backtracing mechanism can now identify the stack root created by
295 start-stack so that the user isn't exposed to system stack frames.
297 Mon Oct 14 06:05:42 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
299 * Makefile.in: Added threads.scm.
301 Mon Oct 14 04:21:51 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
303 * debug.scm (make-enable, make-disable): Simplified.
305 * boot-9.scm: Renamed %%throw-handler-default -->
306 throw-handler-default.
307 ((handle-system-error key . arg-list)): Changed the way errors are
309 ((scm-style-repl)): Wrap up the call to eval in a start-stack
311 ((error-catching-loop thunk)): Introduce a lazy-catch into
312 error-catching-loop so that the stack can be captured.
314 Thu Oct 10 22:27:32 1996 Jim Blandy <jimb@totoro.cyclic.com>
316 * mapping.scm (hash-table-mapping): Explicitly request that
317 make-vector fill new vectors with '(); this will make it easier to
318 port Guile Scheme code to other Schemes.
319 * boot-9.scm (make-print-style, make-print-table): Same.
321 Sun Oct 6 03:54:59 1996 Gary Houston <ghouston@actrix.gen.nz>
323 * boot-9.scm (load): rewritten again.
324 Append "." to the default %load-path.
325 (feature?): new function: checks for a symbol in the features list.
326 (module-local-variable): remove apparently useless (caddr (list m v
328 (%load-announce): minor formatting change.
329 (file-exists?): use access? if posix is featured.
330 (file-is-directory?): use stat if i/o-extensions is featured.
331 (try-module-autoload module-name): use file-exists? before
334 Sat Oct 5 18:54:03 1996 Mikael Djurfeldt <mdj@kenneth>
336 * boot-9.scm: Added conditional loading of threads.scm.
338 * threads.scm: New file. Modified from the Cygnus-r0.3
341 * boot-9.scm (error-catching-loop): Added handling of key
344 * boot-9.scm: Name change %%bad-throw --> bad-throw.
346 Wed Oct 2 23:38:44 1996 Jim Blandy <jimb@totoro.cyclic.com>
348 * boot-9.scm (make-record-type, record-constructor): Don't assume
349 the empty list is false when parsing the argument list.
351 Mon Sep 30 22:15:50 1996 Jim Blandy <jimb@totoro.cyclic.com>
353 * boot-9.scm (signal-handler): Clean up logic.
355 * boot-9.scm (load): Assume %load-path is always bound.
357 Sat Sep 28 00:15:37 1996 Gary Houston <ghouston@actrix.gen.nz>
359 * boot-9.scm (error): replace another throw with scm-error. Throw
360 to 'misc-error instead of 'error (no need to distinguish these.)
361 Don't set up 'error as a key.
362 Set up regex-error as a key, if regex is available.
363 (signal-handler): use scm-error, not throw.
365 (%try-load, try-load-with-path, %load, load-with-path,
366 basic-try-load-with-path, basic-load-with-path,
367 try-load-module-with-path,load-module-with-path): deleted, since
369 (try-load): define using %try-load, not try-load-with-path.
370 (load): rewritten. load tries to open the file directly and
371 with a .scm extension before searching the library directories
372 (should "." be added to %load-path? then load could still open
373 directly files starting with "/").
374 (try-module-autoload): use load, not load-with-path.
375 (%load-indent): deleted, -2 was causing errors.
377 (%read-sharp): use port-line, not line-number.
379 Fri Sep 27 16:23:51 1996 Jim Blandy <jimb@totoro.cyclic.com>
381 * boot-9.scm (%%bad-throw): Delete definition. 1) It's very
382 straightforward to provide the equivalent functionality using
383 (catch #t ...), so there's no need for the extra complexity. 2)
384 Outside the context of a read-eval-print loop (which Guile should
385 not require) it's not clear we should do anything more complicated
386 than print an error and exit; the user or REPL can establish
387 something better if it wants. 3) In that case, it's much more
388 robust to just do it in the C code.
390 Tue Sep 24 06:53:04 1996 Gary Houston <ghouston@actrix.gen.nz>
392 * boot-9.scm (%try-load): define using primitive-load. Previously
393 %try-load itself was the primitive.
394 (load-with-path): use scm-error instead of %load-announce-lossage.
395 Errors are thrown to 'misc-error instead of 'could-not-load.
396 (%load-announce-lossage): deleted.
398 Mon Sep 23 00:16:31 1996 Mikael Djurfeldt <mdj@kenneth>
400 * boot-9.scm (warn, scm-style-repl): Use C printer instead of `print'.
401 (make-record-type type-name fields): Temporarily remove support
402 for printing of records (not possible yet with C printer).
404 Fri Sep 20 00:24:27 1996 Gary Houston <ghouston@actrix.gen.nz>
406 * boot-9.scm (file-exists?, file-is-directory): catch only
407 system-error, not every kind of error.
408 (scm-error): new procedure.
410 Thu Sep 19 16:02:46 1996 Jim Blandy <jimb@totoro.cyclic.com>
412 * boot-9.scm: Formatting tweaks.
414 Wed Sep 18 09:07:37 1996 Gary Houston <ghouston@actrix.gen.nz>
416 * boot-9.scm (%%handle-system-error key): remove the code for
417 SCM-style errors. handle the case that an unexpected number
418 of args are supplied.
419 (%%system-errors): removed.
420 (error): redefine using a throw with key and 4 args.
421 ('error): associate 'error, 'error-signal keys with
422 %%handle-system-error.
423 (%%default-error-handler): removed.
424 (signal-handler): throw with 4 args and use the error-signal key.
425 Create an error message instead of using numerical codes.
426 (%%bad-throw): call error instead of throw if key not found.
428 Tue Sep 17 04:11:28 1996 Gary Houston <ghouston@actrix.gen.nz>
430 * boot-9.scm: initialize new error keys (see libguile/ChangeLog).
431 (%%handle-system-error key): check subr is not #f before printing.
432 Recognize %s (embed an argument using "display") and
433 %S (embed an argument using "write").
435 Sun Sep 15 03:55:35 1996 Gary Houston <ghouston@actrix.gen.nz>
437 * boot-9.scm (%%handle-system-error key): set args and rest to
438 the empty list if they are #f.
439 Initialize out-of-range as an error key.
441 Sat Sep 14 03:41:15 1996 Gary Houston <ghouston@actrix.gen.nz>
443 * PLUGIN/REQ: remove the "ice-9 lgh" line which causes a cycle.
445 * boot-9.scm: remove leading %% from references to '%%system-error.
446 (%%handle-system-error): don't pass all the thrown arguments when
447 aborting, just the key and subr.
448 Remove the code to "Install default handlers for built-in errors."
449 Remove the definition of the syserror procedure.
450 Associate 'numerical-overflow with default handler.
452 Fri Sep 13 04:58:11 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
454 * boot-9.scm: Name change: value-ref --> local-ref
455 resolved-ref --> nested-ref Motivation: conformance to the other
456 dictionary operators: list-ref operates on list, vector-ref
457 operates on vector, nested-ref operates on nested namespace,
458 local-ref operates on the local nested namespace.
460 Sat Sep 7 06:44:47 1996 Gary Houston <ghouston@actrix.gen.nz>
462 * boot-9.scm (%%handle-system-error): recognise errors thrown
463 by lgh-error (fill-message etc.)
464 (fill-message): check first whether args is null.
465 (fill-message): bug fix and check that args is a list.
467 Thu Sep 5 11:33:41 1996 Jim Blandy <jimb@floss.cyclic.com>
469 * boot-9.scm: %load-path is initialized in C code now.
470 (implementation-vicinity, parse-path): Deleted, along with code to
471 initialize %load-path.
473 * boot-9.scm (in-vicinity): If the vicinity doesn't end with a
474 "/", use one to separate it from the file.
476 Thu Aug 29 23:05:11 1996 Thomas Morgan <tmorgan@gnu.ai.mit.edu>
478 * boot-9.scm (%load-path): Add the site directory.
479 Add the directory named after the version number.
480 Prepend the version number to the other directories in the path.
481 Simplify by mapping the common prefix onto each item.
482 * Makefile.in (datadir, pkgdatadir, pkgverdatadir, subpkgdatadir,
483 sitedatadir): New definitions.
484 (libparent, libdir, install_path): Replaced by above.
485 (install): Create the above directories.
486 Put the source files into subpkgdatadir.
487 (uninstall): Remove the above directories.
489 Thu Aug 29 21:48:47 1996 Jim Blandy <jimb@floss.cyclic.com>
491 Don't use the PLUGIN system to gather information for the
492 Makefile's distribution and installation targets; just put it all
493 in the Makefile directly.
494 * PLUGIN/this.configure (scm_files, aux_files): Remove sections
496 * configure.in: Remove code that gets and substitutes scm_files and
498 * Makefile.in (scm_files, aux_files): Write out the list of files
499 here, where people expect to find them.
501 Fri Aug 23 06:44:36 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
503 * boot-9.scm: Preliminary solution: optionally load the debug
504 module. Changed "gls" to "guile1.0b3".
506 * debug.scm: New file: debug extensions.
508 Wed Aug 21 13:06:56 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
510 * boot-9.scm (print-vector): Renamed weak-hash-table? -->
511 weak-key-hash-table?. (Again!)
513 Tue Aug 20 07:31:39 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
515 * boot-9.scm (print-vector, macro-table, xformer-table):
516 Renamed weak-hash-table --> weak-key-hash-table.
518 * poe.scm (funcq-memo): Renamed weak-hash-table -->
521 Sat Aug 3 06:16:35 1996 Gary Houston <ghouston@actrix.gen.nz>
523 * boot-9.scm (*null-device*): global constant from goonix.
524 (move->fdes): adjusted for boolean primitive-move->fdes. return
525 the modified port, always set revealed count to 1 (SCSH compatible).
526 (release-port-handle port): from goonix (SCSH compatible).
527 (%open-file): removed.
528 (open-input-file, open-output-file, file-exists?, file-is-directory?):
529 modified for open-file change (does not return #f).
531 Thu Aug 1 02:52:42 1996 Jim Blandy <jimb@totoro.cyclic.com>
533 * Makefile.in (dist-dir): New target for new dist system.
535 * PLUGIN/this.configure (aux_files): Removed PLUGIN; it's a
536 directory, and needs special treatment in the dist-dir target.
538 Thu Aug 1 09:00:21 1996 Gary Houston <ghouston@actrix.gen.nz>
540 * boot-9.scm: remove the wrappers for '%' system primitives,
541 now that they throw errors directly.
542 remove make-simple-wrapper and similar functions.
543 protect a call to getenv which may now throw an exception.
545 Wed Jul 31 23:44:42 1996 Gary Houston <ghouston@actrix.gen.nz>
547 * boot-9.scm (false-if-exception): new macro.
549 Fri Apr 19 13:53:08 1996 Tom Lord <lord@beehive>
551 * The more things change...