Thu Oct 17 20:33:08 1996 Gary Houston * Makefile.in (scm_files): add expect.scm. * expect.scm: new file ported from guile-iii. * boot-9.scm: remove handle-system-error, after moving the code into error-catching-loop. Don't set 'throw-handler-default property on error keys. Just interpret (almost) any throw with 4 args as an error throw. Delete some try-load stuff that was already commented out. Second thoughts, keep handle-system-error but call it from error-catching-loop. Tue Oct 15 17:07:20 1996 Jim Blandy * boot-9.scm: Doc fixes. (make-module): Rework for readability. (make-root-module, make-scm-module): USES argument to make-module should be '(), not #f. * boot-9.scm (try-load): %sys-load-path has been renamed to primitive-load-path; adjust call here. Tue Oct 15 14:25:01 1996 Mikael Djurfeldt * boot-9.scm (signal-handler): Bugfix: Moved the recording of the stack to the correct place: when it is decided to generate an error-signal. Mon Oct 14 22:20:30 1996 Mikael Djurfeldt * boot-9.scm (error-catching-loop, signal-handler, handle-system-error): Backtracing now works for signals aswell; Backtracing mechanism can now identify the stack root created by start-stack so that the user isn't exposed to system stack frames. Mon Oct 14 06:05:42 1996 Mikael Djurfeldt * Makefile.in: Added threads.scm. Mon Oct 14 04:21:51 1996 Mikael Djurfeldt * debug.scm (make-enable, make-disable): Simplified. * boot-9.scm: Renamed %%throw-handler-default --> throw-handler-default. ((handle-system-error key . arg-list)): Changed the way errors are reported. ((scm-style-repl)): Wrap up the call to eval in a start-stack acro. ((error-catching-loop thunk)): Introduce a lazy-catch into error-catching-loop so that the stack can be captured. Thu Oct 10 22:27:32 1996 Jim Blandy * mapping.scm (hash-table-mapping): Explicitly request that make-vector fill new vectors with '(); this will make it easier to port Guile Scheme code to other Schemes. * boot-9.scm (make-print-style, make-print-table): Same. Sun Oct 6 03:54:59 1996 Gary Houston * boot-9.scm (load): rewritten again. Append "." to the default %load-path. (feature?): new function: checks for a symbol in the features list. (module-local-variable): remove apparently useless (caddr (list m v ...)) (%load-announce): minor formatting change. (file-exists?): use access? if posix is featured. (file-is-directory?): use stat if i/o-extensions is featured. (try-module-autoload module-name): use file-exists? before file-is-directory? Sat Oct 5 18:54:03 1996 Mikael Djurfeldt * boot-9.scm: Added conditional loading of threads.scm. * threads.scm: New file. Modified from the Cygnus-r0.3 distribution. * boot-9.scm (error-catching-loop): Added handling of key `switch-repl'. * boot-9.scm: Name change %%bad-throw --> bad-throw. Wed Oct 2 23:38:44 1996 Jim Blandy * boot-9.scm (make-record-type, record-constructor): Don't assume the empty list is false when parsing the argument list. Mon Sep 30 22:15:50 1996 Jim Blandy * boot-9.scm (signal-handler): Clean up logic. * boot-9.scm (load): Assume %load-path is always bound. Sat Sep 28 00:15:37 1996 Gary Houston * boot-9.scm (error): replace another throw with scm-error. Throw to 'misc-error instead of 'error (no need to distinguish these.) Don't set up 'error as a key. Set up regex-error as a key, if regex is available. (signal-handler): use scm-error, not throw. * (%try-load, try-load-with-path, %load, load-with-path, basic-try-load-with-path, basic-load-with-path, try-load-module-with-path,load-module-with-path): deleted, since they seem redundant. (try-load): define using %try-load, not try-load-with-path. * (load): rewritten. load tries to open the file directly and with a .scm extension before searching the library directories (should "." be added to %load-path? then load could still open directly files starting with "/"). (try-module-autoload): use load, not load-with-path. (%load-indent): deleted, -2 was causing errors. (%read-sharp): use port-line, not line-number. Fri Sep 27 16:23:51 1996 Jim Blandy * boot-9.scm (%%bad-throw): Delete definition. 1) It's very straightforward to provide the equivalent functionality using (catch #t ...), so there's no need for the extra complexity. 2) Outside the context of a read-eval-print loop (which Guile should not require) it's not clear we should do anything more complicated than print an error and exit; the user or REPL can establish something better if it wants. 3) In that case, it's much more robust to just do it in the C code. Tue Sep 24 06:53:04 1996 Gary Houston * boot-9.scm (%try-load): define using primitive-load. Previously %try-load itself was the primitive. (load-with-path): use scm-error instead of %load-announce-lossage. Errors are thrown to 'misc-error instead of 'could-not-load. (%load-announce-lossage): deleted. Mon Sep 23 00:16:31 1996 Mikael Djurfeldt * boot-9.scm (warn, scm-style-repl): Use C printer instead of `print'. (make-record-type type-name fields): Temporarily remove support for printing of records (not possible yet with C printer). Fri Sep 20 00:24:27 1996 Gary Houston * boot-9.scm (file-exists?, file-is-directory): catch only system-error, not every kind of error. (scm-error): new procedure. Thu Sep 19 16:02:46 1996 Jim Blandy * boot-9.scm: Formatting tweaks. Wed Sep 18 09:07:37 1996 Gary Houston * boot-9.scm (%%handle-system-error key): remove the code for SCM-style errors. handle the case that an unexpected number of args are supplied. (%%system-errors): removed. (error): redefine using a throw with key and 4 args. ('error): associate 'error, 'error-signal keys with %%handle-system-error. (%%default-error-handler): removed. (signal-handler): throw with 4 args and use the error-signal key. Create an error message instead of using numerical codes. (%%bad-throw): call error instead of throw if key not found. Tue Sep 17 04:11:28 1996 Gary Houston * boot-9.scm: initialize new error keys (see libguile/ChangeLog). (%%handle-system-error key): check subr is not #f before printing. Recognize %s (embed an argument using "display") and %S (embed an argument using "write"). Sun Sep 15 03:55:35 1996 Gary Houston * boot-9.scm (%%handle-system-error key): set args and rest to the empty list if they are #f. Initialize out-of-range as an error key. Sat Sep 14 03:41:15 1996 Gary Houston * PLUGIN/REQ: remove the "ice-9 lgh" line which causes a cycle. * boot-9.scm: remove leading %% from references to '%%system-error. (%%handle-system-error): don't pass all the thrown arguments when aborting, just the key and subr. Remove the code to "Install default handlers for built-in errors." Remove the definition of the syserror procedure. Associate 'numerical-overflow with default handler. Fri Sep 13 04:58:11 1996 Mikael Djurfeldt * boot-9.scm: Name change: value-ref --> local-ref resolved-ref --> nested-ref Motivation: conformance to the other dictionary operators: list-ref operates on list, vector-ref operates on vector, nested-ref operates on nested namespace, local-ref operates on the local nested namespace. Sat Sep 7 06:44:47 1996 Gary Houston * boot-9.scm (%%handle-system-error): recognise errors thrown by lgh-error (fill-message etc.) (fill-message): check first whether args is null. (fill-message): bug fix and check that args is a list. Thu Sep 5 11:33:41 1996 Jim Blandy * boot-9.scm: %load-path is initialized in C code now. (implementation-vicinity, parse-path): Deleted, along with code to initialize %load-path. * boot-9.scm (in-vicinity): If the vicinity doesn't end with a "/", use one to separate it from the file. Thu Aug 29 23:05:11 1996 Thomas Morgan * boot-9.scm (%load-path): Add the site directory. Add the directory named after the version number. Prepend the version number to the other directories in the path. Simplify by mapping the common prefix onto each item. * Makefile.in (datadir, pkgdatadir, pkgverdatadir, subpkgdatadir, sitedatadir): New definitions. (libparent, libdir, install_path): Replaced by above. (install): Create the above directories. Put the source files into subpkgdatadir. (uninstall): Remove the above directories. Thu Aug 29 21:48:47 1996 Jim Blandy Don't use the PLUGIN system to gather information for the Makefile's distribution and installation targets; just put it all in the Makefile directly. * PLUGIN/this.configure (scm_files, aux_files): Remove sections for these. * configure.in: Remove code that gets and substitutes scm_files and aux_files. * Makefile.in (scm_files, aux_files): Write out the list of files here, where people expect to find them. Fri Aug 23 06:44:36 1996 Mikael Djurfeldt * boot-9.scm: Preliminary solution: optionally load the debug module. Changed "gls" to "guile1.0b3". * debug.scm: New file: debug extensions. Wed Aug 21 13:06:56 1996 Mikael Djurfeldt * boot-9.scm (print-vector): Renamed weak-hash-table? --> weak-key-hash-table?. (Again!) Tue Aug 20 07:31:39 1996 Mikael Djurfeldt * boot-9.scm (print-vector, macro-table, xformer-table): Renamed weak-hash-table --> weak-key-hash-table. * poe.scm (funcq-memo): Renamed weak-hash-table --> weak-key-hash-table. Sat Aug 3 06:16:35 1996 Gary Houston * boot-9.scm (*null-device*): global constant from goonix. (move->fdes): adjusted for boolean primitive-move->fdes. return the modified port, always set revealed count to 1 (SCSH compatible). (release-port-handle port): from goonix (SCSH compatible). (%open-file): removed. (open-input-file, open-output-file, file-exists?, file-is-directory?): modified for open-file change (does not return #f). Thu Aug 1 02:52:42 1996 Jim Blandy * Makefile.in (dist-dir): New target for new dist system. (manifest): Deleted. * PLUGIN/this.configure (aux_files): Removed PLUGIN; it's a directory, and needs special treatment in the dist-dir target. Thu Aug 1 09:00:21 1996 Gary Houston * boot-9.scm: remove the wrappers for '%' system primitives, now that they throw errors directly. remove make-simple-wrapper and similar functions. protect a call to getenv which may now throw an exception. Wed Jul 31 23:44:42 1996 Gary Houston * boot-9.scm (false-if-exception): new macro. Fri Apr 19 13:53:08 1996 Tom Lord * The more things change...