* boot-9.scm: Let the user start in module `(user)' instead of
[bpt/guile.git] / ice-9 / ChangeLog
CommitLineData
13e341bb
MD
11998-07-14 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2
3 * boot-9.scm: Let the user start in module `(user)' instead of
4 module `(guile)'. Also make sure that `(user)' uses suitable
5 modules. This change improves Guile stability substantially since
6 bindings will only be copied from the root module: If the user
7 redefines builtins in `(user)' it won't affect the internal
8 operation of Guile itself.
9
c6775c40
MD
101998-06-19 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
11
12 * boot-9.scm (load-module): When loading files from within files
13 themselves being loaded: Use the directory path of the file being
14 loaded as root for relative filenames. (After suggestion by
15 Steven G. Johnson.)
16
ef0d04e5
MD
171998-06-15 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
18
19 * emacs.scm (emacs-load): New feature: Eval in specified module.
20
4ffd142c
MD
211998-06-14 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
22
23 * readline.scm: Typo in regex module name.
24
edd9ac21
MD
251998-06-13 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
26
27 * readline.scm (apropos-completion-function): regexp-quote text to
28 be completed.
29
a66c53a8
MD
301998-06-11 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
31
edd9ac21 32 * debug.scm, emacs.scm: Bugfix: Treat `the-last-stack' as a fluid.
a66c53a8 33
d38a6802
MD
341998-06-09 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
35
36 * boot-9.scm: Check that (current-input-port) is a tty before
37 enabling readline. (Thanks to Michael N. Livshin.)
38
cf266109
MD
391998-06-07 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
40
41 * boot-9.scm (use-syntax): Turned into a macro inorder to be
42 similar in use to `use-modules'.
43 Example: (use-syntax (ice-9 syncase)) will 1. load the module
44 (ice-9 syncase), and, 2. install the procedure `syncase' as eval
45 transformer.
46 (internal-use-syntax): New procedure.
47 (process-define-module): Use `internal-use-syntax'.
48
67da6c57
MD
491998-05-19 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
50
51 * Makefile.am (ice9_sources): Add emacs.scm.
52
1b558afd
MD
531998-05-13 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
54
55 * readline.scm: Use the new readline facilities: Add the
56 possibility to control input and output ports; Add apropos
57 completion.
58
59 * boot-9.scm: Antirevert Jim's readline code which he reverted
60 19971027 and adapt it to the current readline interface.
61
62 * boot-9.scm (top-repl): Only enable readline if not using the
63 Emacs interface; Only use repl prompt when using the readline port
64 from repl-read. (We don't want to see it when calling `read'.)
65
66 * boot-9.scm (remove-hook!): Parenthesis bug.
67
f246e585
MD
681998-05-11 Mikael Djurfeldt <mdj@kenneth>
69
70 * boot-9.scm: Load readline module if readline is present.
71
72 * readline.scm (apropos-completion-function): New procedure:
73 Symbolic completion. (Thanks to Andrew Archibald!)
74
f714ca8e
MD
751998-04-22 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
76
77 * boot-9.scm (process-define-module): Added keyword use-syntax.
78
3ede541d
MD
791998-04-19 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
80
81 * nonblocking.scm: Removed. libguile is now inherently
82 nonblocking through the use of scm_internal_select.
83
84 * emacs.scm: Removed use of nonblocking.scm.
85
86 * gwish.scm, gtcl.scm: Removed. tcltk.scm has made these
87 obsolete.
88
608cf70c
MD
891998-04-15 Mikael Djurfeldt <mdj@nada.kth.se>
90
91 * runq.scm (runq-control): Corrected spelling of enqueue!.
92 (Thanks to Karl M. Hegbloom.)
93
16b8ebbe
MD
941998-03-30 Mikael Djurfeldt <mdj@nada.kth.se>
95
96 * boot-9.scm: Added new run-time option interface eval-options.
97
abf06c12
MD
981998-03-28 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
99
100 * boot-9.scm (remove-hook!): New macro. (Thanks to Maciej
101 Stachowiak.)
102
13dc0cae
MD
1031998-01-30 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
104
105 * threads.scm: Added simple error and signal handler.
106 (make-thread, begin-handler): Use this handler. The most
107 important effect of this is that signals get unmasked.
108 Previously, when a signal was thrown signals remained masked
109 (signals get masked when a signal is taken) which influenced other
110 threads.
111
841d28d7
TP
1121998-01-01 Tim Pierce <twp@skepsis.com>
113
114 A better fix to the SLIB identity problem -- thanks to Marius Vollmer.
115 * slib.scm (identity): Unmake public.
116 (slib:eval): Evaluate inside `slib-module'.
117
ad76c8d9
TP
1181997-12-24 Tim Pierce <twp@skepsis.com>
119
249cdba6
TP
120 * boot-9.scm: Doc fix.
121
ad76c8d9
TP
122 * slib.scm (identity): Made public.
123 (home-vicinity): New function (from SLIB/Template.scm).
124
848f2a01
TP
1251997-12-13 Tim Pierce <twp@skepsis.com>
126
127* * boot-9.scm (read-line): Rewritten to call %read-line for
128 improved speed. Minor user-visible changes: the new functions are
129 hardwired to treat the LFD character as signifying end-of-line, so
130 changing `scm-line-incrementors' will no longer affect the
131 behavior of read-line. On platforms which do not represent
132 end-of-line with a LFD character, read-line should behave more
133 like native line-processing facilities, but there is still a ways
134 to go here.
135
8bb7f646
MD
136Sat Nov 29 01:24:46 1997 Mikael Djurfeldt <mdj@kenneth>
137
138 * boot-9.scm (error-catching-loop, save-stack): `the-last-stack'
139 is now a fluid.
140
ebd79f62
TP
1411997-11-28 Tim Pierce <twp@skepsis.com>
142
848f2a01
TP
143 * boot-9.scm (find-and-link-dynamic-module): If a module directory
144 contains a .la file (a libtool support file), attempt to extract
145 the shared library name from that file. If the .la file does not
146 exist, try to link against a .so file. Libtool-generated compiled
147 modules should load more cleanly in Guile now.
ebd79f62
TP
148 (try-using-libtool-name, try-using-sharlib-name): New functions.
149
28d8ab3c
GH
150Sun Nov 9 06:10:59 1997 Gary Houston <ghouston@actrix.gen.nz>
151
152 * boot-9.scm (set-batch-mode?!, batch-mode?): initialize more
153 usefully so they will work from a script.
154
13a7ee16
MV
1551997-10-31 Marius Vollmer <mvo@zagadka.ping.de>
156
157 * boot-9.scm (inherit-print-state): Moved definition to the
158 neighborhood of the record code.
159
930b16c0
JB
160Mon Oct 27 02:05:49 1997 Jim Blandy <jimb@totoro.red-bean.com>
161
162 * boot-9.scm: Revert changes to this file from Oct 23. It turns
163 out to interact badly with the Emacs support and the Tcl/Tk
164 support. It's not a high enough priority at the moment to be
165 worth fixing. I'm leaving the other readline support in, though.
166
3fa5bb75
JB
167Sat Oct 25 14:23:22 1997 Jim Blandy <jimb@totoro.red-bean.com>
168
169 * Makefile.am: Include readline.scm in the list of files to be
170 installed, so Guile can find it for interactive use.
171 * Makefile.in: Regenerated.
172
2e368582
JB
173Thu Oct 23 01:00:33 1997 Jim Blandy <jimb@totoro.red-bean.com>
174
175 Add support for readline function.
176 * readline.scm: New module.
177 * boot-9.scm (repl-reader): New function.
178 (scm-style-repl): Call repl-reader, instead of doing the reading
179 ourselves. Remove repl-report-reset; it was never used for
180 anything.
181 (top-repl): If we've got the readline primitives, then redefine
182 repl-reader to use them.
183 If we've got the readline primitives, import the readline module.
184
185 * ls.scm (ls, lls): Don't assume (eq? #f '()).
186
187Wed Oct 22 18:26:57 1997 Jim Blandy <jimb@totoro.red-bean.com>
188
189 * calling.scm, common-list.scm, ls.scm, q.scm, runq.scm,
190 string-fun.scm: Added copyright notices; reformatted.
191
4bbbcd5c
GH
192Thu Oct 9 05:44:00 1997 Gary Houston <ghouston@actrix.gen.nz>
193
194 * expect.scm: (expect-regexec): new procedure, use it in
195 expect-strings to fix the => syntax under the new regex system.
196 (top): include regex module in define-module statement.
197
198Wed Oct 8 03:16:01 1997 Gary Houston <ghouston@actrix.gen.nz>
199
200 * (error-catching-loop): new local variable "interactive". if
201 #f, abort terminates the process.
202 (set-batch-mode?!, batch-mode?): new closures, defined in
203 error-catching-loop. the names are from scsh.
204
c115b54b
MV
2051997-10-06 Marius Vollmer <mvo@zagadka.ping.de>
206
207 * boot-9.scm (inherit-print-state): If NEW-PORT contains a
208 print-state, throw it away.
209
2e368582 210Fri Oct 3 12:00:00 Mikael Djurfeldt <mdj@nada.kth.se>
9f9aa47b
MD
211
212 * boot-9.scm (struct-layout): Use `vtable-index-layout' instead of
213 `0'.
214
2e368582 215Thu Oct 2 12:00:00 Mikael Djurfeldt <mdj@nada.kth.se>
9f9aa47b
MD
216
217 * boot-9.scm (struct-printer, make-struct-printer,
218 set-struct-printer-in-vtable!, *struct-printer*): Removed.
219 (record-type-vtable, make-record-type): Don't use make-struct-printer.
220 (record-type-vtable): User fields "prpr" (printer is no longer a
221 user field).
222 (record-type-name, record-type-fields): Decreased slot index by
223 one; Use `vtable-offset-user'.
224
2e368582 225Thu Oct 2 12:00:00 Marius Vollmer <mvo@zagadka.ping.de>
21fdbaee
MV
226
227 * boot-9.scm (inherit-print-state): New experimental function.
228
adc14c93
JB
229Tue Sep 30 13:12:48 1997 Jim Blandy <jimb@totoro.red-bean.com>
230
231 Suggestion and script from Maciej Stachowiak:
232 * boot-9.scm: Split off modules into separate, autoloadable files.
233 This reduces startup time from 10.5s to 5.5s (user cpu).
234 * calling.scm, common-list.scm, ls.scm, q.scm, runq.scm,
235 string-fun.scm: New files, containing stuff that used to be in
236 boot-9.scm.
237 * Makefile.am (ice9_sources): List new files here, for
238 distribution and installation.
239 * Makefile.in: Regenerated.
240
5aa28c1e
JB
241Mon Sep 29 23:53:55 1997 Jim Blandy <jimb@totoro.red-bean.com>
242
243 * Makefile.in: Regenerated with automake 1.2c.
244
2f110c3c
MD
245Mon Sep 29 03:21:24 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
246
d1005e3c
MD
247 * slib.scm (slib:load): slib:load first tries to load the file
248 named NAME, then NAME.scm. On error, report the error occuring at
249 the first attempt (NAME) rather than the second (NAME.scm).
250
2f110c3c
MD
251 * boot-9.scm: Bugfix: Hard-solder the print-option procedure into
252 the make-options macro so that we needn't refer to a global
253 symbol.
254
83b38198
MD
255Sun Sep 28 21:40:24 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
256
257 * debug.scm: Moved options interface procedures to boot-9.scm.
258
259 * boot-9.scm: Define options interface procedures here instead.
260
af01fdcd
JB
261Sat Sep 27 20:19:20 1997 Jim Blandy <jimb@totoro.red-bean.com>
262
263 * boot-9.scm (separate-fields-discarding-char,
264 separate-fields-after-char, separate-fields-before-char): Call
265 continuation function, RET, as advertised: with each separated
266 field a separate argument.
267
268 * Makefile.in: Regenerated with automake 1.2a.
269
534a0099
MD
270Sat Sep 20 14:23:53 1997 Mikael Djurfeldt <mdj@kenneth>
271
272 * slib.scm (slib:load): Export.
273
274 * boot-9.scm (in-vicinity): Bugfix: Don't add "/" to an empty
275 vicinity;
276 Provide defmacro.
277
8fa5faad
MD
278Thu Sep 18 01:24:31 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
279
280 * r4rs.scm (apply): Set name property to 'apply.
281
11b05261
MD
282Tue Sep 16 22:09:50 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
283
284 * boot-9.scm (keyword->symbol, display-usage-report): Changed
0a54457d
MD
285 length --> string-length. (Thanks to Aleksandar Bakic.)
286 (separate-fields-discarding-char, separate-fields-after-char,
287 separate-fields-before-char): Bugfix from Maciej Stachowiak
288 <mstachow@mit.edu>. Thanks!
a4f9b1f6
MD
289 (try-module-linked): Try to find module among those already
290 registered.
291 (try-module-dynamic-link): Removed the first test which
292 corresponds to a call to `try-module-linked'.
293 (resolve-module): Resolve modules in this order: 1. Already
294 registered modules (for example those which have been statically
295 linked), 2. Try to autoload an .scm-file, 3. Try to dynamically
296 link a .so-file.
11b05261 297
24b2aac7
MD
298Mon Sep 15 23:39:54 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
299
300 * boot-9.scm (iota): Renamed list-reverse! --> reverse!
301
7cfae7e6
MD
302Thu Sep 11 02:31:38 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
303
304 * session.scm (name): New procedure: Gives name of object.
305 (source): New procedure: Gives source of object.
306
7a0ff2f8
MD
307Wed Sep 10 20:12:45 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
308
309* * boot-9.scm (primitive-macro?): New procedure.
310
311 * slib.scm: Added hack which transfers syntactic information from
312 the builtin variable `define' to the slib version if module (ice-9
313 syncase) has been loaded. This is necessary to get correct
314 expansion inside the slib module.
315
316 * psyntax.ss (build-let, build-named-let): New output
317 constructors.
318 (build-lexical-var): Seed gensym with symbolic name.
319 (self-evaluating?): Add keywords among self-evaluating types.
320 (let): New core form.
321 (if): Removed from core language.
322 (or, and, let, cond): Removed syntactic definitions.
323 (sc-expand3): New procedure: Expander which takes optional mode
324 and eval-syntactic-expanders-when arguments.
325
326 * syncase.scm (psyncomp): New procedure: Recompiles psyntax.pp.
327 Should be used inside the (ice-9 syncase) module with (use-syntax
328 syncase) and with the current directory containing the psyntax.ss
329 source.
330 Added hack to transfer syntactic information from the builtin
331 variable `define' to the slib version if module (ice-9 slib) has
332 been loaded.
333
334Fri Sep 5 05:47:36 1997 Mikael Djurfeldt <mdj@faun.nada.kth.se>
335
336 * syncase.scm (sc-interface, sc-expand): Removed hook setup.
337 (syncase): Publish syntax transformer to be used with
338 `use-syntax'.
339 (sc-macro): Use this as the value when publishing macros.
340
341 * boot-9.scm (module-type): Added `transformer'.
342 (make-module): Modified initialization.
343 (module-transformer, set-module-transformer!): Selector and
344 mutator for module-associated transformer.
345 (set-current-module): Use module-transformer to set
346 `scm:eval-transformer'.
347 (module-use!): Previous change reverted.
348* (use-syntax): New function: Install a transformer in current
349 module.
350 (sc-interface, sc-expand): Removed! :)
351
d43f8c97
MD
352Fri Sep 5 03:09:09 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
353
354 * emacs.scm (emacs-load): Added new parameter `module'.
355
356 * syncase.scm (putprop, getprop): Modified to use the object
357 properties of the variable object corresponding to the symbol;
358 This way we can ride on the mechanisms of the module system.
359 Changed `builtin-variable' calls to `define-public' calls.
360 Setup the hooks sc-expand and sc-interface.
361
362 * boot-9.scm (sc-interface, sc-expand): New builtin variables.
363 (set-current-module): Switch to and from sc-expand as
364 scm:eval-transformer when going into and out of modules using
365 syncase macros.
366 (module-use!): Set scm:eval-transformer to sc-expand when adding
367 the syncase interface.
368
1f355b4f
MD
369Thu Sep 4 14:57:04 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
370
371 * syncase.scm (putprop): Temporary fix which publishes new syntax
372 globally (the old behaviour was complex and connected to the inner
373 workings of the current module system).
374
e9b7bb80
MD
375Wed Sep 3 21:29:13 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
376
377 * psyntax.ss: Updated.
378 psyntax.pp: Bugfix: Previous version had some leading "t":s cut
379 off!
380
e672f1b5
MD
381Tue Sep 2 00:26:42 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
382
383 * boot-9.scm (gensym): Removed (replaced by primitive).
384 (obarray-gensym): Rewritten to use `gensym'.
385 (gentemp): Rewritten to use `gensym'.
386
30d732a6
MD
387Mon Sep 1 20:08:32 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
388
389 * gtcl.scm (make-tcl-binder): Rewritten to choose bindings
390 according to the following priorities:
391 1. tcl bindings which are present in override-scheme-list
392 2. bindings from the-scm-module
393 3. tcl bindings
394 This way the gtcl module can occur first in the use-list without
395 disabling the scheme interpreter.
396 (new-interpreter): New function.
397
398 * gwish.scm: Moved initialization code for the-interpreter to
399 gtcl.scm; Moved name space cleaning code to gtcl.scm and rewrote
400 it; Call `new-interpreter'; Don't :use-module (guile).
401
1aa8162b
JB
402Thu Aug 28 23:48:53 1997 Jim Blandy <jimb@totoro.red-bean.com>
403
404 * Makefile.in: Regenerated.
405
34695603
JB
406Wed Aug 27 11:35:09 1997 Jim Blandy <jimb@totoro.red-bean.com>
407
408 * Makefile.in: Regenerated, so it uses "tar", not "gtar".
409
52f1b046
MD
410Mon Aug 25 22:00:44 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
411
412 * emacs.scm (object->string, format, error-args->string): New
413 procedures.
414 (emacs-frame-eval): Reworked.
415
a5be27cd
MD
416Mon Aug 25 16:15:55 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
417
418 * session.scm (apropos-internal): Musn't initialize symbol
419 accumulator with a constant pair. That led to mutation of the
420 source!
421
68aed3ea
MD
422Sun Aug 24 01:03:10 1997 Mikael Djurfeldt <mdj@kenneth>
423
424 * session.scm (vector-for-each): Removed.
425 (apropos): vector-for-each --> array-for-each.
426 (apropos-internal): New function. Return list of accessible
427 symbols matching regexp.
428
429 * debug.scm (frame-number->index): New function. Convert frame
430 number (as displayed in the backtrace) to frame index (to be used
431 in stack-ref).
432
433 * emacs.scm (emacs-load): New arguments: interactivep: when
434 non-false, send back results to Emacs; colnum: Column number;
435 Use modules (ice-9 debug) and (ice-9 session);
436 (no-stack, no-source): New simple-actions;
437 (result-to-emacs): New procedure. Sends data to Emacs via the
438 result protocol;
439 (get-frame-source, emacs-select-frame, emacs-frame-eval,
440 emacs-symdoc): New procedures.
8c5a8bed 441
555f21d8
MD
442Wed Aug 20 13:21:11 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
443
eb7ec1e8 444 * emacs.scm (emacs-load): Adjust stack narrowing.
8c3420ad 445 (whitespace-chars): Include #\np.
eb7ec1e8 446
555f21d8
MD
447 * syncase.scm: Also turn off debugging evaluator and recording of
448 procedure names during loading of psyntax.pp.
449
450 * psyntax.pp: Removed leading blanks => 800K -> 100K.
451
230c4353
MD
452Tue Aug 19 02:39:41 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
453
19ef2a9b
MD
454 * syncase.scm: Don't tamper with debug mode setting when enabling
455 macros. Instead cut the stack with start-stack.
a48930c6 456 Load psyntax.pp with recording of positions turned off.
19ef2a9b 457
ceb177a4 458 * psyntax.pp, psyntax.ss (quasiquote): Changed fx= --> =.
230c4353
MD
459
460* * syncase.scm: New file: Guile-adaption for syntax-case macros.
461 psyntax.pp, psyntax.ss: Syntax-case macros, portable version 2 by
462 R. Kent Dybvig, Oscar Waddell, Bob Hieb and Carl Bruggeman
463
0e81dabd
MD
464Mon Aug 18 21:58:25 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
465
466* * session.scm: New file: Session support.
467 (apropos): New procedure: List bindings given regexp.
468
6afcd3b2
GH
469Sat Aug 16 18:44:24 1997 Gary Houston <ghouston@actrix.gen.nz>
470
471 * boot-9.scm: define tms accessors: clock, utime, stime, cutime,
472 cstime.
473
096d5f90
MD
474Thu Aug 14 19:55:37 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
475
db75135d
MD
476 * emacs.scm (emacs-load): Something has changed in the reader so
477 that we now should set the port line count to the specified value
478 (linum) instead of (- linum 1).
479
096d5f90
MD
480 * slib.scm (slib:load): Use load-from-path instead of
481 primitive-load-path so that backtraces get narrowed properly at
482 the top.
483
484 * boot-9.scm (top-repl): Save stack already in signal handler in
485 order to narrow it correctly.
486 (save-stack): Adjust narrowing tag for the top of load-stacks.
487
7a6f1ffa
GH
488Tue Jul 29 01:18:08 1997 Gary Houston <ghouston@actrix.gen.nz>
489
490 * boot-9.scm (move->fdes, dup->port): use dup->fdes, not primitive-dup.
491 (dup->fdes): deleted, now done in C.
492
956055a9
GH
493Sat Jul 26 08:00:42 1997 Gary Houston <ghouston@actrix.gen.nz>
494
495 * boot-9.scm (setenv): new procedure, scsh compatible.
496
485cb6eb
MV
497Sat Jul 26 21:30:10 1997 Marius Vollmer <mvo@zagadka.ping.de>
498
499 * boot-9.scm (with-fluids): New macro to go with the
500 builtin `with-fluids*'.
501
4d0d7ef9
MD
502Thu Jul 24 04:28:11 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
503
504 * slib.scm (install-require-module): In newer versions of slib
505 *catalog* is #f until the first access. Therefore we call
506 require:provided? for a random feature if *catalog* is #f.
507
8309a10d
MD
508Wed Jul 23 20:13:04 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
509
510 * boot-9.scm: If using emacs interface, enable backtraces
511 automatically.
512
e38303a2
GH
513Mon Jul 21 06:45:45 1997 Gary Houston <ghouston@actrix.gen.nz>
514
515 * boot-9.scm (dup->port, dup->inport, dup->outport, dup->fdes,
516 dup, fdes->inport, fdes->outport, port->fdes): new procedures.
517 (duplicate-port): was a C primitive, now it's here.
518 (move->fdes): allow the first argument to be a file descriptor.
519 Return the modified port or file descriptor (was unspecified.)
520
2e3e9351
JB
521Fri Jul 11 00:13:43 1997 Jim Blandy <jimb@floss.red-bean.com>
522
32552d73
JB
523 Changes to compile under gnu-win32, from Marcus Daniels:
524 * boot-9.scm (load-user-init): If HOME is unset, provide
525 a default of /.
526
2e3e9351
JB
527 * boot-9.scm (define-public): Changed to accomodate Hobbit.
528
db561408
JB
529Tue Jun 24 00:31:47 1997 Jim Blandy <jimb@floss.red-bean.com>
530
fcff2c5c
JB
531 * boot-9.scm, debug.scm, hcons.scm, lineio.scm, mapping.scm,
532 poe.scm, slib.scm, tags.scm, threads.scm: Use normal list
533 notation, instead of #/ notation.
534
db561408
JB
535 * expect.scm (expect-strings): Pass regexp/newline flag to
536 make-regexp.
537
2409cdfa
JB
538Mon Jun 23 16:13:38 1997 Jim Blandy <jimb@floss.red-bean.com>
539
db561408
JB
540 Fix inconsistencies in parsing of #/ style lists.
541 * boot-9.scm (read-path-list-notation): New function.
542 (parse-path-symbol): Deleted. Replaced by above.
543 Plug in read-path-list-notation as the parser for #/ lists,
544 instead of the anonymous lambda form calling parse-path-symbol.
545 (Thanks to Maurizio Vitale.)
546
2409cdfa
JB
547 * boot-9.scm (make-list): Remove the definition of this function
548 from the (ice-9 common-list) module; make the `init' argument
549 optional in the scm module's definition, to match the deleted
550 definition. Harmony reigneth? (Thanks to Bernard URBAN.)
551
91b28bb5
JB
552Sun Jun 22 18:33:17 1997 Jim Blandy <jimb@floss.red-bean.com>
553
554 Try to detect when people are using one version of libguile and a
555 different version of ice-9. People have been skewing things and
556 sending in bug reports.
557 * version.scm.in: New file, which the configure script munges to
558 produce version.scm, which contains the ice-9 config stamp.
559 * boot-9.scm: Compare the libguile and ice-9 config stamps;
560 display a warning if the two are different.
561 * Makefile.am: Install version.scm, but don't distribute it.
562 Distribute version.scm.in, but don't install it.
563 * Makefile.in: Regenerated.
564
9fbdb48f
JB
565Thu Jun 19 21:01:16 1997 Jim Blandy <jimb@floss.red-bean.com>
566
567 * slib.scm (slib:warn): Alias for WARN function.
568
e320da2f
JB
569Fri Jun 13 00:32:04 1997 Jim Blandy <jimb@floss.red-bean.com>
570
571 * boot-9.scm (struct-printer): Fix off-by-one error in range
572 check. Correctly check for struct printer tag.
573
574 * expect.scm: Turn this into a module, (ice-9 expect).
575 (expect-port, expect-timeout, expect-timeout-proc,
576 expect-eof-proc, expect-char-proc, expect, expect-strings,
577 expect-select): Make these public definitions.
578 (expect-strings): Use make-regexp and regexp-exec, instead of
579 regcomp and regexec. We've omitted the REG_NEWLINE flag; hope
580 that's okay.
581
582 * boot-9.scm (with-regexp-parts): Comment this out. It has no
583 users in the core, and relies on mildly hairy details of the old
584 regexp interface.
585
586 * test.scm: Re-enable tests asserting that '() is true, and not a
587 boolean. This stuff has been true for a while.
588
589 * boot-9.scm (ipow-by-squaring, butlast): Fix uses of outdated
590 function names.
591
592 * boot-9.scm (with-excursion-getter-and-setter, q-rear): Doc
593 fixes.
594
3688473b
JB
595Wed Jun 11 00:31:40 1997 Jim Blandy <jimb@floss.red-bean.com>
596
597 * Makefile.in: Regenerated after xtra_PLUGIN_guile_libs change in
598 ../configure.in.
599
0b46857f
MV
600Fri Jun 6 14:37:18 1997 Marius Vollmer <mvo@zagadka.ping.de>
601
602 * boot-9.scm (struct-printer): Bugfix: Check the layout of the
603 vtable and not the one of the struct.
604
5dade857
MV
605Wed Jun 4 23:27:16 1997 Marius Vollmer <mvo@zagadka.ping.de>
606
607 * boot-9.scm (struct-layout, %struct-printer-tag, struct-printer,
608 make-struct-printer, set-struct-printer-in-vtable!): New bindings
609 to support printing of structures.
610 (record-type-vtable, make-record-type): Add slot to hold printing
611 function and initialize it with something appropriate. Removed
612 commented out printing code.
613 (record-type-name, record-type-fields): Adjusted slot offsets.
614 (%print-module): Reduce argument list to "mod" and "port".
615
95d59d10
JB
616Tue Jun 3 17:04:18 1997 Jim Blandy <jimb@totoro.cyclic.com>
617
618 * slib.scm (identity): New function, used by SLIB.
619
e1a191a8
GH
620Sat May 31 18:57:12 1997 Gary Houston <ghouston@actrix.gen.nz>
621
622 * boot-9.scm: signal-handler, alarm-thunk: removed.
623 don't define ticks-interrupt etc.
624 top-repl: install signal handlers for SIGINT, SIGFPE, SIGSEGV, SIGBUS
625 during call to scm-style-repl.
626
19da35d0
JB
627Fri May 30 18:08:10 1997 Jim Blandy <jimb@floss.cyclic.com>
628
629 * slib.scm (slib:load): Use primitive-load-path instead of
630 basic-load. This is probably wrong, but hopefully the entire
631 source access system will be revised soon anyway, and this will
632 make require behave more like Emacs Lisp's require. If this
633 breaks something, please let me know. Maybe this is real dumb.
634
0e165281
JB
635Thu May 29 02:36:48 1997 Jim Blandy <jimb@floss.cyclic.com>
636
637 * regex.scm: Add a module declaration. Use DEFINE-PUBLIC everywhere.
638 * boot-9.scm: If the `regex' feature is present, use the module
639 (ice-9 regex).
640
737c9113
JB
641Tue May 27 22:48:14 1997 Tim Pierce <twp@twp.tezcat.com>
642
643 * regex.scm: New file.
644 * Makefile.am (subpkgdata_DATA): Add regex.scm.
645 * Makefile.in: Regenerated.
646
36539a15
JB
647Mon May 26 17:24:48 1997 Jim Blandy <jimb@totoro.cyclic.com>
648
649 * COPYING, boot-9.scm, debug.scm, emacs.scm, expect.scm, gtcl.scm,
650 gwish.scm, hcons.scm, lineio.scm, mapping.scm, nonblocking.scm,
651 oldprint.scm, poe.scm, r4rs.scm, source.scm, tags.scm, test.scm,
652 threads.scm: New address for FSF.
653
142ad3d9
JB
654Fri May 16 04:09:45 1997 Jim Blandy <jimb@floss.cyclic.com>
655
656 * debug.scm: Update copyright years; this file has been worked on
36539a15 657 in 1997.
142ad3d9 658
cafa4c68
GH
659Thu May 15 07:56:08 1997 Gary Houston <ghouston@actrix.gen.nz>
660
661 * expect.scm: use gettimeofday instead of get-internal-real-time
662 and use a floating point timeout when calling select. Untested,
663 since the regex library is currently AWOL.
664
223be5f0
JB
665Wed May 14 21:00:30 1997 Jim Blandy <jimb@floss.cyclic.com>
666
667 * boot-9.scm (eval-string): Function deleted; it was already
668 implemented in C, so there's no point in making a divergable copy
669 here.
670
9b01064c
JB
671Tue May 13 16:40:06 1997 Jim Blandy <jimb@floss.cyclic.com>
672
673 * Makefile.in: Regenerated, using automake-1.1p.
674
675Tue May 13 16:40:06 1997 Jim Blandy <jimb@floss.cyclic.com>
676
677 * Makefile.in: Regenerated, using automake-1.1p.
678
1fbc60b2
GH
679Tue May 13 02:48:49 1997 Gary Houston <ghouston@actrix.gen.nz>
680
681 * boot-9.scm (error-catching-loop): don't read a line from
682 current input when quit is encountered, the previous change
683 fixes this too.
684
c7d97590
JB
685Mon May 12 19:00:21 1997 Jim Blandy <jimb@floss.cyclic.com>
686
687 * boot-9.scm (scm-style-repl): After reading an expression,
688 consume any trailing newline (perhaps preceded by whitespace), to
689 avoid screwing up GDB. More detail in comments.
690
6b3f3366
JB
691Mon May 5 13:18:38 1997 Jim Blandy <jimb@floss.cyclic.com>
692
693 * Makefile.am (ETAGS_ARGS): New variable, since we're not treating
694 the Scheme code like code yet.
695 * Makefile.in: Resrac,husrched.
696
eea324ee
MV
697Wed Apr 30 15:25:15 1997 Marius Vollmer <mvo@zagadka.ping.de>
698
699 * boot-9.scm (link-dynamic-module): Do not catch errors from
700 dynamic-link and dynamic-call. When the shared library exists it
701 is now assumed to be suitable for a dynamic C module.
702
ef79b65b
MV
703Fri Apr 25 21:21:35 1997 Marius Vollmer <mvo@zagadka.ping.de>
704
705 * boot-9.scm (process-use-modules): New function to support the
706 use-modules macro
707 (use-modules): throw an error iff one of the requested modules
708 can't be found.
709
3be77013
GH
710Tue Apr 29 06:54:46 1997 Gary Houston <ghouston@actrix.gen.nz>
711
712 * boot-9.scm: don't define timer-thunk or gc-thunk.
713
28c682fa
JB
714Sun Apr 27 17:56:09 1997 Jim Blandy <jimb@floss.cyclic.com>
715
716 * aclocal.m4: Removed; unnecessary, given changes of Apr 24.
717
718 * Makefile.am (subpkgdatadir): Use "ice-9" instead of "@module@";
719 we're not using AM_INIT_GUILE_MODULE any more.
720 * Makefile.in: Regeneratitetedrerd.
721
20108301
JB
722Thu Apr 24 01:33:33 1997 Jim Blandy <jimb@floss.cyclic.com>
723
819f936b
JB
724 Get 'make dist' to work again.
725 * Makefile.am (EXTRA_DIST): Remove PLUGIN files.
726 * Makefile.in: Regenerated, like two tons of fleas.
727
20108301
JB
728 Changes for reduced Guile distribution: one configure script,
729 no plugins.
730 * configure.in, configure: Removed.
731 * Makefile.in: Regenerated.
732
dab94cac
JB
733Sat Apr 19 08:03:50 1997 Jim Blandy <jimb@floss.cyclic.com>
734
48d224d7 735 * boot-9.scm (eval-string, command-line, load-user-init): New
dab94cac
JB
736 functions.
737
65495221
GH
738Sat Apr 12 08:27:05 1997 Gary Houston <ghouston@actrix.gen.nz>
739
740 * boot-9.scm (log10): defined.
741
708bf0f3
GH
742Tue Apr 1 17:46:49 1997 Gary Houston <ghouston@actrix.gen.nz>
743
744 * expect.scm (expect-select): correct the millisecond timeout
745 arithmetic (from Marko.Kohtala@ntc.nokia.com).
746
747Mon Mar 31 03:23:19 1997 Gary Houston <ghouston@actrix.gen.nz>
748
749 * boot-9.scm (open-input-pipe, open-output-pipe): defined here
750 instead of in libguile.
751 (tm:sec etc.) new accessors for broken-down time.
752 (set-tm:sec etc.) new setters for broken-down time.
753
9337637f
GH
754Thu Mar 27 05:06:00 1997 Gary Houston <ghouston@actrix.gen.nz>
755
756 * boot-9.scm (netent:addrtype, servent:port): added missing
757 procedures.
758 (netent:net, servent:proto): repaired.
759 (utsname:sysname etc.): new accessors for uname.
760
761Tue Mar 25 03:04:03 1997 Gary Houston <ghouston@actrix.gen.nz>
762
763 * boot-9.scm (sockaddr:fam, sockaddr:path, sockaddr:addr,
764 sockaddr:port): new functions.
765
bce074ee
GH
766Wed Mar 19 04:50:34 1997 Gary Houston <ghouston@actrix.gen.nz>
767
768 * boot-9.scm: define accessor procedures for the objects returned
769 by getpw, getgr, gethost, getnet, getproto, getserv (e.g.,
770 passwd:name, where the first component is the name of the C structure
771 and the second is the unprefixed C member name.)
772
773Tue Mar 18 18:39:31 1997 Gary Houston <ghouston@actrix.gen.nz>
774
095936d2 775 * boot-9.scm (setpwent, setgrent, sethostent, setnetent, setprotoent,
bce074ee
GH
776 setservent): no longer take an argument, it was bogus.
777
81e2a235
GH
778Thu Mar 13 00:13:41 1997 Gary Houston <ghouston@actrix.gen.nz>
779
780 * boot-9.scm (scm-error): deleted, reimplemented in C.
781
04798288
MD
782Mon Mar 10 15:48:31 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
783
784 * boot-9.scm (process-define-module): Modified to handle both
785 keywords and symbols.
786
75a97b92
GH
787Sat Mar 8 04:32:44 1997 Gary Houston <ghouston@actrix.gen.nz>
788
789 * slib.scm: update read usage.
790
791 * r4rs.scm: update primitive-load usage.
792 Don't define read-sharp.
793
794 * boot-9.scm: use read-hash-extend to install extra read syntax.
795 (read-sharp): removed.
796 Adjust usage of primitive-load-path, read, which no longer take
797 case_i or read-sharp arguments.
798
63a3d814
MD
799Sat Mar 8 00:07:54 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
800
90d5e280
MD
801 * boot-9.scm: Added loading of session support module.
802
63a3d814
MD
803 * debug.scm: Removed `display-application'. (Replaced by
804 primitive procedure.)
805
806 * boot-9.scm (beautify-user-module!): Don't add the root module
807 interface to the end of the use-list of the root module.
808
75a97b92
GH
809Thu Mar 6 07:26:34 1997 Gary Houston <ghouston@actrix.gen.nz>
810
811 * boot-9.scm: repl-quit, repl-abort: obsolete variables deleted.
812
f3c23298
GH
813Wed Mar 5 20:30:24 1997 Gary Houston <ghouston@actrix.gen.nz>
814
815 * boot-9.scm: check use-emacs-interface for emacs support.
816
7950df7c
GH
817Sun Mar 2 19:47:14 1997 Gary Houston <ghouston@actrix.gen.nz>
818
819 * boot-9.scm (scm-style-repl): call repl-report-start-timing if
820 read gets EOF.
821 * (exit): alias for quit.
822
8e44e7a0
GH
823Sun Mar 2 05:25:11 1997 Gary Houston <ghouston@actrix.gen.nz>
824
825 * boot-9.scm (error-catching-loop thunk): use a status variable to
826 return the quit args.
827 (scm-style-repl): call -quit, passing return value from
828 error-catching-repl. Make -quit return its args.
1a36eef2 829 stand-alone-repl: comment out, since it seems unused.
7950df7c 830
8e44e7a0
GH
831 (error-catching-loop thunk): discard trailing junk after a (quit).
832
9a942103
MD
833Sat Mar 1 15:24:39 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
834
06a02069
MD
835 * boot-9.scm: Removed the old printer code.
836
837 * r4rs.scm (apply, call-with-current-continuation): Added comment
838 explaining why apply and call/cc need to be closures.
839
840 * boot-9.scm (apply, call-with-current-continuation): Bugfix:
841 Removed. These definitions are already present in r4rs.scm.
842
9a942103
MD
843 * debug.scm (trace-entry, trace-exit): Check that we're on a repl
844 stack before printing traced frames; Re-enable trace flag at end
845 of handlers.
846
e6875011
MD
847Sat Mar 1 00:10:38 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
848
59e1116d
MD
849 * debug.scm: Add hook for reset of trace level at abort.
850
851 * boot-9.scm (run-hooks): New procedure.
852 (add-hooks!): New macro.
853 Change hooks to use these functions.
854
095936d2 855 * debug.scm: *Warning* This feature is a bit premature. I add
e6875011
MD
856 it anyway because 1. it is very useful, and, 2. you can start
857 making it less premature by complaining to me and by modifying
858 the source! :-)
859 (trace): Given one or more procedure objects, trace each one.
860 Given no arguments, show all traced procedures.
861 (untrace): Given one or more procedure objects, untrace each one.
862 Given no arguments, untrace all traced procedures. The tracing in
863 Guile have an advantage to most other systems: We don't create new
864 procedure objects, but mark the procedure objects themselves.
865 This means that also anonymous and internal procedures can be
866 traced.
867
868 * boot-9.scm (error-catching-loop): Added handling of apply-frame
869 and exit-frame exceptions.
870
095936d2 871 * boot-9.scm (assert-repl-prompt, the-prompt-string): Removed.
e6875011
MD
872 (set-repl-prompt!): Setter for repl prompt.
873 (scm-style-repl): If prompt is #f, don't prompt; if prompt is a
874 string, display it; if prompt is a thunk, call it and display its
875 result; otherwise display "> ".
876 (Change suggested by Roland Orre <orre@nada.kth.se>.)
0065d90e
MD
877
878 * r4rs.scm (%load-verbosely): Reverted change to
879 `module-defined?', since the module system isn't bootstrapped when
880 we load r4rs.scm. This is just a temporary fix to make the
881 repository version runnable.
882
eb52a06b
MD
883Thu Feb 27 23:25:47 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
884
885 * boot-9.scm: Removed the enabling of debug evaluator and
886 recording of source code positions. This was placed there for our
887 convenience, but it has already sneaked into the distribution
888 once... so we'd better add this in our local copies instead when
889 we need it. (These options are normally enabled at the end of
890 boot-9.scm when loading the debug module.)
891
d18d1b6d
MV
892Thu Feb 27 16:04:45 1997 Marius Vollmer <mvo@zagadka.ping.de>
893
894 * boot-9.scm (module-defined?): New function.
895 (macroexpand-1, macroexpand): Use local-ref instead of defined?
896 and eval.
897 * r4rs.scm (%load-verbosely): Use "module-defined?" instead of
898 "defined?".
899 * slib.scm (defined?): New function to take the place of the
900 builtin "defined?". It allways examines the slib module.
901
15ae1bee
MD
902Mon Feb 24 21:46:15 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
903
904 * configure.in: Added AM_MAINTAINER_MODE
905
c2132276
GH
906Sat Feb 15 04:51:20 1997 Gary Houston <ghouston@actrix.gen.nz>
907
908 * boot-9.scm (read-sharp): define directly, don't go through a
909 %read-sharp layer.
910
911Tue Feb 11 08:45:48 1997 Gary Houston <ghouston@actrix.gen.nz>
912
913 * boot-9.scm (uniform-vector-set!): use uniform-array-set1!, not
914 uniform-vector-set1! which doesn't exist.
915
d590bbf6
MD
916Mon Feb 10 03:01:48 1997 Mikael Djurfeldt <mdj@kenneth>
917
918 * boot-9.scm (backtrace): Removed. (A C version now exists in
919 backtrace.c.)
920
1e531c3a
GH
921Fri Jan 24 06:05:36 1997 Gary Houston <ghouston@actrix.gen.nz>
922
923 * boot-9.scm (read-line!, read-delimited!, read-delimited,
924 read-line): new procedures, see libguile/ChangeLog.
925
bb0102f7
MV
926Thu Jan 16 17:07:03 1997 Marius Vollmer <mvo@zagadka.ping.de>
927
928 Added dynamic linking of modules. See libguile/DYNAMIC-LINKING.
929
930 * boot-9.scm (split-c-module-name, convert-c-registered-modules,
931 init-dynamic-module, dynamic-maybe-call,
932 find-and-link-dynamic-module, link-dynamic-module,
933 try-module-dynamic-link, registered-modules): New definitions for
934 dynamic linking of modules.
935 (resolve-module): Try to dynamically link the requested module
936 after failing to load it as Scheme code.
937
920235cc
GH
938Wed Jan 8 05:50:14 1997 Gary Houston <ghouston@actrix.gen.nz>
939
940 * boot-9.scm (getservbyport, getservbyname): remove stray %.
941
198befde
JB
942Tue Jan 7 20:02:24 1997 Jim Blandy <jimb@floss.cyclic.com>
943
944 * boot-9.scm (and=>): Rename THUNK argument to PROCEDURE, 'cos
945 that's what it is.
946
947 * lineio.scm (make-line-buffering-input-port): Properly test for
948 the case of an empty buffer list. The old code assumed that '()
949 was false.
950
33cf699f
MD
951Mon Jan 6 01:13:53 1997 Mikael Djurfeldt <mdj@kenneth>
952
095936d2 953 * boot-9.scm (use-modules): New macro (from Marius Vollmer).
33cf699f
MD
954 (use-modules <module name> ...) Put the the modules named by
955 <module name> ... on the use list of the current module.
956
7a818853
JB
957Sun Jan 5 15:52:59 1997 Jim Blandy <jimb@floss.cyclic.com>
958
959 * boot-9.scm (error-catching-loop): Remove message saying that
960 typing "$" will put you in the debugger. This isn't implemented
961 yet.
962
506067f0
JB
963Sun Dec 22 23:27:25 1996 Jim Blandy <jimb@floss.cyclic.com>
964
965 * boot-9.scm (delq-all!): Function deleted; delq!'s semantics have
966 been fixed, so this function is superfluous.
967 (transform-usage-lambda): Use delq!, not delq-all!.
968
2ebf3156
MV
969Tue Dec 17 20:36:45 1996 Marius Vollmer <mvo@zagadka.ping.de>
970
7a818853 971 * boot-9.scm (resolve-module): New optional parameter that
2ebf3156
MV
972 controls whether autoloading is attempted or not. Default is #t.
973 (process-define-module): Don't autoload the defined module.
974 (try-module-autoload): Don't autoload the directory modules.
975
7a818853 976 * boot-9.scm (process-define-module): Ensure that the-scm-module
2ebf3156
MV
977 is last in the `uses' list to allow shadowing builtin
978 bindings. All :use-module options are added in the order they
979 appear in the arguments but before anything already on the list
980 (such as the-scm-module).
981
00f06035
GH
982Wed Dec 11 21:06:05 1996 Gary Houston <ghouston@actrix.gen.nz>
983
984 * slib.scm (slib-parent-dir): throw error if #f returned from
985 %search-load-path.
986
733943b9
TT
987Sat Nov 30 23:57:28 1996 Tom Tromey <tromey@cygnus.com>
988
989 * PLUGIN/greet, PLUGIN/split.sed, PLUGIN/this.configure: Removed.
990 * Makefile.am, aclocal.m4: New files.
991 * configure.in: Updated for Automake.
992
84abd243
MV
993Wed Nov 27 14:16:14 1996 Marius Vollmer <mvo@zagadka.ping.de>
994
995 * boot-9.scm (macroexpand-1, macroexpand), slib.scm
996 (slib:features), r4rs.scm (%load-verbosely): "defined?" is now a
997 function, use it accordingly.
998
a31bc6fb
JB
999Thu Nov 21 11:12:10 1996 Jim Blandy <jimb@floss.cyclic.com>
1000
1001 It's an "eval closure", not an "eval thunk." A thunk is a
1002 function of no arguments.
1003 * boot-9.scm (module-type): Rename module field.
1004 (make-module, eval-in-module, make-root-module,
1005 set-current-module): Uses changed.
1006 (module-eval-closure, set-module-eval-closure!,
1007 root-module-closure): Renamed from module-eval-thunk,
1008 set-module-eval-thunk!, root-module-thunk.
1009 (set-current-module): Change uses of *top-level-lookup-thunk* to
1010 *top-level-eval-closure*.
1011
3763761c
JB
1012Wed Nov 20 14:45:27 1996 Jim Blandy <jimb@totoro.cyclic.com>
1013
1014 * slib.scm (slib-parent-dir): Use string-length, not length.
1015 (Thanks to Bernard Urban.)
1016
7ad737b6
MD
1017Sat Nov 2 20:00:42 1996 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1018
7a818853 1019 * boot-9.scm: The debugging evaluator and recording of positions
7ad737b6
MD
1020 aren't enabled by default any longer (they are switched on in
1021 debug.scm). But during development we want to have them also
1022 *inside* boot-9.scm. Therefore, two lines are added at the
1023 beginning of boot-9.scm to enable these.
1024
1025 Call `provide' so that `records' are included among the
1026 `*features*'.
1027
1028 The scheme for saving the stack has been adjusted: save-stack is
1029 now commonly available for saving the stack. Calling `save-stack'
1030 sets a flag `stack-saved?' which prevents overwriting the stack.
1031 `stack-saved?' is reset at `abort'.
1032
1033 Spelling correction: seperate --> separate.
1034
1035 Removed `:'s that had creeped into some comments.
1036
7a818853 1037 The repl now doesn't print #<unspecified> results any longer
7ad737b6
MD
1038 If the user wants to see this, he can do
1039 (assert-repl-print-unspecified #t) in his startup file.
1040
7a818853 1041 The user now gets a friendly message instead of a backtrace at
7ad737b6
MD
1042 error.
1043
1044 Added `before-read-hook'.
1045
1046 Load module (ice-9 emacs) if option `-e' was specified.
1047
1048 (provide): New function.
1049
1050 (error): Save stack at entry, so that Guile entrails won't show up
1051 in backtraces.
1052
1053 (backtrace): New function.
1054
7a818853 1055 (save-stack): Can now take arbitrary number of stack narrowing
7ad737b6
MD
1056 specifier pairs. The first specifier in a pair controls inner
1057 border, the second the outer border. A number means cut that
1058 number of frames, a procedure object means cut until that object
1059 is found in operator position in a frame.
1060
1061 * debug.scm: Enable debugging evaluator and recording of positions
1062 by default.
1063
1064 * slib.scm (slib:load): Adapt to the new behavior of
1065 primitive-load: It doesn't any longer try both with and without
1066 ".scm" extension. (We don't want to use %search-load-path here.)
1067
1068 (implementation-vicinity): New function. slib requires it
1069
1070 (library-vicinity): Updated.
1071
1072 Load "require.scm" in the library-vicinity.
1073
1074 (install-require-vicinity, install-require-module): New functions.
1075
99f97bfe
JB
1076Mon Oct 28 17:56:29 1996 Jim Blandy <jimb@floss.cyclic.com>
1077
581a242b
JB
1078 * boot-9.scm (load-from-path): New function.
1079
1080 * boot-9.scm (try-load, basic-try-load, try-load-module,
1081 try-load): Deleted. I don't think they're being used.
1082
48be3fb3
JB
1083 * Makefile.in (scm_files): Add r4rs.scm and test.scm to this list,
1084 so they'll get distributed.
1085
1086 Get Guile to be a little less chatty by default. The new user
1087 should see as little clutter as possible.
1088 * r4rs.scm (%load-verbosely): Make this #f by default.
1089 * boot-9.scm (scm-repl-verbose): Make this #f by default.
1090 (scm-style-repl): Don't run 'pk' on the value passed to quit.
1091
1092 * r4rs.scm: New file.
1093 * boot-9.scm: Load r4rs.scm, first thing.
1094 (OPEN_READ, OPEN_WRITE, OPEN_BOTH, *null-device*, open-input-file,
1095 open-output-file, open-io-file, close-input-port,
1096 close-output-port, close-io-port, call-with-input-file,
1097 call-with-output-file, with-input-from-port, with-output-to-port,
1098 with-error-to-port, with-input-from-file, with-output-to-file,
1099 with-error-to-file, with-input-from-string, with-output-to-string,
1100 with-error-to-string, the-eof-object): Definitions moved to
1101 r4rs.scm. Not all of them are R4RS, but those that are use those
1102 that are not.
1103 (load, %load-verbosely, %load-announce): Moved, along with code to
1104 set %load-hook, to r4rs.scm.
1105
1106 * test.scm: New file.
1107
1108 * boot-9.scm (integer?): Definition deleted, in favor of the one
1109 present in libguile (which used to be called int?). I have no
1110 idea why integer? didn't just call int? to begin with.
1111
1112 * boot-9.scm (<, <=, =, >, >=): Definitions in terms of <?, <=?,
1113 =?, >?, and >=? deleted; they're defined that way by libguile now.
1114
99f97bfe
JB
1115 * boot-9.scm (load): Simplified; primitive-load does most of this
1116 work now.
1117 (%load-announce-win): Removed; no longer used. Set %load-hook to
1118 call %load-announce.
1119
3afb28ce
GH
1120Sun Oct 27 07:47:03 1996 Gary Houston <ghouston@actrix.gen.nz>
1121
4fe3604d
JB
1122 * boot-9.scm (stat:dev, stat:ino, stat:mode, stat:nlink, stat:uid,
1123 stat:gid, stat:rdev, stat:size, stat:atime, stat:mtime,
1124 stat:ctime, stat:blksize, stat:blocks) accessor functions for stat
1125 components.
3afb28ce
GH
1126 (file-is-directory?): use stat:type.
1127
3065a62a
JB
1128Fri Oct 25 03:34:47 1996 Jim Blandy <jimb@floss.cyclic.com>
1129
1130 * boot-9.scm (%read-sharp): Don't recognize the `#!' syntax here;
1131 that's now taken care of in libguile, and in a way compatible with
1132 SCSH (which this isn't).
1133
e4c5095f
JB
1134Mon Oct 21 18:52:36 1996 Jim Blandy <jimb@totoro.cyclic.com>
1135
1136 * boot-9.scm: Formatting tweaks.
1137
1bb961a3
MD
1138Fri Oct 18 01:03:08 1996 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1139
1140 * boot-9.scm (handle-system-error): Added hooks before-error-hook,
1141 after-error-hook, before-backtrace-hook and after-backtrace-hook
1142 to the error handler. E.g.: fancy emacs support could plug into
1143 these.
1144 (save-stack): New function. The stack is now made differently
1145 depending on the stack id. (The motivation is to make a better
1146 choice regarding what stack frames to present to the user.)
1147 (error-catching-loop): Stack handling code moved outside into
1148 save-stack.
1149
9a0d70e2
GH
1150Thu Oct 17 20:33:08 1996 Gary Houston <ghouston@actrix.gen.nz>
1151
d7189b49
GH
1152 * Makefile.in (scm_files): add expect.scm.
1153
1154 * expect.scm: new file ported from guile-iii.
1155
9a0d70e2
GH
1156 * boot-9.scm: remove handle-system-error, after moving the code into
1157 error-catching-loop.
1158 Don't set 'throw-handler-default property on error keys.
1159 Just interpret (almost) any throw with 4 args as an error throw.
1160 Delete some try-load stuff that was already commented out.
1161
35c5db87
GH
1162 Second thoughts, keep handle-system-error but call it from
1163 error-catching-loop.
1164
d065b65f
JB
1165Tue Oct 15 17:07:20 1996 Jim Blandy <jimb@floss.cyclic.com>
1166
aa9576ad
JB
1167 * boot-9.scm: Doc fixes.
1168 (make-module): Rework for readability.
1169 (make-root-module, make-scm-module): USES argument to make-module
1170 should be '(), not #f.
1171
d065b65f
JB
1172 * boot-9.scm (try-load): %sys-load-path has been renamed to
1173 primitive-load-path; adjust call here.
1174
c01c94bf
MD
1175Tue Oct 15 14:25:01 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1176
d065b65f 1177 * boot-9.scm (signal-handler): Bugfix: Moved the recording of
c01c94bf
MD
1178 the stack to the correct place: when it is decided to generate an
1179 error-signal.
1180
2dfc85c0
MD
1181Mon Oct 14 22:20:30 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1182
1183 * boot-9.scm (error-catching-loop, signal-handler,
1184 handle-system-error): Backtracing now works for signals aswell;
1185 Backtracing mechanism can now identify the stack root created by
1186 start-stack so that the user isn't exposed to system stack frames.
1187
84d8ad97
MD
1188Mon Oct 14 06:05:42 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1189
1190 * Makefile.in: Added threads.scm.
1191
4f0292cf
MD
1192Mon Oct 14 04:21:51 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1193
1194 * debug.scm (make-enable, make-disable): Simplified.
1195
1196 * boot-9.scm: Renamed %%throw-handler-default -->
1197 throw-handler-default.
1198 ((handle-system-error key . arg-list)): Changed the way errors are
1199 reported.
1200 ((scm-style-repl)): Wrap up the call to eval in a start-stack
1201 acro.
1202 ((error-catching-loop thunk)): Introduce a lazy-catch into
1203 error-catching-loop so that the stack can be captured.
1204
1eaceb61
JB
1205Thu Oct 10 22:27:32 1996 Jim Blandy <jimb@totoro.cyclic.com>
1206
1207 * mapping.scm (hash-table-mapping): Explicitly request that
1208 make-vector fill new vectors with '(); this will make it easier to
1209 port Guile Scheme code to other Schemes.
1210 * boot-9.scm (make-print-style, make-print-table): Same.
1211
6fa8995c
GH
1212Sun Oct 6 03:54:59 1996 Gary Houston <ghouston@actrix.gen.nz>
1213
1214 * boot-9.scm (load): rewritten again.
1215 Append "." to the default %load-path.
1216 (feature?): new function: checks for a symbol in the features list.
1217 (module-local-variable): remove apparently useless (caddr (list m v
1218 ...))
1219 (%load-announce): minor formatting change.
1220 (file-exists?): use access? if posix is featured.
1221 (file-is-directory?): use stat if i/o-extensions is featured.
1222 (try-module-autoload module-name): use file-exists? before
1223 file-is-directory?
1224
8b4a21d1
MD
1225Sat Oct 5 18:54:03 1996 Mikael Djurfeldt <mdj@kenneth>
1226
8acae5bb
MD
1227 * boot-9.scm: Added conditional loading of threads.scm.
1228
1229 * threads.scm: New file. Modified from the Cygnus-r0.3
1230 distribution.
1231
8b4a21d1
MD
1232 * boot-9.scm (error-catching-loop): Added handling of key
1233 `switch-repl'.
1234
1235 * boot-9.scm: Name change %%bad-throw --> bad-throw.
1236
c90c9685
JB
1237Wed Oct 2 23:38:44 1996 Jim Blandy <jimb@totoro.cyclic.com>
1238
1239 * boot-9.scm (make-record-type, record-constructor): Don't assume
1240 the empty list is false when parsing the argument list.
1241
1242Mon Sep 30 22:15:50 1996 Jim Blandy <jimb@totoro.cyclic.com>
1243
1244 * boot-9.scm (signal-handler): Clean up logic.
1245
1246 * boot-9.scm (load): Assume %load-path is always bound.
1247
5552355a
GH
1248Sat Sep 28 00:15:37 1996 Gary Houston <ghouston@actrix.gen.nz>
1249
1250 * boot-9.scm (error): replace another throw with scm-error. Throw
1251 to 'misc-error instead of 'error (no need to distinguish these.)
1252 Don't set up 'error as a key.
1253 Set up regex-error as a key, if regex is available.
1254 (signal-handler): use scm-error, not throw.
1255
7a818853 1256 (%try-load, try-load-with-path, %load, load-with-path,
5552355a
GH
1257 basic-try-load-with-path, basic-load-with-path,
1258 try-load-module-with-path,load-module-with-path): deleted, since
1259 they seem redundant.
1260 (try-load): define using %try-load, not try-load-with-path.
7a818853 1261 (load): rewritten. load tries to open the file directly and
5552355a
GH
1262 with a .scm extension before searching the library directories
1263 (should "." be added to %load-path? then load could still open
1264 directly files starting with "/").
1265 (try-module-autoload): use load, not load-with-path.
1266 (%load-indent): deleted, -2 was causing errors.
1267
1268 (%read-sharp): use port-line, not line-number.
1269
c90c9685
JB
1270Fri Sep 27 16:23:51 1996 Jim Blandy <jimb@totoro.cyclic.com>
1271
1272 * boot-9.scm (%%bad-throw): Delete definition. 1) It's very
1273 straightforward to provide the equivalent functionality using
1274 (catch #t ...), so there's no need for the extra complexity. 2)
1275 Outside the context of a read-eval-print loop (which Guile should
1276 not require) it's not clear we should do anything more complicated
1277 than print an error and exit; the user or REPL can establish
1278 something better if it wants. 3) In that case, it's much more
1279 robust to just do it in the C code.
1280
855c0eac
GH
1281Tue Sep 24 06:53:04 1996 Gary Houston <ghouston@actrix.gen.nz>
1282
1283 * boot-9.scm (%try-load): define using primitive-load. Previously
1284 %try-load itself was the primitive.
1285 (load-with-path): use scm-error instead of %load-announce-lossage.
1286 Errors are thrown to 'misc-error instead of 'could-not-load.
1287 (%load-announce-lossage): deleted.
1288
a0c97697
MD
1289Mon Sep 23 00:16:31 1996 Mikael Djurfeldt <mdj@kenneth>
1290
1291 * boot-9.scm (warn, scm-style-repl): Use C printer instead of `print'.
1292 (make-record-type type-name fields): Temporarily remove support
1293 for printing of records (not possible yet with C printer).
1294
be2d2c70
GH
1295Fri Sep 20 00:24:27 1996 Gary Houston <ghouston@actrix.gen.nz>
1296
1297 * boot-9.scm (file-exists?, file-is-directory): catch only
1298 system-error, not every kind of error.
1299 (scm-error): new procedure.
1300
434bf5ce
JB
1301Thu Sep 19 16:02:46 1996 Jim Blandy <jimb@totoro.cyclic.com>
1302
1303 * boot-9.scm: Formatting tweaks.
1304
2194b6f0
GH
1305Wed Sep 18 09:07:37 1996 Gary Houston <ghouston@actrix.gen.nz>
1306
1307 * boot-9.scm (%%handle-system-error key): remove the code for
1308 SCM-style errors. handle the case that an unexpected number
1309 of args are supplied.
1310 (%%system-errors): removed.
1311 (error): redefine using a throw with key and 4 args.
1312 ('error): associate 'error, 'error-signal keys with
1313 %%handle-system-error.
1314 (%%default-error-handler): removed.
1315 (signal-handler): throw with 4 args and use the error-signal key.
1316 Create an error message instead of using numerical codes.
1317 (%%bad-throw): call error instead of throw if key not found.
1318
1319Tue Sep 17 04:11:28 1996 Gary Houston <ghouston@actrix.gen.nz>
1320
1321 * boot-9.scm: initialize new error keys (see libguile/ChangeLog).
1322 (%%handle-system-error key): check subr is not #f before printing.
1323 Recognize %s (embed an argument using "display") and
1324 %S (embed an argument using "write").
1325
234f2da6
GH
1326Sun Sep 15 03:55:35 1996 Gary Houston <ghouston@actrix.gen.nz>
1327
1328 * boot-9.scm (%%handle-system-error key): set args and rest to
1329 the empty list if they are #f.
1330 Initialize out-of-range as an error key.
1331
e1724d20
GH
1332Sat Sep 14 03:41:15 1996 Gary Houston <ghouston@actrix.gen.nz>
1333
40c8906e
GH
1334 * PLUGIN/REQ: remove the "ice-9 lgh" line which causes a cycle.
1335
e1724d20
GH
1336 * boot-9.scm: remove leading %% from references to '%%system-error.
1337 (%%handle-system-error): don't pass all the thrown arguments when
1338 aborting, just the key and subr.
1339 Remove the code to "Install default handlers for built-in errors."
1340 Remove the definition of the syserror procedure.
1341 Associate 'numerical-overflow with default handler.
1342
1a80fb07
MD
1343Fri Sep 13 04:58:11 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1344
1345 * boot-9.scm: Name change: value-ref --> local-ref
1346 resolved-ref --> nested-ref Motivation: conformance to the other
1347 dictionary operators: list-ref operates on list, vector-ref
1348 operates on vector, nested-ref operates on nested namespace,
1349 local-ref operates on the local nested namespace.
1350
7cb1d4d3
GH
1351Sat Sep 7 06:44:47 1996 Gary Houston <ghouston@actrix.gen.nz>
1352
1353 * boot-9.scm (%%handle-system-error): recognise errors thrown
1354 by lgh-error (fill-message etc.)
9561554c 1355 (fill-message): check first whether args is null.
a949b3f2 1356 (fill-message): bug fix and check that args is a list.
7cb1d4d3 1357
393ee9a8
JB
1358Thu Sep 5 11:33:41 1996 Jim Blandy <jimb@floss.cyclic.com>
1359
1360 * boot-9.scm: %load-path is initialized in C code now.
1361 (implementation-vicinity, parse-path): Deleted, along with code to
1362 initialize %load-path.
1363
1364 * boot-9.scm (in-vicinity): If the vicinity doesn't end with a
1365 "/", use one to separate it from the file.
1366
e4ef46d4
JB
1367Thu Aug 29 23:05:11 1996 Thomas Morgan <tmorgan@gnu.ai.mit.edu>
1368
1369 * boot-9.scm (%load-path): Add the site directory.
1370 Add the directory named after the version number.
1371 Prepend the version number to the other directories in the path.
1372 Simplify by mapping the common prefix onto each item.
1373 * Makefile.in (datadir, pkgdatadir, pkgverdatadir, subpkgdatadir,
1374 sitedatadir): New definitions.
1375 (libparent, libdir, install_path): Replaced by above.
1376 (install): Create the above directories.
1377 Put the source files into subpkgdatadir.
1378 (uninstall): Remove the above directories.
1379
00312aa3
JB
1380Thu Aug 29 21:48:47 1996 Jim Blandy <jimb@floss.cyclic.com>
1381
1382 Don't use the PLUGIN system to gather information for the
1383 Makefile's distribution and installation targets; just put it all
1384 in the Makefile directly.
1385 * PLUGIN/this.configure (scm_files, aux_files): Remove sections
1386 for these.
1387 * configure.in: Remove code that gets and substitutes scm_files and
1388 aux_files.
1389 * Makefile.in (scm_files, aux_files): Write out the list of files
1390 here, where people expect to find them.
1391
96a8aaf3
MD
1392Fri Aug 23 06:44:36 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1393
1394 * boot-9.scm: Preliminary solution: optionally load the debug
7685f77c 1395 module. Changed "gls" to "guile1.0b3".
96a8aaf3
MD
1396
1397 * debug.scm: New file: debug extensions.
1398
4e378733
MD
1399Wed Aug 21 13:06:56 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1400
1401 * boot-9.scm (print-vector): Renamed weak-hash-table? -->
1402 weak-key-hash-table?. (Again!)
1403
0190d683
MD
1404Tue Aug 20 07:31:39 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1405
1406 * boot-9.scm (print-vector, macro-table, xformer-table):
1407 Renamed weak-hash-table --> weak-key-hash-table.
1408
1409 * poe.scm (funcq-memo): Renamed weak-hash-table -->
1410 weak-key-hash-table.
1411
8b13c6b3
GH
1412Sat Aug 3 06:16:35 1996 Gary Houston <ghouston@actrix.gen.nz>
1413
1414 * boot-9.scm (*null-device*): global constant from goonix.
1415 (move->fdes): adjusted for boolean primitive-move->fdes. return
1416 the modified port, always set revealed count to 1 (SCSH compatible).
1417 (release-port-handle port): from goonix (SCSH compatible).
1418 (%open-file): removed.
1419 (open-input-file, open-output-file, file-exists?, file-is-directory?):
1420 modified for open-file change (does not return #f).
1421
a44a755d
JB
1422Thu Aug 1 02:52:42 1996 Jim Blandy <jimb@totoro.cyclic.com>
1423
1424 * Makefile.in (dist-dir): New target for new dist system.
1425 (manifest): Deleted.
1426 * PLUGIN/this.configure (aux_files): Removed PLUGIN; it's a
1427 directory, and needs special treatment in the dist-dir target.
1428
02b754d3
GH
1429Thu Aug 1 09:00:21 1996 Gary Houston <ghouston@actrix.gen.nz>
1430
1431 * boot-9.scm: remove the wrappers for '%' system primitives,
1432 now that they throw errors directly.
1433 remove make-simple-wrapper and similar functions.
1434 protect a call to getenv which may now throw an exception.
1435
1436Wed Jul 31 23:44:42 1996 Gary Houston <ghouston@actrix.gen.nz>
1437
1438 * boot-9.scm (false-if-exception): new macro.
1439
0f2d19dd
JB
1440Fri Apr 19 13:53:08 1996 Tom Lord <lord@beehive>
1441
1442 * The more things change...
1443
1444