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