* string-case.scm: New file, brought in from SLIB, and adapted to
[bpt/guile.git] / ice-9 / ChangeLog
CommitLineData
cceae55d
JB
11999-04-17 Jim Blandy <jimb@savonarola.red-bean.com>
2
3 * Makefile.in: Regenerated.
4
d2b8d4ff
MD
51999-04-08 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
6
7 * boot-9.scm: Provide 'values.
8
b6e17c63
MD
91999-03-21 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
10
11 * boot-9.scm (process-define-module, use-syntax): Bugfix:
12 :use-syntax should add syntax to using module, not current module.
13 (internal-use-syntax): Removed.
14
e059c0b7
MD
151999-03-21 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
16
17 * session.scm (apropos-internal): Modified to comply with new
18 argument order for hash-fold.
19
275b2a7e
MD
201999-03-19 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
21
22 * boot-9.scm (try-load-module): New procedure. Broken out from
23 resolve-module.
24 (resolve-module): Bugfix: Make it possible for a module at a
25 deeper level (x y z) to depend on a module on a higher (x y).
33f8ad2b
MD
26
27 This also has the desired side-effect that multiple attempts to
28 load a module (e.g. with `use-modules') work until source is
29 actually found for the module (e.g. because the correct catalog
30 has been added to the load path).
31
275b2a7e
MD
32 Use try-load-module.
33
deea77eb
MD
341999-03-18 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
35
36 * session.scm (system-module): New procedure. Used to switch a
37 module between system and user state.
38
2251c7a4
MD
391999-03-16 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
40
41 * session.scm (apropos-internal): Rewritten using hash-fold.
42
43 * emacs.scm, session.scm, slib.scm): Added :no-backtrace in module
44 definition.
45
6ee350ad
MD
461999-03-14 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
47
48 * boot-9.scm (make-record-type): Use `set-struct-vtable-name!' to
49 associate a name to the record type descriptor so that the object
50 system can create a wrapper class for it.
51
88124126
MD
521999-03-12 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
53
54 Improvement of backtraces: Introduces a new stack narrowing
55 specifier, #t, for the inner cut. If the inner cut is specified
56 by #t, `make-stack' will throw away inner stack frames (most
57 recent calls on call chain) up to but excluding the first user
58 stack frame encountered.
59
60 This specifier is now used in `save-stack' so that the call
61 `(save-stack)' will get the new behaviour. [It is recommended that
62 any error reporting functions written by the user have this call
63 on the outermost expression level (i.e. as a member of the lambda
64 list).]
65
66 Modules are partitioned into "user" and "system" modules. [I know
67 that some names used here are silly, but I don't have more time to
68 spend on a better solution, especially considering that the module
69 system will be replaced. But if people have better ideas, then
70 please tell me!]
71
72 System modules are created by adding :no-backtrace among the
73 define-module switches:
74
75 (define-module (foo)
76 :no-backtrace)
77
78 Modules which doesn't have the :no-backtrace specifier are user
79 modules.
80
81 A stack frame is classified as a user frame if it has source code
82 associated with it and if this source code can be proven to come
83 from a user module. If it can be proven to come from a system
84 module it is a system frame.
85
86 Frames which can't be classified, e.g. application frames, are cut
87 away if they occur between system frames, but are left on the
88 stack if they occur between the last system frame and the first
89 user frame encountered. (Note that the first user frame
90 encountered is the last user code being evaluated!)
91
92 In some cases the system part of the call chain is introduced by
93 frames which should but can't be proven to be system frames. The
94 following workaround has been implemented: The cutting proceeds
95 over application frames where the operator is marked by the
96 `system-procedure' property. (This has been used to cut away
97 generic function dispatch code in the object system.)
98
99 * boot-9.scm (set-system-module!): New procedure: Set system/user
100 status of a module.;
101 Mark `the-root-module' and `the-scm-module' as system modules.
102 (process-define-module): Add new keyword :no-backtrace.
103
104 * boot-9.scm (environment-module): Bugfixed.
105 (set-module-eval-closure!): Add a pointer back from the eval
106 closure to the module.
107
108 * emacs.scm (emacs-load): Reset port filename after transfer.
109
41f50369
MD
1101999-03-03 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
111
112 * slib.scm (make-random-state): Added for compatibility.
113
fcdd6672
MS
1141999-02-16 Maciej Stachowiak <mstachow@alum.mit.edu>
115
116 * optargs.scm (lambda*): Handle empty argument lists properly.
117
8d21a2ff
JB
1181999-02-15 Jim Blandy <jimb@savonarola.red-bean.com>
119
120 Fix from Russ McManus:
121 * getopt-long.scm (parse-option-spec): Store 'optional as the
122 value-required? field for options that take optional values.
123 (process-short-option): Grab a value for the option when it takes
124 either an optional or required value.
125
deaceb4e
JB
1261999-02-12 Jim Blandy <jimb@savonarola.red-bean.com>
127
128 * getopt-long.scm: Remove debugging calls to `pk'.
129
4ca48ad4
JB
130 * getopt-long.scm: Return list of ordinary arguments as the value
131 of the '() key, not `rest'.
132
deaceb4e
JB
133 A new argument-processing package from Russ McManus.
134 * getopt-long.scm: New file.
135 * Makefile.am (ice9_sources): Added getopt-long.scm.
136 * Makefile.in: Regenerated.
137
08394899
MS
1381999-02-09 Maciej Stachowiak <mstachow@alum.mit.edu>
139
140 * optargs.scm: New file.
141 * Makefile.am (ice9_sources): Add optargs.scm here. Makefile.in
142 not regenerated because I don't have the right version of Automake.
deaceb4e 143
2e132553
JB
1441999-02-06 Jim Blandy <jimb@zwingli.cygnus.com>
145
146 * and-let*.scm: New file, from Michael Livshin.
147 * Makefile.am (ice9_sources): Add and-let* here.
148 * Makefile.in: Regenerated.
149
65a5dccb
MD
1501999-01-11 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
151
152 * slib.scm (install-require-module): Fixed the kludge which loads
153 the slib catalog: Doesn't anylonger assume that the feature tested
154 for isn't loaded.
155
333a4791
JB
1561998-12-14 Jim Blandy <jimb@zwingli.cygnus.com>
157
158 * Makefile.in: Regenerated.
159
45a02a29
MD
1601998-12-14 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
161
162 * boot-9.scm (process-define-module): Reverted the change of
163 1998-11-23 which caused loading of object code if :use-module was
164 applied to the module itself.
165
e7b6c834
MD
1661998-12-11 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
167
168 * Makefile.am: Removed setf.scm.
169
170 * setf.scm: Removed. 1. It was buggy. 2. It was unschemey.
171 (These shortcomings were my fault.)
172
bf3c93d1
MD
1731998-12-10 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
174
9705d5c2 175 * boot-9.scm (environment-module): New procedure.
bf3c93d1 176
bc9a9137
MD
1771998-12-07 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
178
179 * Makefile.am: Added setf.scm.
180
1811998-12-05 Christian Lynbech <chl@tbit.dk>
182
183 * setf.scm: New file. Adds the new forms `setf!' and `setter'
184 which implements generalized references a la Common LISP.
185
71225060
MD
1861998-12-02 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
187
188 * boot-9.scm (process-define-module): Added new specifier
189 :autoload MODULENAME BINDINGS to the define-module form.
190 The autoload specifier tells the module system to load the module
191 MODULENAME at the first occasion that any variable with its name
192 among BINDINGS is referenced.
193 (make-autoload-interface): New procedure: Constructs a stand-in
194 for the public interface for the module to be autoloaded.
195
3b3085c6
MD
1961998-12-01 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
197
198 * boot-9.scm (*suppress-old-style-hook-warning*): Set this to #t
199 if you don't want the old style hook warnings.
200
49e5d550
MD
2011998-12-01 Christian Lynbech <chl@tbit.dk>
202
203 * boot-9.scm (try-using-libtool-name): Fix check on dlname to make
204 sure that it isn't empty, as it is when we are only buidling
205 static libraries.
206
afae5cbd
MD
2071998-11-27 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
208
209 * session.scm (arity): New procedure.
210
3763ac3c
MD
2111998-11-26 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
212
213 * boot-9.scm: Use run-hook instead of run-hooks everywhere.
214
7a79c6b4
MD
2151998-11-26 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
216
217 * boot-9.scm (run-hooks, add-hook!, remove-hook!): Added temporary
218 code for backward compatibility until people have had time to
219 adapt to the new hooks.
220
a56eeb46
MD
2211998-11-23 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
222
223 * boot-9.scm (beautify-user-module!): Beautify also if public
224 interface is set to the module itself. In this way we can use
225 beautify-user-module! to beautify a module prepared for object
226 code.
227 (process-define-module): Special case: Try to load object code as
228 well if a module does :use-module on itself.
229
230 * boot-9.scm: Bugfix: Since boot-9.scm is now loaded from
231 invoke_main_func, we can no longer be sure that all modules have
232 been registered when boot-9.scm is loaded.
233 (register-modules): New function: Register and tag modules
234 registered by scm_register_module_xxx since last call to this
235 function. Modules are tagged with the dynamic object passed as
236 argument. (Already linked modules should be tagged with #f.)
237 (init-dynamic-module, link-dynamic-module): Call register-modules
238 first to register linked modules.
239
240 * boot-9.scm (init-dynamic-module): Remove module from
241 registered-modules as soon as possible in case we are recursively
242 invoked; Set public interface before doing the dynamic-call.
243
244 * boot-9.scm (map-in-order): Removed (replaced by scm_serial_map).
245 (abort-hook, before-error-hook, after-error-hook,
246 before-backtrace-hook, after-backtrace-hook, before-read-hook,
247 after-read-hook, exit-hook): Make hooks with `make-hook'.
248
249 * boot-9.scm: Make hooks first class citizens and make them easier
250 to use from C:
251 (make-hook, add-hook!, remove-hook!, run-hooks): Moved to
252 libguile/feature.c.
7e414627
MD
253
254 * boot-9.scm: Added warnings about bindings used in
255 libguile/modules.c: the-module, set-current-module,
a56eeb46 256 make-modules-in, beautify-user-module!, module-eval-closure.
7e414627 257
dc61592f
MD
2581998-11-21 Mikael Djurfeldt <mdj@kenneth>
259
260 * boot-9.scm (the-environment): New special form: Returns an
261 object representing the current local evaluation environment.
262 This object can be used in `local-eval' and `defined?'.
263
7398c2c2
MD
2641998-11-13 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
265
266 * boot-9.scm (collect): New syntax. Similar to begin but returns
267 a list of the results of all forms in the sequence instead of the
268 result of the last form.
269
6162a00d 2701998-11-10 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
e586be78 271
00f4b2e8
MD
272 * boot-9.scm (values, call-with-values): Moved here from
273 syncase.scm.
274
275 * syncase.scm (values, call-with-values): Moved to boot-9.scm.
276
e586be78
MD
277 * boot-9.scm (readline-options, readline-enable, readline.disable,
278 readline-set!: New options interface.
279
6162a00d
MD
280 * readline.scm (readline-port): Use readline-options-interface.
281
4fdf8b2c
MD
2821998-11-05 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
283
284 * boot-9.scm: Set the repl start module in `top-repl' instead of
285 at the end of boot-9.scm.
286
0b6925fe
MD
2871998-11-01 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
288
289 * emacs.scm (format): Bugfix: Handle multiple arguments
290 correctly. (Thanks to Thien-Thi Nguyen.)
291
e4eae9b1
MD
2921998-11-01 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
293
294 * boot-9.scm (exit-hook): New hook: Is run at the very end of an
295 interactive session.
296 (top-repl): Run exit-hook on exit.
297
298 * readline.scm (readline-port): Maybe read history; Maybe write
299 history at exit (add to exit-hook).
300
cad4d45b
MD
301Fri Oct 30 15:15:37 1998 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
302
303 * readline.scm (make-readline-port): Bugfixed last change...
304
24bf9166
MD
3051998-10-28 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
306
307 * readline.scm (make-readline-port): Don't set prompt to "... " if
308 read line was empty.
309
f4be1689
JB
3101998-10-19 Jim Blandy <jimb@zwingli.cygnus.com>
311
1f6fe22a
JB
312 * boot-9.scm, debug.scm, expect.scm, hcons.scm, lineio.scm,
313 r4rs.scm, slib.scm, threads.scm: Update copyright years.
314
33432c79
JB
315 * getopt-gnu-style.scm, slib.scm: Add copyright notice.
316
317 Talked to Stallman. Actually, the syntax-case copyright is no
318 problem. Duh.
319 * Makefile.am (ice9_sources): Revert last change.
320 * syncase.scm, psyntax.pp, psyntax.ss: Added again.
321 * Makefile.in: Regeneretade.
322
f4be1689
JB
323 * boot-9.scm: Don't assume that this file is loaded just before
324 entering a read-eval-print loop. Turn code to load (ice-9 emacs)
325 into...
326 (load-emacs-interface): New function.
327 (top-repl): Call it, if use-emacs-interface is defined and true.
328 At this point, we *do* know we're about to enter a REPL.
329
330 We can't include Kent Dybvig's syntax-case macro expander in the
331 core Guile distribution, because we don't have copyright
332 assignments for this code. We can certainly distribute them as a
333 separate package, but Guile should be FSF code.
334 * syncase.scm, psyntax.pp, psyntax.ss: Removed.
335 * Makefile.am (ice9_sources): Removed syncase.scm, psyntax.pp, and
336 psyntax.ss.
337 * Makefile.in: Regenerated.
338
339 * Makefile.am (ice9_sources): Add getopt-gnu-style.scm.
340 * Makefile.in: Regenerated.
341
c8f11b97
MD
3421998-10-18 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
343
344 * boot-9.scm: Added extended read syntax for byte vectors #y(...)
345 and short vectors #h(...).
346
bb2a4165
JB
3471998-10-14 Jim Blandy <jimb@zwingli.cygnus.com>
348
349 * calling.scm (excursion-function-syntax): Use a sequence of
350 set!'s, not a single multi-variable set!; we removed support for
351 that syntax a long time ago. (Thanks to Shuji Narazaki.)
352
c8983d6a
JB
3531998-10-12 Jim Blandy <jimb@zwingli.cygnus.com>
354
94e3e95e 355 * r4rs.scm (OPEN_READ, OPEN_WRITE, OPEN_BOTH): Don't bother
c8983d6a
JB
356 testing software-type here. That's the least of our Windows
357 porting issues, and it's done wrong anyway.
358
77052259
JB
3591998-10-09 Jim Blandy <jimb@zwingli.cygnus.com>
360
98330fd2
JB
361 * boot-9.scm (read-path-list-notation-warning): New function:
362 print a warning the first time we see `#/' notation.
363
77052259
JB
364 * q.scm (sync-q!, q?, q-remove!, q-push!, enq!): Lots of bugs, and
365 (eq? #f '()) assumptions. Make functions that aren't documented
366 to return anything else return the queue itself. (Bug report from
367 Michael Livshin --- thanks!)
368
c9dd46af
MD
3691998-08-21 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
370
371 * debug.scm (trace-entry, trace-exit): Removed re-enabling of
372 trace flag.
373
374 * boot-9.scm (make-options): Bugfix: Changed pair? --> list? in
375 order to allow the empty list as arg.
376 (error-catching-loop): Use `with-traps' to create a dynamic
377 context with traps enabled.
378
5ef4ef4e
MD
3791998-08-19 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
380
381 * boot-9.scm: Removed (ice-9 regex) from use-list of (guile)
382 module.
383 (try-using-libtool-name): Removed dependency on (ice-9 regex).
384
325f42e0
MD
3851998-08-15 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
386
387 * boot-9.scm: Make the root module use (ice-9 regex) if
388 available. The dynamic linking facilities in boot-9.scm are
389 currently dependent upon regular expressions. My change of
390 1998-07-14 removed (ice-9 regex) from the use-list of the root
391 module and thereby destroyed dynamic linking.
392
0dcbc17a
JB
3931998-07-29 Jim Blandy <jimb@zwingli.cygnus.com>
394
395 * Makefile.in: Regenerated using the last public version of
396 automake, not the hacked Cygnus version.
397
1f5ae2fd
JB
3981998-07-28 Jim Blandy <jimb@zwingli.cygnus.com>
399
400 * Makefile.in: Regenerated, after removing Totoro kludge.
401
1a0106ef
JB
4021998-07-28 Jim Blandy <jimb@totoro.red-bean.com>
403
404 * getopt-gnu-style.scm: New file. (Thanks to Russ McManus.)
405
e99cbcd6
JB
4061998-07-26 Jim Blandy <jimb@zwingli.cygnus.com>
407
408 * Makefile.in Rebuilt, for config changes in parent dir.
409
6f4d9622
MD
4101998-07-21 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
411
412 * readline.scm (make-readline-port): Set prompt string to "... "
413 after first read line. (Thanks to Richard Polton.)
414
3ec4ec9a
JB
4151998-07-19 Jim Blandy <jimb@zwingli.cygnus.com>
416
417 * lineio.scm (make-line-buffering-input-port): Don't use
418 ungetc-char-ready?, since we don't provide that function any
419 more. The unread-string function doesn't interact properly with
420 any of the standard I/O functions anyway. (Thanks to Andrew
421 Archibald.)
422
423 * hcons.scm (hashq-cons-assoc): Don't assume the empty list is
424 false. Return false when we cannot find a matching entry in the
425 list. (Thanks to Andrew Archibald.)
426
a0cc0a01
MD
4271998-07-16 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
428
429 * boot-9.scm (export, export-syntax): New special forms: Export
430 bindings from a module. `(export name1 name2 ...)' can be used at
431 the top of a module (after `define-module') to specify which names
432 should be exported. It can be used as an alternative to
433 `define-public'. `export-syntax' works equivalently to `export'
434 but is intended for export of syntactic keywords.
435 (Thanks to Thien-Thi Nguyen.)
436
39bc9948
MD
4371998-07-15 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
438
439 * boot-9.scm: Renamed module `(guile-repl)' --> `(guile-user)'.
440
13e341bb
MD
4411998-07-14 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
442
ae996c08
MD
443 * boot-9.scm: Let the user start in module `(guile-repl)' instead
444 of module `(guile)'. Also make sure that `(guile-repl)' uses
445 suitable modules. This change improves Guile stability
446 substantially since bindings will only be copied from the root
447 module: If the user redefines builtins in `(guile-repl)' it won't
448 affect the internal operation of Guile itself.
13e341bb 449
c6775c40
MD
4501998-06-19 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
451
452 * boot-9.scm (load-module): When loading files from within files
453 themselves being loaded: Use the directory path of the file being
454 loaded as root for relative filenames. (After suggestion by
455 Steven G. Johnson.)
456
ef0d04e5
MD
4571998-06-15 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
458
459 * emacs.scm (emacs-load): New feature: Eval in specified module.
460
4ffd142c
MD
4611998-06-14 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
462
463 * readline.scm: Typo in regex module name.
464
edd9ac21
MD
4651998-06-13 Mikael Djurfeldt <mdj@barbara.nada.kth.se>
466
467 * readline.scm (apropos-completion-function): regexp-quote text to
468 be completed.
469
a66c53a8
MD
4701998-06-11 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
471
edd9ac21 472 * debug.scm, emacs.scm: Bugfix: Treat `the-last-stack' as a fluid.
a66c53a8 473
d38a6802
MD
4741998-06-09 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
475
476 * boot-9.scm: Check that (current-input-port) is a tty before
477 enabling readline. (Thanks to Michael N. Livshin.)
478
cf266109
MD
4791998-06-07 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
480
481 * boot-9.scm (use-syntax): Turned into a macro inorder to be
482 similar in use to `use-modules'.
483 Example: (use-syntax (ice-9 syncase)) will 1. load the module
484 (ice-9 syncase), and, 2. install the procedure `syncase' as eval
485 transformer.
486 (internal-use-syntax): New procedure.
487 (process-define-module): Use `internal-use-syntax'.
488
67da6c57
MD
4891998-05-19 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
490
491 * Makefile.am (ice9_sources): Add emacs.scm.
492
1b558afd
MD
4931998-05-13 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
494
495 * readline.scm: Use the new readline facilities: Add the
496 possibility to control input and output ports; Add apropos
497 completion.
498
499 * boot-9.scm: Antirevert Jim's readline code which he reverted
500 19971027 and adapt it to the current readline interface.
501
502 * boot-9.scm (top-repl): Only enable readline if not using the
503 Emacs interface; Only use repl prompt when using the readline port
504 from repl-read. (We don't want to see it when calling `read'.)
505
506 * boot-9.scm (remove-hook!): Parenthesis bug.
507
f246e585
MD
5081998-05-11 Mikael Djurfeldt <mdj@kenneth>
509
510 * boot-9.scm: Load readline module if readline is present.
511
512 * readline.scm (apropos-completion-function): New procedure:
513 Symbolic completion. (Thanks to Andrew Archibald!)
514
f714ca8e
MD
5151998-04-22 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
516
517 * boot-9.scm (process-define-module): Added keyword use-syntax.
518
3ede541d
MD
5191998-04-19 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
520
521 * nonblocking.scm: Removed. libguile is now inherently
522 nonblocking through the use of scm_internal_select.
523
524 * emacs.scm: Removed use of nonblocking.scm.
525
526 * gwish.scm, gtcl.scm: Removed. tcltk.scm has made these
527 obsolete.
528
608cf70c
MD
5291998-04-15 Mikael Djurfeldt <mdj@nada.kth.se>
530
531 * runq.scm (runq-control): Corrected spelling of enqueue!.
532 (Thanks to Karl M. Hegbloom.)
533
16b8ebbe
MD
5341998-03-30 Mikael Djurfeldt <mdj@nada.kth.se>
535
536 * boot-9.scm: Added new run-time option interface eval-options.
537
abf06c12
MD
5381998-03-28 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
539
540 * boot-9.scm (remove-hook!): New macro. (Thanks to Maciej
541 Stachowiak.)
542
13dc0cae
MD
5431998-01-30 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
544
545 * threads.scm: Added simple error and signal handler.
546 (make-thread, begin-handler): Use this handler. The most
547 important effect of this is that signals get unmasked.
548 Previously, when a signal was thrown signals remained masked
549 (signals get masked when a signal is taken) which influenced other
550 threads.
551
841d28d7
TP
5521998-01-01 Tim Pierce <twp@skepsis.com>
553
554 A better fix to the SLIB identity problem -- thanks to Marius Vollmer.
555 * slib.scm (identity): Unmake public.
556 (slib:eval): Evaluate inside `slib-module'.
557
ad76c8d9
TP
5581997-12-24 Tim Pierce <twp@skepsis.com>
559
249cdba6
TP
560 * boot-9.scm: Doc fix.
561
ad76c8d9
TP
562 * slib.scm (identity): Made public.
563 (home-vicinity): New function (from SLIB/Template.scm).
564
848f2a01
TP
5651997-12-13 Tim Pierce <twp@skepsis.com>
566
f4be1689 567 * boot-9.scm (read-line): Rewritten to call %read-line for
848f2a01
TP
568 improved speed. Minor user-visible changes: the new functions are
569 hardwired to treat the LFD character as signifying end-of-line, so
570 changing `scm-line-incrementors' will no longer affect the
571 behavior of read-line. On platforms which do not represent
572 end-of-line with a LFD character, read-line should behave more
573 like native line-processing facilities, but there is still a ways
574 to go here.
575
8bb7f646
MD
576Sat Nov 29 01:24:46 1997 Mikael Djurfeldt <mdj@kenneth>
577
578 * boot-9.scm (error-catching-loop, save-stack): `the-last-stack'
579 is now a fluid.
580
ebd79f62
TP
5811997-11-28 Tim Pierce <twp@skepsis.com>
582
848f2a01
TP
583 * boot-9.scm (find-and-link-dynamic-module): If a module directory
584 contains a .la file (a libtool support file), attempt to extract
585 the shared library name from that file. If the .la file does not
586 exist, try to link against a .so file. Libtool-generated compiled
587 modules should load more cleanly in Guile now.
ebd79f62
TP
588 (try-using-libtool-name, try-using-sharlib-name): New functions.
589
28d8ab3c
GH
590Sun Nov 9 06:10:59 1997 Gary Houston <ghouston@actrix.gen.nz>
591
592 * boot-9.scm (set-batch-mode?!, batch-mode?): initialize more
593 usefully so they will work from a script.
594
13a7ee16
MV
5951997-10-31 Marius Vollmer <mvo@zagadka.ping.de>
596
597 * boot-9.scm (inherit-print-state): Moved definition to the
598 neighborhood of the record code.
599
930b16c0
JB
600Mon Oct 27 02:05:49 1997 Jim Blandy <jimb@totoro.red-bean.com>
601
602 * boot-9.scm: Revert changes to this file from Oct 23. It turns
603 out to interact badly with the Emacs support and the Tcl/Tk
604 support. It's not a high enough priority at the moment to be
605 worth fixing. I'm leaving the other readline support in, though.
606
3fa5bb75
JB
607Sat Oct 25 14:23:22 1997 Jim Blandy <jimb@totoro.red-bean.com>
608
609 * Makefile.am: Include readline.scm in the list of files to be
610 installed, so Guile can find it for interactive use.
611 * Makefile.in: Regenerated.
612
2e368582
JB
613Thu Oct 23 01:00:33 1997 Jim Blandy <jimb@totoro.red-bean.com>
614
615 Add support for readline function.
616 * readline.scm: New module.
617 * boot-9.scm (repl-reader): New function.
618 (scm-style-repl): Call repl-reader, instead of doing the reading
619 ourselves. Remove repl-report-reset; it was never used for
620 anything.
621 (top-repl): If we've got the readline primitives, then redefine
622 repl-reader to use them.
623 If we've got the readline primitives, import the readline module.
624
625 * ls.scm (ls, lls): Don't assume (eq? #f '()).
626
627Wed Oct 22 18:26:57 1997 Jim Blandy <jimb@totoro.red-bean.com>
628
629 * calling.scm, common-list.scm, ls.scm, q.scm, runq.scm,
630 string-fun.scm: Added copyright notices; reformatted.
631
4bbbcd5c
GH
632Thu Oct 9 05:44:00 1997 Gary Houston <ghouston@actrix.gen.nz>
633
634 * expect.scm: (expect-regexec): new procedure, use it in
635 expect-strings to fix the => syntax under the new regex system.
636 (top): include regex module in define-module statement.
637
638Wed Oct 8 03:16:01 1997 Gary Houston <ghouston@actrix.gen.nz>
639
640 * (error-catching-loop): new local variable "interactive". if
641 #f, abort terminates the process.
642 (set-batch-mode?!, batch-mode?): new closures, defined in
643 error-catching-loop. the names are from scsh.
644
c115b54b
MV
6451997-10-06 Marius Vollmer <mvo@zagadka.ping.de>
646
647 * boot-9.scm (inherit-print-state): If NEW-PORT contains a
648 print-state, throw it away.
649
2e368582 650Fri Oct 3 12:00:00 Mikael Djurfeldt <mdj@nada.kth.se>
9f9aa47b
MD
651
652 * boot-9.scm (struct-layout): Use `vtable-index-layout' instead of
653 `0'.
654
2e368582 655Thu Oct 2 12:00:00 Mikael Djurfeldt <mdj@nada.kth.se>
9f9aa47b
MD
656
657 * boot-9.scm (struct-printer, make-struct-printer,
658 set-struct-printer-in-vtable!, *struct-printer*): Removed.
659 (record-type-vtable, make-record-type): Don't use make-struct-printer.
660 (record-type-vtable): User fields "prpr" (printer is no longer a
661 user field).
662 (record-type-name, record-type-fields): Decreased slot index by
663 one; Use `vtable-offset-user'.
664
2e368582 665Thu Oct 2 12:00:00 Marius Vollmer <mvo@zagadka.ping.de>
21fdbaee
MV
666
667 * boot-9.scm (inherit-print-state): New experimental function.
668
adc14c93
JB
669Tue Sep 30 13:12:48 1997 Jim Blandy <jimb@totoro.red-bean.com>
670
671 Suggestion and script from Maciej Stachowiak:
672 * boot-9.scm: Split off modules into separate, autoloadable files.
673 This reduces startup time from 10.5s to 5.5s (user cpu).
674 * calling.scm, common-list.scm, ls.scm, q.scm, runq.scm,
675 string-fun.scm: New files, containing stuff that used to be in
676 boot-9.scm.
677 * Makefile.am (ice9_sources): List new files here, for
678 distribution and installation.
679 * Makefile.in: Regenerated.
680
5aa28c1e
JB
681Mon Sep 29 23:53:55 1997 Jim Blandy <jimb@totoro.red-bean.com>
682
683 * Makefile.in: Regenerated with automake 1.2c.
684
2f110c3c
MD
685Mon Sep 29 03:21:24 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
686
d1005e3c
MD
687 * slib.scm (slib:load): slib:load first tries to load the file
688 named NAME, then NAME.scm. On error, report the error occuring at
689 the first attempt (NAME) rather than the second (NAME.scm).
690
2f110c3c
MD
691 * boot-9.scm: Bugfix: Hard-solder the print-option procedure into
692 the make-options macro so that we needn't refer to a global
693 symbol.
694
83b38198
MD
695Sun Sep 28 21:40:24 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
696
697 * debug.scm: Moved options interface procedures to boot-9.scm.
698
699 * boot-9.scm: Define options interface procedures here instead.
700
af01fdcd
JB
701Sat Sep 27 20:19:20 1997 Jim Blandy <jimb@totoro.red-bean.com>
702
703 * boot-9.scm (separate-fields-discarding-char,
704 separate-fields-after-char, separate-fields-before-char): Call
705 continuation function, RET, as advertised: with each separated
706 field a separate argument.
707
708 * Makefile.in: Regenerated with automake 1.2a.
709
534a0099
MD
710Sat Sep 20 14:23:53 1997 Mikael Djurfeldt <mdj@kenneth>
711
712 * slib.scm (slib:load): Export.
713
714 * boot-9.scm (in-vicinity): Bugfix: Don't add "/" to an empty
715 vicinity;
716 Provide defmacro.
717
8fa5faad
MD
718Thu Sep 18 01:24:31 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
719
720 * r4rs.scm (apply): Set name property to 'apply.
721
11b05261
MD
722Tue Sep 16 22:09:50 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
723
724 * boot-9.scm (keyword->symbol, display-usage-report): Changed
0a54457d
MD
725 length --> string-length. (Thanks to Aleksandar Bakic.)
726 (separate-fields-discarding-char, separate-fields-after-char,
727 separate-fields-before-char): Bugfix from Maciej Stachowiak
728 <mstachow@mit.edu>. Thanks!
a4f9b1f6
MD
729 (try-module-linked): Try to find module among those already
730 registered.
731 (try-module-dynamic-link): Removed the first test which
732 corresponds to a call to `try-module-linked'.
733 (resolve-module): Resolve modules in this order: 1. Already
734 registered modules (for example those which have been statically
735 linked), 2. Try to autoload an .scm-file, 3. Try to dynamically
736 link a .so-file.
11b05261 737
24b2aac7
MD
738Mon Sep 15 23:39:54 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
739
740 * boot-9.scm (iota): Renamed list-reverse! --> reverse!
741
7cfae7e6
MD
742Thu Sep 11 02:31:38 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
743
744 * session.scm (name): New procedure: Gives name of object.
745 (source): New procedure: Gives source of object.
746
7a0ff2f8
MD
747Wed Sep 10 20:12:45 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
748
f4be1689 749 * boot-9.scm (primitive-macro?): New procedure.
7a0ff2f8
MD
750
751 * slib.scm: Added hack which transfers syntactic information from
752 the builtin variable `define' to the slib version if module (ice-9
753 syncase) has been loaded. This is necessary to get correct
754 expansion inside the slib module.
755
756 * psyntax.ss (build-let, build-named-let): New output
757 constructors.
758 (build-lexical-var): Seed gensym with symbolic name.
759 (self-evaluating?): Add keywords among self-evaluating types.
760 (let): New core form.
761 (if): Removed from core language.
762 (or, and, let, cond): Removed syntactic definitions.
763 (sc-expand3): New procedure: Expander which takes optional mode
764 and eval-syntactic-expanders-when arguments.
765
766 * syncase.scm (psyncomp): New procedure: Recompiles psyntax.pp.
767 Should be used inside the (ice-9 syncase) module with (use-syntax
768 syncase) and with the current directory containing the psyntax.ss
769 source.
770 Added hack to transfer syntactic information from the builtin
771 variable `define' to the slib version if module (ice-9 slib) has
772 been loaded.
773
774Fri Sep 5 05:47:36 1997 Mikael Djurfeldt <mdj@faun.nada.kth.se>
775
776 * syncase.scm (sc-interface, sc-expand): Removed hook setup.
777 (syncase): Publish syntax transformer to be used with
778 `use-syntax'.
779 (sc-macro): Use this as the value when publishing macros.
780
781 * boot-9.scm (module-type): Added `transformer'.
782 (make-module): Modified initialization.
783 (module-transformer, set-module-transformer!): Selector and
784 mutator for module-associated transformer.
785 (set-current-module): Use module-transformer to set
786 `scm:eval-transformer'.
787 (module-use!): Previous change reverted.
f4be1689 788 (use-syntax): New function: Install a transformer in current
7a0ff2f8
MD
789 module.
790 (sc-interface, sc-expand): Removed! :)
791
d43f8c97
MD
792Fri Sep 5 03:09:09 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
793
794 * emacs.scm (emacs-load): Added new parameter `module'.
795
796 * syncase.scm (putprop, getprop): Modified to use the object
797 properties of the variable object corresponding to the symbol;
798 This way we can ride on the mechanisms of the module system.
799 Changed `builtin-variable' calls to `define-public' calls.
800 Setup the hooks sc-expand and sc-interface.
801
802 * boot-9.scm (sc-interface, sc-expand): New builtin variables.
803 (set-current-module): Switch to and from sc-expand as
804 scm:eval-transformer when going into and out of modules using
805 syncase macros.
806 (module-use!): Set scm:eval-transformer to sc-expand when adding
807 the syncase interface.
808
1f355b4f
MD
809Thu Sep 4 14:57:04 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
810
811 * syncase.scm (putprop): Temporary fix which publishes new syntax
812 globally (the old behaviour was complex and connected to the inner
813 workings of the current module system).
814
e9b7bb80
MD
815Wed Sep 3 21:29:13 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
816
817 * psyntax.ss: Updated.
818 psyntax.pp: Bugfix: Previous version had some leading "t":s cut
819 off!
820
e672f1b5
MD
821Tue Sep 2 00:26:42 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
822
823 * boot-9.scm (gensym): Removed (replaced by primitive).
824 (obarray-gensym): Rewritten to use `gensym'.
825 (gentemp): Rewritten to use `gensym'.
826
30d732a6
MD
827Mon Sep 1 20:08:32 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
828
829 * gtcl.scm (make-tcl-binder): Rewritten to choose bindings
830 according to the following priorities:
831 1. tcl bindings which are present in override-scheme-list
832 2. bindings from the-scm-module
833 3. tcl bindings
834 This way the gtcl module can occur first in the use-list without
835 disabling the scheme interpreter.
836 (new-interpreter): New function.
837
838 * gwish.scm: Moved initialization code for the-interpreter to
839 gtcl.scm; Moved name space cleaning code to gtcl.scm and rewrote
840 it; Call `new-interpreter'; Don't :use-module (guile).
841
1aa8162b
JB
842Thu Aug 28 23:48:53 1997 Jim Blandy <jimb@totoro.red-bean.com>
843
844 * Makefile.in: Regenerated.
845
34695603
JB
846Wed Aug 27 11:35:09 1997 Jim Blandy <jimb@totoro.red-bean.com>
847
848 * Makefile.in: Regenerated, so it uses "tar", not "gtar".
849
52f1b046
MD
850Mon Aug 25 22:00:44 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
851
852 * emacs.scm (object->string, format, error-args->string): New
853 procedures.
854 (emacs-frame-eval): Reworked.
855
a5be27cd
MD
856Mon Aug 25 16:15:55 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
857
858 * session.scm (apropos-internal): Musn't initialize symbol
859 accumulator with a constant pair. That led to mutation of the
860 source!
861
68aed3ea
MD
862Sun Aug 24 01:03:10 1997 Mikael Djurfeldt <mdj@kenneth>
863
864 * session.scm (vector-for-each): Removed.
865 (apropos): vector-for-each --> array-for-each.
866 (apropos-internal): New function. Return list of accessible
867 symbols matching regexp.
868
869 * debug.scm (frame-number->index): New function. Convert frame
870 number (as displayed in the backtrace) to frame index (to be used
871 in stack-ref).
872
873 * emacs.scm (emacs-load): New arguments: interactivep: when
874 non-false, send back results to Emacs; colnum: Column number;
875 Use modules (ice-9 debug) and (ice-9 session);
876 (no-stack, no-source): New simple-actions;
877 (result-to-emacs): New procedure. Sends data to Emacs via the
878 result protocol;
879 (get-frame-source, emacs-select-frame, emacs-frame-eval,
880 emacs-symdoc): New procedures.
8c5a8bed 881
555f21d8
MD
882Wed Aug 20 13:21:11 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
883
eb7ec1e8 884 * emacs.scm (emacs-load): Adjust stack narrowing.
8c3420ad 885 (whitespace-chars): Include #\np.
eb7ec1e8 886
555f21d8
MD
887 * syncase.scm: Also turn off debugging evaluator and recording of
888 procedure names during loading of psyntax.pp.
889
890 * psyntax.pp: Removed leading blanks => 800K -> 100K.
891
230c4353
MD
892Tue Aug 19 02:39:41 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
893
19ef2a9b
MD
894 * syncase.scm: Don't tamper with debug mode setting when enabling
895 macros. Instead cut the stack with start-stack.
a48930c6 896 Load psyntax.pp with recording of positions turned off.
19ef2a9b 897
ceb177a4 898 * psyntax.pp, psyntax.ss (quasiquote): Changed fx= --> =.
230c4353 899
f4be1689
JB
900 * syncase.scm: New file: Guile-adaption for syntax-case macros.
901 * psyntax.pp, psyntax.ss: Syntax-case macros, portable version 2 by
230c4353
MD
902 R. Kent Dybvig, Oscar Waddell, Bob Hieb and Carl Bruggeman
903
0e81dabd
MD
904Mon Aug 18 21:58:25 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
905
f4be1689 906 * session.scm: New file: Session support.
0e81dabd
MD
907 (apropos): New procedure: List bindings given regexp.
908
6afcd3b2
GH
909Sat Aug 16 18:44:24 1997 Gary Houston <ghouston@actrix.gen.nz>
910
911 * boot-9.scm: define tms accessors: clock, utime, stime, cutime,
912 cstime.
913
096d5f90
MD
914Thu Aug 14 19:55:37 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
915
db75135d
MD
916 * emacs.scm (emacs-load): Something has changed in the reader so
917 that we now should set the port line count to the specified value
918 (linum) instead of (- linum 1).
919
096d5f90
MD
920 * slib.scm (slib:load): Use load-from-path instead of
921 primitive-load-path so that backtraces get narrowed properly at
922 the top.
923
924 * boot-9.scm (top-repl): Save stack already in signal handler in
925 order to narrow it correctly.
926 (save-stack): Adjust narrowing tag for the top of load-stacks.
927
7a6f1ffa
GH
928Tue Jul 29 01:18:08 1997 Gary Houston <ghouston@actrix.gen.nz>
929
930 * boot-9.scm (move->fdes, dup->port): use dup->fdes, not primitive-dup.
931 (dup->fdes): deleted, now done in C.
932
956055a9
GH
933Sat Jul 26 08:00:42 1997 Gary Houston <ghouston@actrix.gen.nz>
934
935 * boot-9.scm (setenv): new procedure, scsh compatible.
936
485cb6eb
MV
937Sat Jul 26 21:30:10 1997 Marius Vollmer <mvo@zagadka.ping.de>
938
939 * boot-9.scm (with-fluids): New macro to go with the
940 builtin `with-fluids*'.
941
4d0d7ef9
MD
942Thu Jul 24 04:28:11 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
943
944 * slib.scm (install-require-module): In newer versions of slib
945 *catalog* is #f until the first access. Therefore we call
946 require:provided? for a random feature if *catalog* is #f.
947
8309a10d
MD
948Wed Jul 23 20:13:04 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
949
950 * boot-9.scm: If using emacs interface, enable backtraces
951 automatically.
952
e38303a2
GH
953Mon Jul 21 06:45:45 1997 Gary Houston <ghouston@actrix.gen.nz>
954
955 * boot-9.scm (dup->port, dup->inport, dup->outport, dup->fdes,
956 dup, fdes->inport, fdes->outport, port->fdes): new procedures.
957 (duplicate-port): was a C primitive, now it's here.
958 (move->fdes): allow the first argument to be a file descriptor.
959 Return the modified port or file descriptor (was unspecified.)
960
2e3e9351
JB
961Fri Jul 11 00:13:43 1997 Jim Blandy <jimb@floss.red-bean.com>
962
32552d73
JB
963 Changes to compile under gnu-win32, from Marcus Daniels:
964 * boot-9.scm (load-user-init): If HOME is unset, provide
965 a default of /.
966
2e3e9351
JB
967 * boot-9.scm (define-public): Changed to accomodate Hobbit.
968
db561408
JB
969Tue Jun 24 00:31:47 1997 Jim Blandy <jimb@floss.red-bean.com>
970
fcff2c5c
JB
971 * boot-9.scm, debug.scm, hcons.scm, lineio.scm, mapping.scm,
972 poe.scm, slib.scm, tags.scm, threads.scm: Use normal list
973 notation, instead of #/ notation.
974
db561408
JB
975 * expect.scm (expect-strings): Pass regexp/newline flag to
976 make-regexp.
977
2409cdfa
JB
978Mon Jun 23 16:13:38 1997 Jim Blandy <jimb@floss.red-bean.com>
979
db561408
JB
980 Fix inconsistencies in parsing of #/ style lists.
981 * boot-9.scm (read-path-list-notation): New function.
982 (parse-path-symbol): Deleted. Replaced by above.
983 Plug in read-path-list-notation as the parser for #/ lists,
984 instead of the anonymous lambda form calling parse-path-symbol.
985 (Thanks to Maurizio Vitale.)
986
2409cdfa
JB
987 * boot-9.scm (make-list): Remove the definition of this function
988 from the (ice-9 common-list) module; make the `init' argument
989 optional in the scm module's definition, to match the deleted
990 definition. Harmony reigneth? (Thanks to Bernard URBAN.)
991
91b28bb5
JB
992Sun Jun 22 18:33:17 1997 Jim Blandy <jimb@floss.red-bean.com>
993
994 Try to detect when people are using one version of libguile and a
995 different version of ice-9. People have been skewing things and
996 sending in bug reports.
997 * version.scm.in: New file, which the configure script munges to
998 produce version.scm, which contains the ice-9 config stamp.
999 * boot-9.scm: Compare the libguile and ice-9 config stamps;
1000 display a warning if the two are different.
1001 * Makefile.am: Install version.scm, but don't distribute it.
1002 Distribute version.scm.in, but don't install it.
1003 * Makefile.in: Regenerated.
1004
9fbdb48f
JB
1005Thu Jun 19 21:01:16 1997 Jim Blandy <jimb@floss.red-bean.com>
1006
1007 * slib.scm (slib:warn): Alias for WARN function.
1008
e320da2f
JB
1009Fri Jun 13 00:32:04 1997 Jim Blandy <jimb@floss.red-bean.com>
1010
1011 * boot-9.scm (struct-printer): Fix off-by-one error in range
1012 check. Correctly check for struct printer tag.
1013
1014 * expect.scm: Turn this into a module, (ice-9 expect).
1015 (expect-port, expect-timeout, expect-timeout-proc,
1016 expect-eof-proc, expect-char-proc, expect, expect-strings,
1017 expect-select): Make these public definitions.
1018 (expect-strings): Use make-regexp and regexp-exec, instead of
1019 regcomp and regexec. We've omitted the REG_NEWLINE flag; hope
1020 that's okay.
1021
1022 * boot-9.scm (with-regexp-parts): Comment this out. It has no
1023 users in the core, and relies on mildly hairy details of the old
1024 regexp interface.
1025
1026 * test.scm: Re-enable tests asserting that '() is true, and not a
1027 boolean. This stuff has been true for a while.
1028
1029 * boot-9.scm (ipow-by-squaring, butlast): Fix uses of outdated
1030 function names.
1031
1032 * boot-9.scm (with-excursion-getter-and-setter, q-rear): Doc
1033 fixes.
1034
3688473b
JB
1035Wed Jun 11 00:31:40 1997 Jim Blandy <jimb@floss.red-bean.com>
1036
1037 * Makefile.in: Regenerated after xtra_PLUGIN_guile_libs change in
1038 ../configure.in.
1039
0b46857f
MV
1040Fri Jun 6 14:37:18 1997 Marius Vollmer <mvo@zagadka.ping.de>
1041
1042 * boot-9.scm (struct-printer): Bugfix: Check the layout of the
1043 vtable and not the one of the struct.
1044
5dade857
MV
1045Wed Jun 4 23:27:16 1997 Marius Vollmer <mvo@zagadka.ping.de>
1046
1047 * boot-9.scm (struct-layout, %struct-printer-tag, struct-printer,
1048 make-struct-printer, set-struct-printer-in-vtable!): New bindings
1049 to support printing of structures.
1050 (record-type-vtable, make-record-type): Add slot to hold printing
1051 function and initialize it with something appropriate. Removed
1052 commented out printing code.
1053 (record-type-name, record-type-fields): Adjusted slot offsets.
1054 (%print-module): Reduce argument list to "mod" and "port".
1055
95d59d10
JB
1056Tue Jun 3 17:04:18 1997 Jim Blandy <jimb@totoro.cyclic.com>
1057
1058 * slib.scm (identity): New function, used by SLIB.
1059
e1a191a8
GH
1060Sat May 31 18:57:12 1997 Gary Houston <ghouston@actrix.gen.nz>
1061
1062 * boot-9.scm: signal-handler, alarm-thunk: removed.
1063 don't define ticks-interrupt etc.
1064 top-repl: install signal handlers for SIGINT, SIGFPE, SIGSEGV, SIGBUS
1065 during call to scm-style-repl.
1066
19da35d0
JB
1067Fri May 30 18:08:10 1997 Jim Blandy <jimb@floss.cyclic.com>
1068
1069 * slib.scm (slib:load): Use primitive-load-path instead of
1070 basic-load. This is probably wrong, but hopefully the entire
1071 source access system will be revised soon anyway, and this will
1072 make require behave more like Emacs Lisp's require. If this
1073 breaks something, please let me know. Maybe this is real dumb.
1074
0e165281
JB
1075Thu May 29 02:36:48 1997 Jim Blandy <jimb@floss.cyclic.com>
1076
1077 * regex.scm: Add a module declaration. Use DEFINE-PUBLIC everywhere.
1078 * boot-9.scm: If the `regex' feature is present, use the module
1079 (ice-9 regex).
1080
737c9113
JB
1081Tue May 27 22:48:14 1997 Tim Pierce <twp@twp.tezcat.com>
1082
1083 * regex.scm: New file.
1084 * Makefile.am (subpkgdata_DATA): Add regex.scm.
1085 * Makefile.in: Regenerated.
1086
36539a15
JB
1087Mon May 26 17:24:48 1997 Jim Blandy <jimb@totoro.cyclic.com>
1088
1089 * COPYING, boot-9.scm, debug.scm, emacs.scm, expect.scm, gtcl.scm,
1090 gwish.scm, hcons.scm, lineio.scm, mapping.scm, nonblocking.scm,
1091 oldprint.scm, poe.scm, r4rs.scm, source.scm, tags.scm, test.scm,
1092 threads.scm: New address for FSF.
1093
142ad3d9
JB
1094Fri May 16 04:09:45 1997 Jim Blandy <jimb@floss.cyclic.com>
1095
1096 * debug.scm: Update copyright years; this file has been worked on
36539a15 1097 in 1997.
142ad3d9 1098
cafa4c68
GH
1099Thu May 15 07:56:08 1997 Gary Houston <ghouston@actrix.gen.nz>
1100
1101 * expect.scm: use gettimeofday instead of get-internal-real-time
1102 and use a floating point timeout when calling select. Untested,
1103 since the regex library is currently AWOL.
1104
223be5f0
JB
1105Wed May 14 21:00:30 1997 Jim Blandy <jimb@floss.cyclic.com>
1106
1107 * boot-9.scm (eval-string): Function deleted; it was already
1108 implemented in C, so there's no point in making a divergable copy
1109 here.
1110
9b01064c
JB
1111Tue May 13 16:40:06 1997 Jim Blandy <jimb@floss.cyclic.com>
1112
1113 * Makefile.in: Regenerated, using automake-1.1p.
1114
1115Tue May 13 16:40:06 1997 Jim Blandy <jimb@floss.cyclic.com>
1116
1117 * Makefile.in: Regenerated, using automake-1.1p.
1118
1fbc60b2
GH
1119Tue May 13 02:48:49 1997 Gary Houston <ghouston@actrix.gen.nz>
1120
1121 * boot-9.scm (error-catching-loop): don't read a line from
1122 current input when quit is encountered, the previous change
1123 fixes this too.
1124
c7d97590
JB
1125Mon May 12 19:00:21 1997 Jim Blandy <jimb@floss.cyclic.com>
1126
1127 * boot-9.scm (scm-style-repl): After reading an expression,
1128 consume any trailing newline (perhaps preceded by whitespace), to
1129 avoid screwing up GDB. More detail in comments.
1130
6b3f3366
JB
1131Mon May 5 13:18:38 1997 Jim Blandy <jimb@floss.cyclic.com>
1132
1133 * Makefile.am (ETAGS_ARGS): New variable, since we're not treating
1134 the Scheme code like code yet.
1135 * Makefile.in: Resrac,husrched.
1136
eea324ee
MV
1137Wed Apr 30 15:25:15 1997 Marius Vollmer <mvo@zagadka.ping.de>
1138
1139 * boot-9.scm (link-dynamic-module): Do not catch errors from
1140 dynamic-link and dynamic-call. When the shared library exists it
1141 is now assumed to be suitable for a dynamic C module.
1142
ef79b65b
MV
1143Fri Apr 25 21:21:35 1997 Marius Vollmer <mvo@zagadka.ping.de>
1144
1145 * boot-9.scm (process-use-modules): New function to support the
1146 use-modules macro
1147 (use-modules): throw an error iff one of the requested modules
1148 can't be found.
1149
3be77013
GH
1150Tue Apr 29 06:54:46 1997 Gary Houston <ghouston@actrix.gen.nz>
1151
1152 * boot-9.scm: don't define timer-thunk or gc-thunk.
1153
28c682fa
JB
1154Sun Apr 27 17:56:09 1997 Jim Blandy <jimb@floss.cyclic.com>
1155
1156 * aclocal.m4: Removed; unnecessary, given changes of Apr 24.
1157
1158 * Makefile.am (subpkgdatadir): Use "ice-9" instead of "@module@";
1159 we're not using AM_INIT_GUILE_MODULE any more.
1160 * Makefile.in: Regeneratitetedrerd.
1161
20108301
JB
1162Thu Apr 24 01:33:33 1997 Jim Blandy <jimb@floss.cyclic.com>
1163
819f936b
JB
1164 Get 'make dist' to work again.
1165 * Makefile.am (EXTRA_DIST): Remove PLUGIN files.
1166 * Makefile.in: Regenerated, like two tons of fleas.
1167
20108301
JB
1168 Changes for reduced Guile distribution: one configure script,
1169 no plugins.
1170 * configure.in, configure: Removed.
1171 * Makefile.in: Regenerated.
1172
dab94cac
JB
1173Sat Apr 19 08:03:50 1997 Jim Blandy <jimb@floss.cyclic.com>
1174
48d224d7 1175 * boot-9.scm (eval-string, command-line, load-user-init): New
dab94cac
JB
1176 functions.
1177
65495221
GH
1178Sat Apr 12 08:27:05 1997 Gary Houston <ghouston@actrix.gen.nz>
1179
1180 * boot-9.scm (log10): defined.
1181
708bf0f3
GH
1182Tue Apr 1 17:46:49 1997 Gary Houston <ghouston@actrix.gen.nz>
1183
1184 * expect.scm (expect-select): correct the millisecond timeout
1185 arithmetic (from Marko.Kohtala@ntc.nokia.com).
1186
1187Mon Mar 31 03:23:19 1997 Gary Houston <ghouston@actrix.gen.nz>
1188
1189 * boot-9.scm (open-input-pipe, open-output-pipe): defined here
1190 instead of in libguile.
1191 (tm:sec etc.) new accessors for broken-down time.
1192 (set-tm:sec etc.) new setters for broken-down time.
1193
9337637f
GH
1194Thu Mar 27 05:06:00 1997 Gary Houston <ghouston@actrix.gen.nz>
1195
1196 * boot-9.scm (netent:addrtype, servent:port): added missing
1197 procedures.
1198 (netent:net, servent:proto): repaired.
1199 (utsname:sysname etc.): new accessors for uname.
1200
1201Tue Mar 25 03:04:03 1997 Gary Houston <ghouston@actrix.gen.nz>
1202
1203 * boot-9.scm (sockaddr:fam, sockaddr:path, sockaddr:addr,
1204 sockaddr:port): new functions.
1205
bce074ee
GH
1206Wed Mar 19 04:50:34 1997 Gary Houston <ghouston@actrix.gen.nz>
1207
1208 * boot-9.scm: define accessor procedures for the objects returned
1209 by getpw, getgr, gethost, getnet, getproto, getserv (e.g.,
1210 passwd:name, where the first component is the name of the C structure
1211 and the second is the unprefixed C member name.)
1212
1213Tue Mar 18 18:39:31 1997 Gary Houston <ghouston@actrix.gen.nz>
1214
095936d2 1215 * boot-9.scm (setpwent, setgrent, sethostent, setnetent, setprotoent,
bce074ee
GH
1216 setservent): no longer take an argument, it was bogus.
1217
81e2a235
GH
1218Thu Mar 13 00:13:41 1997 Gary Houston <ghouston@actrix.gen.nz>
1219
1220 * boot-9.scm (scm-error): deleted, reimplemented in C.
1221
04798288
MD
1222Mon Mar 10 15:48:31 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1223
1224 * boot-9.scm (process-define-module): Modified to handle both
1225 keywords and symbols.
1226
75a97b92
GH
1227Sat Mar 8 04:32:44 1997 Gary Houston <ghouston@actrix.gen.nz>
1228
1229 * slib.scm: update read usage.
1230
1231 * r4rs.scm: update primitive-load usage.
1232 Don't define read-sharp.
1233
1234 * boot-9.scm: use read-hash-extend to install extra read syntax.
1235 (read-sharp): removed.
1236 Adjust usage of primitive-load-path, read, which no longer take
1237 case_i or read-sharp arguments.
1238
63a3d814
MD
1239Sat Mar 8 00:07:54 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1240
90d5e280
MD
1241 * boot-9.scm: Added loading of session support module.
1242
63a3d814
MD
1243 * debug.scm: Removed `display-application'. (Replaced by
1244 primitive procedure.)
1245
1246 * boot-9.scm (beautify-user-module!): Don't add the root module
1247 interface to the end of the use-list of the root module.
1248
75a97b92
GH
1249Thu Mar 6 07:26:34 1997 Gary Houston <ghouston@actrix.gen.nz>
1250
1251 * boot-9.scm: repl-quit, repl-abort: obsolete variables deleted.
1252
f3c23298
GH
1253Wed Mar 5 20:30:24 1997 Gary Houston <ghouston@actrix.gen.nz>
1254
1255 * boot-9.scm: check use-emacs-interface for emacs support.
1256
7950df7c
GH
1257Sun Mar 2 19:47:14 1997 Gary Houston <ghouston@actrix.gen.nz>
1258
1259 * boot-9.scm (scm-style-repl): call repl-report-start-timing if
1260 read gets EOF.
1261 * (exit): alias for quit.
1262
8e44e7a0
GH
1263Sun Mar 2 05:25:11 1997 Gary Houston <ghouston@actrix.gen.nz>
1264
1265 * boot-9.scm (error-catching-loop thunk): use a status variable to
1266 return the quit args.
1267 (scm-style-repl): call -quit, passing return value from
1268 error-catching-repl. Make -quit return its args.
1a36eef2 1269 stand-alone-repl: comment out, since it seems unused.
7950df7c 1270
8e44e7a0
GH
1271 (error-catching-loop thunk): discard trailing junk after a (quit).
1272
9a942103
MD
1273Sat Mar 1 15:24:39 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1274
06a02069
MD
1275 * boot-9.scm: Removed the old printer code.
1276
1277 * r4rs.scm (apply, call-with-current-continuation): Added comment
1278 explaining why apply and call/cc need to be closures.
1279
1280 * boot-9.scm (apply, call-with-current-continuation): Bugfix:
1281 Removed. These definitions are already present in r4rs.scm.
1282
9a942103
MD
1283 * debug.scm (trace-entry, trace-exit): Check that we're on a repl
1284 stack before printing traced frames; Re-enable trace flag at end
1285 of handlers.
1286
e6875011
MD
1287Sat Mar 1 00:10:38 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1288
59e1116d
MD
1289 * debug.scm: Add hook for reset of trace level at abort.
1290
1291 * boot-9.scm (run-hooks): New procedure.
1292 (add-hooks!): New macro.
1293 Change hooks to use these functions.
1294
095936d2 1295 * debug.scm: *Warning* This feature is a bit premature. I add
e6875011
MD
1296 it anyway because 1. it is very useful, and, 2. you can start
1297 making it less premature by complaining to me and by modifying
1298 the source! :-)
1299 (trace): Given one or more procedure objects, trace each one.
1300 Given no arguments, show all traced procedures.
1301 (untrace): Given one or more procedure objects, untrace each one.
1302 Given no arguments, untrace all traced procedures. The tracing in
1303 Guile have an advantage to most other systems: We don't create new
1304 procedure objects, but mark the procedure objects themselves.
1305 This means that also anonymous and internal procedures can be
1306 traced.
1307
1308 * boot-9.scm (error-catching-loop): Added handling of apply-frame
1309 and exit-frame exceptions.
1310
095936d2 1311 * boot-9.scm (assert-repl-prompt, the-prompt-string): Removed.
e6875011
MD
1312 (set-repl-prompt!): Setter for repl prompt.
1313 (scm-style-repl): If prompt is #f, don't prompt; if prompt is a
1314 string, display it; if prompt is a thunk, call it and display its
1315 result; otherwise display "> ".
1316 (Change suggested by Roland Orre <orre@nada.kth.se>.)
0065d90e
MD
1317
1318 * r4rs.scm (%load-verbosely): Reverted change to
1319 `module-defined?', since the module system isn't bootstrapped when
1320 we load r4rs.scm. This is just a temporary fix to make the
1321 repository version runnable.
1322
eb52a06b
MD
1323Thu Feb 27 23:25:47 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1324
1325 * boot-9.scm: Removed the enabling of debug evaluator and
1326 recording of source code positions. This was placed there for our
1327 convenience, but it has already sneaked into the distribution
1328 once... so we'd better add this in our local copies instead when
1329 we need it. (These options are normally enabled at the end of
1330 boot-9.scm when loading the debug module.)
1331
d18d1b6d
MV
1332Thu Feb 27 16:04:45 1997 Marius Vollmer <mvo@zagadka.ping.de>
1333
1334 * boot-9.scm (module-defined?): New function.
1335 (macroexpand-1, macroexpand): Use local-ref instead of defined?
1336 and eval.
1337 * r4rs.scm (%load-verbosely): Use "module-defined?" instead of
1338 "defined?".
1339 * slib.scm (defined?): New function to take the place of the
1340 builtin "defined?". It allways examines the slib module.
1341
15ae1bee
MD
1342Mon Feb 24 21:46:15 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1343
1344 * configure.in: Added AM_MAINTAINER_MODE
1345
c2132276
GH
1346Sat Feb 15 04:51:20 1997 Gary Houston <ghouston@actrix.gen.nz>
1347
1348 * boot-9.scm (read-sharp): define directly, don't go through a
1349 %read-sharp layer.
1350
1351Tue Feb 11 08:45:48 1997 Gary Houston <ghouston@actrix.gen.nz>
1352
1353 * boot-9.scm (uniform-vector-set!): use uniform-array-set1!, not
1354 uniform-vector-set1! which doesn't exist.
1355
d590bbf6
MD
1356Mon Feb 10 03:01:48 1997 Mikael Djurfeldt <mdj@kenneth>
1357
1358 * boot-9.scm (backtrace): Removed. (A C version now exists in
1359 backtrace.c.)
1360
1e531c3a
GH
1361Fri Jan 24 06:05:36 1997 Gary Houston <ghouston@actrix.gen.nz>
1362
1363 * boot-9.scm (read-line!, read-delimited!, read-delimited,
1364 read-line): new procedures, see libguile/ChangeLog.
1365
bb0102f7
MV
1366Thu Jan 16 17:07:03 1997 Marius Vollmer <mvo@zagadka.ping.de>
1367
1368 Added dynamic linking of modules. See libguile/DYNAMIC-LINKING.
1369
1370 * boot-9.scm (split-c-module-name, convert-c-registered-modules,
1371 init-dynamic-module, dynamic-maybe-call,
1372 find-and-link-dynamic-module, link-dynamic-module,
1373 try-module-dynamic-link, registered-modules): New definitions for
1374 dynamic linking of modules.
1375 (resolve-module): Try to dynamically link the requested module
1376 after failing to load it as Scheme code.
1377
920235cc
GH
1378Wed Jan 8 05:50:14 1997 Gary Houston <ghouston@actrix.gen.nz>
1379
1380 * boot-9.scm (getservbyport, getservbyname): remove stray %.
1381
198befde
JB
1382Tue Jan 7 20:02:24 1997 Jim Blandy <jimb@floss.cyclic.com>
1383
1384 * boot-9.scm (and=>): Rename THUNK argument to PROCEDURE, 'cos
1385 that's what it is.
1386
1387 * lineio.scm (make-line-buffering-input-port): Properly test for
1388 the case of an empty buffer list. The old code assumed that '()
1389 was false.
1390
33cf699f
MD
1391Mon Jan 6 01:13:53 1997 Mikael Djurfeldt <mdj@kenneth>
1392
095936d2 1393 * boot-9.scm (use-modules): New macro (from Marius Vollmer).
33cf699f
MD
1394 (use-modules <module name> ...) Put the the modules named by
1395 <module name> ... on the use list of the current module.
1396
7a818853
JB
1397Sun Jan 5 15:52:59 1997 Jim Blandy <jimb@floss.cyclic.com>
1398
1399 * boot-9.scm (error-catching-loop): Remove message saying that
1400 typing "$" will put you in the debugger. This isn't implemented
1401 yet.
1402
506067f0
JB
1403Sun Dec 22 23:27:25 1996 Jim Blandy <jimb@floss.cyclic.com>
1404
1405 * boot-9.scm (delq-all!): Function deleted; delq!'s semantics have
1406 been fixed, so this function is superfluous.
1407 (transform-usage-lambda): Use delq!, not delq-all!.
1408
2ebf3156
MV
1409Tue Dec 17 20:36:45 1996 Marius Vollmer <mvo@zagadka.ping.de>
1410
7a818853 1411 * boot-9.scm (resolve-module): New optional parameter that
2ebf3156
MV
1412 controls whether autoloading is attempted or not. Default is #t.
1413 (process-define-module): Don't autoload the defined module.
1414 (try-module-autoload): Don't autoload the directory modules.
1415
7a818853 1416 * boot-9.scm (process-define-module): Ensure that the-scm-module
2ebf3156
MV
1417 is last in the `uses' list to allow shadowing builtin
1418 bindings. All :use-module options are added in the order they
1419 appear in the arguments but before anything already on the list
1420 (such as the-scm-module).
1421
00f06035
GH
1422Wed Dec 11 21:06:05 1996 Gary Houston <ghouston@actrix.gen.nz>
1423
1424 * slib.scm (slib-parent-dir): throw error if #f returned from
1425 %search-load-path.
1426
733943b9
TT
1427Sat Nov 30 23:57:28 1996 Tom Tromey <tromey@cygnus.com>
1428
1429 * PLUGIN/greet, PLUGIN/split.sed, PLUGIN/this.configure: Removed.
1430 * Makefile.am, aclocal.m4: New files.
1431 * configure.in: Updated for Automake.
1432
84abd243
MV
1433Wed Nov 27 14:16:14 1996 Marius Vollmer <mvo@zagadka.ping.de>
1434
1435 * boot-9.scm (macroexpand-1, macroexpand), slib.scm
1436 (slib:features), r4rs.scm (%load-verbosely): "defined?" is now a
1437 function, use it accordingly.
1438
a31bc6fb
JB
1439Thu Nov 21 11:12:10 1996 Jim Blandy <jimb@floss.cyclic.com>
1440
1441 It's an "eval closure", not an "eval thunk." A thunk is a
1442 function of no arguments.
1443 * boot-9.scm (module-type): Rename module field.
1444 (make-module, eval-in-module, make-root-module,
1445 set-current-module): Uses changed.
1446 (module-eval-closure, set-module-eval-closure!,
1447 root-module-closure): Renamed from module-eval-thunk,
1448 set-module-eval-thunk!, root-module-thunk.
1449 (set-current-module): Change uses of *top-level-lookup-thunk* to
1450 *top-level-eval-closure*.
1451
3763761c
JB
1452Wed Nov 20 14:45:27 1996 Jim Blandy <jimb@totoro.cyclic.com>
1453
1454 * slib.scm (slib-parent-dir): Use string-length, not length.
1455 (Thanks to Bernard Urban.)
1456
7ad737b6
MD
1457Sat Nov 2 20:00:42 1996 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1458
7a818853 1459 * boot-9.scm: The debugging evaluator and recording of positions
7ad737b6
MD
1460 aren't enabled by default any longer (they are switched on in
1461 debug.scm). But during development we want to have them also
1462 *inside* boot-9.scm. Therefore, two lines are added at the
1463 beginning of boot-9.scm to enable these.
1464
1465 Call `provide' so that `records' are included among the
1466 `*features*'.
1467
1468 The scheme for saving the stack has been adjusted: save-stack is
1469 now commonly available for saving the stack. Calling `save-stack'
1470 sets a flag `stack-saved?' which prevents overwriting the stack.
1471 `stack-saved?' is reset at `abort'.
1472
1473 Spelling correction: seperate --> separate.
1474
1475 Removed `:'s that had creeped into some comments.
1476
7a818853 1477 The repl now doesn't print #<unspecified> results any longer
7ad737b6
MD
1478 If the user wants to see this, he can do
1479 (assert-repl-print-unspecified #t) in his startup file.
1480
7a818853 1481 The user now gets a friendly message instead of a backtrace at
7ad737b6
MD
1482 error.
1483
1484 Added `before-read-hook'.
1485
1486 Load module (ice-9 emacs) if option `-e' was specified.
1487
1488 (provide): New function.
1489
1490 (error): Save stack at entry, so that Guile entrails won't show up
1491 in backtraces.
1492
1493 (backtrace): New function.
1494
7a818853 1495 (save-stack): Can now take arbitrary number of stack narrowing
7ad737b6
MD
1496 specifier pairs. The first specifier in a pair controls inner
1497 border, the second the outer border. A number means cut that
1498 number of frames, a procedure object means cut until that object
1499 is found in operator position in a frame.
1500
1501 * debug.scm: Enable debugging evaluator and recording of positions
1502 by default.
1503
1504 * slib.scm (slib:load): Adapt to the new behavior of
1505 primitive-load: It doesn't any longer try both with and without
1506 ".scm" extension. (We don't want to use %search-load-path here.)
1507
1508 (implementation-vicinity): New function. slib requires it
1509
1510 (library-vicinity): Updated.
1511
1512 Load "require.scm" in the library-vicinity.
1513
1514 (install-require-vicinity, install-require-module): New functions.
1515
99f97bfe
JB
1516Mon Oct 28 17:56:29 1996 Jim Blandy <jimb@floss.cyclic.com>
1517
581a242b
JB
1518 * boot-9.scm (load-from-path): New function.
1519
1520 * boot-9.scm (try-load, basic-try-load, try-load-module,
1521 try-load): Deleted. I don't think they're being used.
1522
48be3fb3
JB
1523 * Makefile.in (scm_files): Add r4rs.scm and test.scm to this list,
1524 so they'll get distributed.
1525
1526 Get Guile to be a little less chatty by default. The new user
1527 should see as little clutter as possible.
1528 * r4rs.scm (%load-verbosely): Make this #f by default.
1529 * boot-9.scm (scm-repl-verbose): Make this #f by default.
1530 (scm-style-repl): Don't run 'pk' on the value passed to quit.
1531
1532 * r4rs.scm: New file.
1533 * boot-9.scm: Load r4rs.scm, first thing.
1534 (OPEN_READ, OPEN_WRITE, OPEN_BOTH, *null-device*, open-input-file,
1535 open-output-file, open-io-file, close-input-port,
1536 close-output-port, close-io-port, call-with-input-file,
1537 call-with-output-file, with-input-from-port, with-output-to-port,
1538 with-error-to-port, with-input-from-file, with-output-to-file,
1539 with-error-to-file, with-input-from-string, with-output-to-string,
1540 with-error-to-string, the-eof-object): Definitions moved to
1541 r4rs.scm. Not all of them are R4RS, but those that are use those
1542 that are not.
1543 (load, %load-verbosely, %load-announce): Moved, along with code to
1544 set %load-hook, to r4rs.scm.
1545
1546 * test.scm: New file.
1547
1548 * boot-9.scm (integer?): Definition deleted, in favor of the one
1549 present in libguile (which used to be called int?). I have no
1550 idea why integer? didn't just call int? to begin with.
1551
1552 * boot-9.scm (<, <=, =, >, >=): Definitions in terms of <?, <=?,
1553 =?, >?, and >=? deleted; they're defined that way by libguile now.
1554
99f97bfe
JB
1555 * boot-9.scm (load): Simplified; primitive-load does most of this
1556 work now.
1557 (%load-announce-win): Removed; no longer used. Set %load-hook to
1558 call %load-announce.
1559
3afb28ce
GH
1560Sun Oct 27 07:47:03 1996 Gary Houston <ghouston@actrix.gen.nz>
1561
4fe3604d
JB
1562 * boot-9.scm (stat:dev, stat:ino, stat:mode, stat:nlink, stat:uid,
1563 stat:gid, stat:rdev, stat:size, stat:atime, stat:mtime,
1564 stat:ctime, stat:blksize, stat:blocks) accessor functions for stat
1565 components.
3afb28ce
GH
1566 (file-is-directory?): use stat:type.
1567
3065a62a
JB
1568Fri Oct 25 03:34:47 1996 Jim Blandy <jimb@floss.cyclic.com>
1569
1570 * boot-9.scm (%read-sharp): Don't recognize the `#!' syntax here;
1571 that's now taken care of in libguile, and in a way compatible with
1572 SCSH (which this isn't).
1573
e4c5095f
JB
1574Mon Oct 21 18:52:36 1996 Jim Blandy <jimb@totoro.cyclic.com>
1575
1576 * boot-9.scm: Formatting tweaks.
1577
1bb961a3
MD
1578Fri Oct 18 01:03:08 1996 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
1579
1580 * boot-9.scm (handle-system-error): Added hooks before-error-hook,
1581 after-error-hook, before-backtrace-hook and after-backtrace-hook
1582 to the error handler. E.g.: fancy emacs support could plug into
1583 these.
1584 (save-stack): New function. The stack is now made differently
1585 depending on the stack id. (The motivation is to make a better
1586 choice regarding what stack frames to present to the user.)
1587 (error-catching-loop): Stack handling code moved outside into
1588 save-stack.
1589
9a0d70e2
GH
1590Thu Oct 17 20:33:08 1996 Gary Houston <ghouston@actrix.gen.nz>
1591
d7189b49
GH
1592 * Makefile.in (scm_files): add expect.scm.
1593
1594 * expect.scm: new file ported from guile-iii.
1595
9a0d70e2
GH
1596 * boot-9.scm: remove handle-system-error, after moving the code into
1597 error-catching-loop.
1598 Don't set 'throw-handler-default property on error keys.
1599 Just interpret (almost) any throw with 4 args as an error throw.
1600 Delete some try-load stuff that was already commented out.
1601
35c5db87
GH
1602 Second thoughts, keep handle-system-error but call it from
1603 error-catching-loop.
1604
d065b65f
JB
1605Tue Oct 15 17:07:20 1996 Jim Blandy <jimb@floss.cyclic.com>
1606
aa9576ad
JB
1607 * boot-9.scm: Doc fixes.
1608 (make-module): Rework for readability.
1609 (make-root-module, make-scm-module): USES argument to make-module
1610 should be '(), not #f.
1611
d065b65f
JB
1612 * boot-9.scm (try-load): %sys-load-path has been renamed to
1613 primitive-load-path; adjust call here.
1614
c01c94bf
MD
1615Tue Oct 15 14:25:01 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1616
d065b65f 1617 * boot-9.scm (signal-handler): Bugfix: Moved the recording of
c01c94bf
MD
1618 the stack to the correct place: when it is decided to generate an
1619 error-signal.
1620
2dfc85c0
MD
1621Mon Oct 14 22:20:30 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1622
1623 * boot-9.scm (error-catching-loop, signal-handler,
1624 handle-system-error): Backtracing now works for signals aswell;
1625 Backtracing mechanism can now identify the stack root created by
1626 start-stack so that the user isn't exposed to system stack frames.
1627
84d8ad97
MD
1628Mon Oct 14 06:05:42 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1629
1630 * Makefile.in: Added threads.scm.
1631
4f0292cf
MD
1632Mon Oct 14 04:21:51 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1633
1634 * debug.scm (make-enable, make-disable): Simplified.
1635
1636 * boot-9.scm: Renamed %%throw-handler-default -->
1637 throw-handler-default.
1638 ((handle-system-error key . arg-list)): Changed the way errors are
1639 reported.
1640 ((scm-style-repl)): Wrap up the call to eval in a start-stack
1641 acro.
1642 ((error-catching-loop thunk)): Introduce a lazy-catch into
1643 error-catching-loop so that the stack can be captured.
1644
1eaceb61
JB
1645Thu Oct 10 22:27:32 1996 Jim Blandy <jimb@totoro.cyclic.com>
1646
1647 * mapping.scm (hash-table-mapping): Explicitly request that
1648 make-vector fill new vectors with '(); this will make it easier to
1649 port Guile Scheme code to other Schemes.
1650 * boot-9.scm (make-print-style, make-print-table): Same.
1651
6fa8995c
GH
1652Sun Oct 6 03:54:59 1996 Gary Houston <ghouston@actrix.gen.nz>
1653
1654 * boot-9.scm (load): rewritten again.
1655 Append "." to the default %load-path.
1656 (feature?): new function: checks for a symbol in the features list.
1657 (module-local-variable): remove apparently useless (caddr (list m v
1658 ...))
1659 (%load-announce): minor formatting change.
1660 (file-exists?): use access? if posix is featured.
1661 (file-is-directory?): use stat if i/o-extensions is featured.
1662 (try-module-autoload module-name): use file-exists? before
1663 file-is-directory?
1664
8b4a21d1
MD
1665Sat Oct 5 18:54:03 1996 Mikael Djurfeldt <mdj@kenneth>
1666
8acae5bb
MD
1667 * boot-9.scm: Added conditional loading of threads.scm.
1668
1669 * threads.scm: New file. Modified from the Cygnus-r0.3
1670 distribution.
1671
8b4a21d1
MD
1672 * boot-9.scm (error-catching-loop): Added handling of key
1673 `switch-repl'.
1674
1675 * boot-9.scm: Name change %%bad-throw --> bad-throw.
1676
c90c9685
JB
1677Wed Oct 2 23:38:44 1996 Jim Blandy <jimb@totoro.cyclic.com>
1678
1679 * boot-9.scm (make-record-type, record-constructor): Don't assume
1680 the empty list is false when parsing the argument list.
1681
1682Mon Sep 30 22:15:50 1996 Jim Blandy <jimb@totoro.cyclic.com>
1683
1684 * boot-9.scm (signal-handler): Clean up logic.
1685
1686 * boot-9.scm (load): Assume %load-path is always bound.
1687
5552355a
GH
1688Sat Sep 28 00:15:37 1996 Gary Houston <ghouston@actrix.gen.nz>
1689
1690 * boot-9.scm (error): replace another throw with scm-error. Throw
1691 to 'misc-error instead of 'error (no need to distinguish these.)
1692 Don't set up 'error as a key.
1693 Set up regex-error as a key, if regex is available.
1694 (signal-handler): use scm-error, not throw.
1695
7a818853 1696 (%try-load, try-load-with-path, %load, load-with-path,
5552355a
GH
1697 basic-try-load-with-path, basic-load-with-path,
1698 try-load-module-with-path,load-module-with-path): deleted, since
1699 they seem redundant.
1700 (try-load): define using %try-load, not try-load-with-path.
7a818853 1701 (load): rewritten. load tries to open the file directly and
5552355a
GH
1702 with a .scm extension before searching the library directories
1703 (should "." be added to %load-path? then load could still open
1704 directly files starting with "/").
1705 (try-module-autoload): use load, not load-with-path.
1706 (%load-indent): deleted, -2 was causing errors.
1707
1708 (%read-sharp): use port-line, not line-number.
1709
c90c9685
JB
1710Fri Sep 27 16:23:51 1996 Jim Blandy <jimb@totoro.cyclic.com>
1711
1712 * boot-9.scm (%%bad-throw): Delete definition. 1) It's very
1713 straightforward to provide the equivalent functionality using
1714 (catch #t ...), so there's no need for the extra complexity. 2)
1715 Outside the context of a read-eval-print loop (which Guile should
1716 not require) it's not clear we should do anything more complicated
1717 than print an error and exit; the user or REPL can establish
1718 something better if it wants. 3) In that case, it's much more
1719 robust to just do it in the C code.
1720
855c0eac
GH
1721Tue Sep 24 06:53:04 1996 Gary Houston <ghouston@actrix.gen.nz>
1722
1723 * boot-9.scm (%try-load): define using primitive-load. Previously
1724 %try-load itself was the primitive.
1725 (load-with-path): use scm-error instead of %load-announce-lossage.
1726 Errors are thrown to 'misc-error instead of 'could-not-load.
1727 (%load-announce-lossage): deleted.
1728
a0c97697
MD
1729Mon Sep 23 00:16:31 1996 Mikael Djurfeldt <mdj@kenneth>
1730
1731 * boot-9.scm (warn, scm-style-repl): Use C printer instead of `print'.
1732 (make-record-type type-name fields): Temporarily remove support
1733 for printing of records (not possible yet with C printer).
1734
be2d2c70
GH
1735Fri Sep 20 00:24:27 1996 Gary Houston <ghouston@actrix.gen.nz>
1736
1737 * boot-9.scm (file-exists?, file-is-directory): catch only
1738 system-error, not every kind of error.
1739 (scm-error): new procedure.
1740
434bf5ce
JB
1741Thu Sep 19 16:02:46 1996 Jim Blandy <jimb@totoro.cyclic.com>
1742
1743 * boot-9.scm: Formatting tweaks.
1744
2194b6f0
GH
1745Wed Sep 18 09:07:37 1996 Gary Houston <ghouston@actrix.gen.nz>
1746
1747 * boot-9.scm (%%handle-system-error key): remove the code for
1748 SCM-style errors. handle the case that an unexpected number
1749 of args are supplied.
1750 (%%system-errors): removed.
1751 (error): redefine using a throw with key and 4 args.
1752 ('error): associate 'error, 'error-signal keys with
1753 %%handle-system-error.
1754 (%%default-error-handler): removed.
1755 (signal-handler): throw with 4 args and use the error-signal key.
1756 Create an error message instead of using numerical codes.
1757 (%%bad-throw): call error instead of throw if key not found.
1758
1759Tue Sep 17 04:11:28 1996 Gary Houston <ghouston@actrix.gen.nz>
1760
1761 * boot-9.scm: initialize new error keys (see libguile/ChangeLog).
1762 (%%handle-system-error key): check subr is not #f before printing.
1763 Recognize %s (embed an argument using "display") and
1764 %S (embed an argument using "write").
1765
234f2da6
GH
1766Sun Sep 15 03:55:35 1996 Gary Houston <ghouston@actrix.gen.nz>
1767
1768 * boot-9.scm (%%handle-system-error key): set args and rest to
1769 the empty list if they are #f.
1770 Initialize out-of-range as an error key.
1771
e1724d20
GH
1772Sat Sep 14 03:41:15 1996 Gary Houston <ghouston@actrix.gen.nz>
1773
40c8906e
GH
1774 * PLUGIN/REQ: remove the "ice-9 lgh" line which causes a cycle.
1775
e1724d20
GH
1776 * boot-9.scm: remove leading %% from references to '%%system-error.
1777 (%%handle-system-error): don't pass all the thrown arguments when
1778 aborting, just the key and subr.
1779 Remove the code to "Install default handlers for built-in errors."
1780 Remove the definition of the syserror procedure.
1781 Associate 'numerical-overflow with default handler.
1782
1a80fb07
MD
1783Fri Sep 13 04:58:11 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1784
1785 * boot-9.scm: Name change: value-ref --> local-ref
1786 resolved-ref --> nested-ref Motivation: conformance to the other
1787 dictionary operators: list-ref operates on list, vector-ref
1788 operates on vector, nested-ref operates on nested namespace,
1789 local-ref operates on the local nested namespace.
1790
7cb1d4d3
GH
1791Sat Sep 7 06:44:47 1996 Gary Houston <ghouston@actrix.gen.nz>
1792
1793 * boot-9.scm (%%handle-system-error): recognise errors thrown
1794 by lgh-error (fill-message etc.)
9561554c 1795 (fill-message): check first whether args is null.
a949b3f2 1796 (fill-message): bug fix and check that args is a list.
7cb1d4d3 1797
393ee9a8
JB
1798Thu Sep 5 11:33:41 1996 Jim Blandy <jimb@floss.cyclic.com>
1799
1800 * boot-9.scm: %load-path is initialized in C code now.
1801 (implementation-vicinity, parse-path): Deleted, along with code to
1802 initialize %load-path.
1803
1804 * boot-9.scm (in-vicinity): If the vicinity doesn't end with a
1805 "/", use one to separate it from the file.
1806
e4ef46d4
JB
1807Thu Aug 29 23:05:11 1996 Thomas Morgan <tmorgan@gnu.ai.mit.edu>
1808
1809 * boot-9.scm (%load-path): Add the site directory.
1810 Add the directory named after the version number.
1811 Prepend the version number to the other directories in the path.
1812 Simplify by mapping the common prefix onto each item.
1813 * Makefile.in (datadir, pkgdatadir, pkgverdatadir, subpkgdatadir,
1814 sitedatadir): New definitions.
1815 (libparent, libdir, install_path): Replaced by above.
1816 (install): Create the above directories.
1817 Put the source files into subpkgdatadir.
1818 (uninstall): Remove the above directories.
1819
00312aa3
JB
1820Thu Aug 29 21:48:47 1996 Jim Blandy <jimb@floss.cyclic.com>
1821
1822 Don't use the PLUGIN system to gather information for the
1823 Makefile's distribution and installation targets; just put it all
1824 in the Makefile directly.
1825 * PLUGIN/this.configure (scm_files, aux_files): Remove sections
1826 for these.
1827 * configure.in: Remove code that gets and substitutes scm_files and
1828 aux_files.
1829 * Makefile.in (scm_files, aux_files): Write out the list of files
1830 here, where people expect to find them.
1831
96a8aaf3
MD
1832Fri Aug 23 06:44:36 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1833
1834 * boot-9.scm: Preliminary solution: optionally load the debug
7685f77c 1835 module. Changed "gls" to "guile1.0b3".
96a8aaf3
MD
1836
1837 * debug.scm: New file: debug extensions.
1838
4e378733
MD
1839Wed Aug 21 13:06:56 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1840
1841 * boot-9.scm (print-vector): Renamed weak-hash-table? -->
1842 weak-key-hash-table?. (Again!)
1843
0190d683
MD
1844Tue Aug 20 07:31:39 1996 Mikael Djurfeldt <mdj@woody.nada.kth.se>
1845
1846 * boot-9.scm (print-vector, macro-table, xformer-table):
1847 Renamed weak-hash-table --> weak-key-hash-table.
1848
1849 * poe.scm (funcq-memo): Renamed weak-hash-table -->
1850 weak-key-hash-table.
1851
8b13c6b3
GH
1852Sat Aug 3 06:16:35 1996 Gary Houston <ghouston@actrix.gen.nz>
1853
1854 * boot-9.scm (*null-device*): global constant from goonix.
1855 (move->fdes): adjusted for boolean primitive-move->fdes. return
1856 the modified port, always set revealed count to 1 (SCSH compatible).
1857 (release-port-handle port): from goonix (SCSH compatible).
1858 (%open-file): removed.
1859 (open-input-file, open-output-file, file-exists?, file-is-directory?):
1860 modified for open-file change (does not return #f).
1861
a44a755d
JB
1862Thu Aug 1 02:52:42 1996 Jim Blandy <jimb@totoro.cyclic.com>
1863
1864 * Makefile.in (dist-dir): New target for new dist system.
1865 (manifest): Deleted.
1866 * PLUGIN/this.configure (aux_files): Removed PLUGIN; it's a
1867 directory, and needs special treatment in the dist-dir target.
1868
02b754d3
GH
1869Thu Aug 1 09:00:21 1996 Gary Houston <ghouston@actrix.gen.nz>
1870
1871 * boot-9.scm: remove the wrappers for '%' system primitives,
1872 now that they throw errors directly.
1873 remove make-simple-wrapper and similar functions.
1874 protect a call to getenv which may now throw an exception.
1875
1876Wed Jul 31 23:44:42 1996 Gary Houston <ghouston@actrix.gen.nz>
1877
1878 * boot-9.scm (false-if-exception): new macro.
1879
0f2d19dd
JB
1880Fri Apr 19 13:53:08 1996 Tom Lord <lord@beehive>
1881
1882 * The more things change...
1883
1884