Gary Houston [Sun, 27 Oct 1996 02:38:39 +0000 (02:38 +0000)]
* load.c: change s_try_load and s_try_load_path to s_primitive_load
and s_primitive_load_path.
* eval.c, load.c, error.c (scm_wta): use scm_misc_error.
* error.h: don't declare error symbols. prototype for scm_misc_error.
* stackchk.c (scm_stack_overflow_key): defined here instead of in
error.c.
* error.c: use SCM_SYMBOL to set up error keys.
scm_misc_error: new procedure.
Jim Blandy [Fri, 25 Oct 1996 08:40:27 +0000 (08:40 +0000)]
*** empty log message ***
Jim Blandy [Fri, 25 Oct 1996 08:35:36 +0000 (08:35 +0000)]
* boot-9.scm (%read-sharp): Don't recognize the `#!' syntax here;
that's now taken care of in libguile, and in a way compatible with
SCSH (which this isn't).
Jim Blandy [Fri, 25 Oct 1996 08:30:26 +0000 (08:30 +0000)]
* read.c (scm_lreadr): Recognize SCSH-style block comments; text
between `#!' and `!#' is ignored.
(skip_scsh_block_comment): New function.
Jim Blandy [Fri, 25 Oct 1996 08:30:06 +0000 (08:30 +0000)]
* feature.c (scm_set_program_arguments): New argument, FIRST.
* feature.h: Update prototype.
* init.c (scm_boot_guile_1): Pass new argument to
scm_set_program_arguments.
Jim Blandy [Wed, 23 Oct 1996 02:15:20 +0000 (02:15 +0000)]
*** empty log message ***
Jim Blandy [Wed, 23 Oct 1996 02:15:04 +0000 (02:15 +0000)]
* ports.c: Formatting tweak.
Jim Blandy [Wed, 23 Oct 1996 02:14:52 +0000 (02:14 +0000)]
* init.c: (scm_boot_guile, scm_boot_guile_1): New, simplified
initialization procedure.
- Delete in, out, err arguments; there are other perfectly good
ways to override these when desired.
- Delete result argument; this function shouldn't ever return.
- Rename init_func argument to main_func, for less confusion.
- Delete boot_cmd argument; main_func is more general.
-Add 'closure' argument, to help people pass data to main_func
without resorting to global variables.
- Abort if reentered; don't bother returning an error code.
- Call scm_init_standard_ports to set up the default/current
standard ports; no need to pass them to scm_start_stack.
- Remove code to evaluate the boot_cmd, and start the repl; let
the user do something like that in main_func if they want.
- Remove code to package up a return value; main_func can do any
of that as needed.
- Call exit (0), instead of returning.
(scm_start_stack): Don't initialize the I/O ports here; that's
weird. Delete in, out, err arguments. Move guts to
scm_init_standard_ports, scm_stdio_to_port.
(scm_init_standard_ports): New function, to set up current and
default standard ports.
(scm_start_stack, scm_restart_stack): Make these static.
* init.h (scm_boot_guile): Adjust declaration.
(scm_start_stack, scm_restart_stack): Remove externally
visible declarations for these.
(enum scm_boot_status): Removed; now scm_boot_guile never returns.
Jim Blandy [Wed, 23 Oct 1996 02:14:39 +0000 (02:14 +0000)]
* init.c (scm_start_stack): Don't initialize scm_progargs here.
(scm_boot_guile): Call scm_set_program_arguments here, later than
the old initialization.
* init.c: (scm_boot_guile, scm_boot_guile_1): New, simplified
initialization procedure.
- Delete in, out, err arguments; there are other perfectly good
ways to override these when desired.
- Delete result argument; this function shouldn't ever return.
- Rename init_func argument to main_func, for less confusion.
- Delete boot_cmd argument; main_func is more general.
-Add 'closure' argument, to help people pass data to main_func
without resorting to global variables.
- Abort if reentered; don't bother returning an error code.
- Call scm_init_standard_ports to set up the default/current
standard ports; no need to pass them to scm_start_stack.
- Remove code to evaluate the boot_cmd, and start the repl; let
the user do something like that in main_func if they want.
- Remove code to package up a return value; main_func can do any
of that as needed.
- Call exit (0), instead of returning.
(scm_start_stack): Don't initialize the I/O ports here; that's
weird. Delete in, out, err arguments. Move guts to
scm_init_standard_ports, scm_stdio_to_port.
(scm_init_standard_ports): New function, to set up current and
default standard ports.
(scm_start_stack, scm_restart_stack): Make these static.
* init.h (scm_boot_guile): Adjust declaration.
(scm_start_stack, scm_restart_stack): Remove externally
visible declarations for these.
(enum scm_boot_status): Removed; now scm_boot_guile never returns.
Jim Blandy [Wed, 23 Oct 1996 02:14:18 +0000 (02:14 +0000)]
* * fports.c (scm_stdio_to_port): New function. Its guts used to be
written out several times in scm_start_stack.
* fports.h: New declaration for the above.
Jim Blandy [Wed, 23 Oct 1996 02:14:09 +0000 (02:14 +0000)]
* * feature.c (scm_set_program_arguments): New function.
* feature.h: New declaration for the above.
Jim Blandy [Mon, 21 Oct 1996 23:54:02 +0000 (23:54 +0000)]
*** empty log message ***
Jim Blandy [Mon, 21 Oct 1996 23:53:40 +0000 (23:53 +0000)]
* hashtab.h (scm_hashx_remove_x): Renamed `delete' parameter to
`del', for the sake of C++ compilers. (Patch applied by JimB.)
Jim Blandy [Mon, 21 Oct 1996 23:53:01 +0000 (23:53 +0000)]
* boot-9.scm: Formatting tweaks.
Mark Galassi [Mon, 21 Oct 1996 17:28:13 +0000 (17:28 +0000)]
Started moving gh.c to acknowledging conservative GC; gh_test core dumps,
but at least it compiles for now.
Mikael Djurfeldt [Sun, 20 Oct 1996 03:31:40 +0000 (03:31 +0000)]
*** empty log message ***
Mikael Djurfeldt [Sun, 20 Oct 1996 03:31:08 +0000 (03:31 +0000)]
* alist.c, arbiters.c, continuations.c, debug.c, debug.h, eval.c,
eval.h, feature.c, filesys.c, fports.c, gc.c, gsubr.c, init.c,
ioext.c, kw.c, list.c, load.c, mallocs.c, numbers.c, numbers.h,
pairs.c, pairs.h, ports.c, ports.h, posix.c, procprop.c, procs.c,
procs.h, ramap.c, read.c, root.c, srcprop.c, srcprop.h,
strports.c, symbols.c, tags.h, throw.c, unif.c, variable.c,
vports.c: Cleaned up use of pairs: Don't make any special
assumptions about the internal structure of selectors and
mutators: SCM_CXR (<e1>) = <e2> --> SCM_SETCXR (<e1>, <e2>),
SCM_CXR (<e1>) &= <e2> --> SCM_SETAND_CXR (<e1>, <e2>) etc.
(Among other things, this change makes it easier to build Guile
with certain compilers which have problems with casted lvalues.)
Mikael Djurfeldt [Sun, 20 Oct 1996 03:30:16 +0000 (03:30 +0000)]
* pairs.h, eval.c, eval.h, feature.c, gc.c, list.c, load.c,
ramap.c, symbols.c: Added new selectors SCM_CARLOC and SCM_CDRLOC
for obtaining the address of a car or cdr field. Motivation:
&SCM_CXR make assumptions about the internal structure of the
SCM_CXR selectors.
* eval.h, eval.c: Added new selector SCM_GLOC_VAL_LOC.
Motivation: see SCM_CXRLOC.
* pairs.h, eval.c, gc.c, init.c, ioext.c, ports.c, ports.h,
srcprop.h, tags.h, throw.c, unif.c: Added new selectors
SCM_SETAND_CAR, SCM_SETAND_CDR, SCM_SETOR_CAR and SCM_SETOR_CDR.
Motivation: Safer use. Some other macros are defined in terms of
these operations. If these are defined using the SCM_SETCXR
(<e1>, SCM_CXR (<e1>) <op> <e2>) pattern a complex <e1> will lead
to inefficiency and an <e1> with side-effects could potentially
break. Also, these particular operations are heavily utilized in
the garbage collector. In unoptimized code there will be a
measurable speedup.
* alist.c, arbiters.c, continuations.c, debug.c, debug.h, eval.c,
eval.h, feature.c, filesys.c, fports.c, gc.c, gsubr.c, init.c,
ioext.c, kw.c, list.c, load.c, mallocs.c, numbers.c, numbers.h,
pairs.c, pairs.h, ports.c, ports.h, posix.c, procprop.c, procs.c,
procs.h, ramap.c, read.c, root.c, srcprop.c, srcprop.h,
strports.c, symbols.c, tags.h, throw.c, unif.c, variable.c,
vports.c: Cleaned up use of pairs: Don't make any special
assumptions about the internal structure of selectors and
mutators: SCM_CXR (<e1>) = <e2> --> SCM_SETCXR (<e1>, <e2>),
SCM_CXR (<e1>) &= <e2> --> SCM_SETAND_CXR (<e1>, <e2>) etc.
(Among other things, this change makes it easier to build Guile
with certain compilers which have problems with casted lvalues.)
Mikael Djurfeldt [Sun, 20 Oct 1996 03:29:48 +0000 (03:29 +0000)]
* pairs.h, eval.c, eval.h, feature.c, gc.c, list.c, load.c,
ramap.c, symbols.c: Added new selectors SCM_CARLOC and SCM_CDRLOC
for obtaining the address of a car or cdr field. Motivation:
&SCM_CXR make assumptions about the internal structure of the
SCM_CXR selectors.
* eval.h, eval.c: Added new selector SCM_GLOC_VAL_LOC.
Motivation: see SCM_CXRLOC.
* alist.c, arbiters.c, continuations.c, debug.c, debug.h, eval.c,
eval.h, feature.c, filesys.c, fports.c, gc.c, gsubr.c, init.c,
ioext.c, kw.c, list.c, load.c, mallocs.c, numbers.c, numbers.h,
pairs.c, pairs.h, ports.c, ports.h, posix.c, procprop.c, procs.c,
procs.h, ramap.c, read.c, root.c, srcprop.c, srcprop.h,
strports.c, symbols.c, tags.h, throw.c, unif.c, variable.c,
vports.c: Cleaned up use of pairs: Don't make any special
assumptions about the internal structure of selectors and
mutators: SCM_CXR (<e1>) = <e2> --> SCM_SETCXR (<e1>, <e2>),
SCM_CXR (<e1>) &= <e2> --> SCM_SETAND_CXR (<e1>, <e2>) etc.
(Among other things, this change makes it easier to build Guile
with certain compilers which have problems with casted lvalues.)
Mikael Djurfeldt [Sun, 20 Oct 1996 03:29:38 +0000 (03:29 +0000)]
* pairs.h, eval.c, eval.h, feature.c, gc.c, list.c, load.c,
ramap.c, symbols.c: Added new selectors SCM_CARLOC and SCM_CDRLOC
for obtaining the address of a car or cdr field. Motivation:
&SCM_CXR make assumptions about the internal structure of the
SCM_CXR selectors.
* alist.c, arbiters.c, continuations.c, debug.c, debug.h, eval.c,
eval.h, feature.c, filesys.c, fports.c, gc.c, gsubr.c, init.c,
ioext.c, kw.c, list.c, load.c, mallocs.c, numbers.c, numbers.h,
pairs.c, pairs.h, ports.c, ports.h, posix.c, procprop.c, procs.c,
procs.h, ramap.c, read.c, root.c, srcprop.c, srcprop.h,
strports.c, symbols.c, tags.h, throw.c, unif.c, variable.c,
vports.c: Cleaned up use of pairs: Don't make any special
assumptions about the internal structure of selectors and
mutators: SCM_CXR (<e1>) = <e2> --> SCM_SETCXR (<e1>, <e2>),
SCM_CXR (<e1>) &= <e2> --> SCM_SETAND_CXR (<e1>, <e2>) etc.
(Among other things, this change makes it easier to build Guile
with certain compilers which have problems with casted lvalues.)
Mikael Djurfeldt [Sun, 20 Oct 1996 03:29:01 +0000 (03:29 +0000)]
* pairs.h, eval.c, eval.h, feature.c, gc.c, list.c, load.c,
ramap.c, symbols.c: Added new selectors SCM_CARLOC and SCM_CDRLOC
for obtaining the address of a car or cdr field. Motivation:
&SCM_CXR make assumptions about the internal structure of the
SCM_CXR selectors.
* pairs.h, eval.c, gc.c, init.c, ioext.c, ports.c, ports.h,
srcprop.h, tags.h, throw.c, unif.c: Added new selectors
SCM_SETAND_CAR, SCM_SETAND_CDR, SCM_SETOR_CAR and SCM_SETOR_CDR.
Motivation: Safer use. Some other macros are defined in terms of
these operations. If these are defined using the SCM_SETCXR
(<e1>, SCM_CXR (<e1>) <op> <e2>) pattern a complex <e1> will lead
to inefficiency and an <e1> with side-effects could potentially
break. Also, these particular operations are heavily utilized in
the garbage collector. In unoptimized code there will be a
measurable speedup.
* alist.c, arbiters.c, continuations.c, debug.c, debug.h, eval.c,
eval.h, feature.c, filesys.c, fports.c, gc.c, gsubr.c, init.c,
ioext.c, kw.c, list.c, load.c, mallocs.c, numbers.c, numbers.h,
pairs.c, pairs.h, ports.c, ports.h, posix.c, procprop.c, procs.c,
procs.h, ramap.c, read.c, root.c, srcprop.c, srcprop.h,
strports.c, symbols.c, tags.h, throw.c, unif.c, variable.c,
vports.c: Cleaned up use of pairs: Don't make any special
assumptions about the internal structure of selectors and
mutators: SCM_CXR (<e1>) = <e2> --> SCM_SETCXR (<e1>, <e2>),
SCM_CXR (<e1>) &= <e2> --> SCM_SETAND_CXR (<e1>, <e2>) etc.
(Among other things, this change makes it easier to build Guile
with certain compilers which have problems with casted lvalues.)
Mikael Djurfeldt [Sun, 20 Oct 1996 03:28:34 +0000 (03:28 +0000)]
* pairs.h, eval.c, gc.c, init.c, ioext.c, ports.c, ports.h,
srcprop.h, tags.h, throw.c, unif.c: Added new selectors
SCM_SETAND_CAR, SCM_SETAND_CDR, SCM_SETOR_CAR and SCM_SETOR_CDR.
Motivation: Safer use. Some other macros are defined in terms of
these operations. If these are defined using the SCM_SETCXR
(<e1>, SCM_CXR (<e1>) <op> <e2>) pattern a complex <e1> will lead
to inefficiency and an <e1> with side-effects could potentially
break. Also, these particular operations are heavily utilized in
the garbage collector. In unoptimized code there will be a
measurable speedup.
* alist.c, arbiters.c, continuations.c, debug.c, debug.h, eval.c,
eval.h, feature.c, filesys.c, fports.c, gc.c, gsubr.c, init.c,
ioext.c, kw.c, list.c, load.c, mallocs.c, numbers.c, numbers.h,
pairs.c, pairs.h, ports.c, ports.h, posix.c, procprop.c, procs.c,
procs.h, ramap.c, read.c, root.c, srcprop.c, srcprop.h,
strports.c, symbols.c, tags.h, throw.c, unif.c, variable.c,
vports.c: Cleaned up use of pairs: Don't make any special
assumptions about the internal structure of selectors and
mutators: SCM_CXR (<e1>) = <e2> --> SCM_SETCXR (<e1>, <e2>),
SCM_CXR (<e1>) &= <e2> --> SCM_SETAND_CXR (<e1>, <e2>) etc.
(Among other things, this change makes it easier to build Guile
with certain compilers which have problems with casted lvalues.)
Mark Galassi [Fri, 18 Oct 1996 22:44:47 +0000 (22:44 +0000)]
Adding more stuff to get the docs to work.
Mikael Djurfeldt [Fri, 18 Oct 1996 00:15:09 +0000 (00:15 +0000)]
Adjustment of load-stack selection.
Mikael Djurfeldt [Thu, 17 Oct 1996 23:56:31 +0000 (23:56 +0000)]
Bugfix: arg-list --> args in error handler.
Mikael Djurfeldt [Thu, 17 Oct 1996 23:43:30 +0000 (23:43 +0000)]
*** empty log message ***
Mikael Djurfeldt [Thu, 17 Oct 1996 23:43:23 +0000 (23:43 +0000)]
* boot-9.scm (handle-system-error): Added hooks before-error-hook,
after-error-hook, before-backtrace-hook and after-backtrace-hook
to the error handler. E.g.: fancy emacs support could plug into
these.
(save-stack): New function. The stack is now made differently
depending on the stack id. (The motivation is to make a better
choice regarding what stack frames to present to the user.)
(error-catching-loop): Stack handling code moved outside into
save-stack.
Mikael Djurfeldt [Thu, 17 Oct 1996 23:43:00 +0000 (23:43 +0000)]
Oops!
Mikael Djurfeldt [Thu, 17 Oct 1996 23:32:47 +0000 (23:32 +0000)]
* backtrace.c (scm_display_error): Just a safety measure: Stacks
aren't created with zero length, but should such a strange
creature suddenly turn up...
Mikael Djurfeldt [Thu, 17 Oct 1996 23:32:40 +0000 (23:32 +0000)]
* debug.c (scm_make_memoized): Made it available at scheme level.
(scm_unmemoize, scm_memoized_environment): Bugfix: Check for
SCM_NIMP before applying heavier predicates in argument checking.
(scm_local_eval): Also take memoized object as argument.
Mikael Djurfeldt [Thu, 17 Oct 1996 23:32:32 +0000 (23:32 +0000)]
* ports.c (scm_port_line_x, scm_port_column_x): New mutators.
Mikael Djurfeldt [Thu, 17 Oct 1996 23:32:25 +0000 (23:32 +0000)]
* stacks.c: Improve selection of relevant stack frames when making
a stack object. Introduce one level of indirection in the stack
object to make it possible to "narrow" to a certain region of the
stack. This facilitates making use of more clever algorithms (not
implemented) for selecting relevant frames and gives a cleaner
design since selection of frames can be done independently of
extraction of frames from the real stack.
(scm_stack_id): Also take #t as argument which means look at
current stack.
Mikael Djurfeldt [Thu, 17 Oct 1996 23:32:15 +0000 (23:32 +0000)]
* stacks.h: In struct scm_stack: Turn field frames into a pointer.
Turn n_tail into an integer directly representing current number
of frames in stack. Add field tail.
Gary Houston [Thu, 17 Oct 1996 23:21:10 +0000 (23:21 +0000)]
* Makefile.in (scm_files): add expect.scm.
* expect.scm: new file ported from guile-iii.
Gary Houston [Thu, 17 Oct 1996 21:56:22 +0000 (21:56 +0000)]
Second thoughts, keep handle-system-error but call it from
error-catching-loop.
Gary Houston [Thu, 17 Oct 1996 21:45:04 +0000 (21:45 +0000)]
* boot-9.scm: remove handle-system-error, after moving the code into
error-catching-loop.
Don't set 'throw-handler-default property on error keys.
Just interpret (almost) any throw with 4 args as an error throw.
Delete some try-load stuff that was already commented out.
Jim Blandy [Wed, 16 Oct 1996 22:29:19 +0000 (22:29 +0000)]
Formatting niggles.
Mark Galassi [Wed, 16 Oct 1996 14:01:56 +0000 (14:01 +0000)]
added gh and removed lgh; modified other stuff to reflect the new gh_
prefix replacing the old lgh_ prefix.
Jim Blandy [Wed, 16 Oct 1996 02:22:21 +0000 (02:22 +0000)]
*** empty log message ***
Jim Blandy [Wed, 16 Oct 1996 02:20:47 +0000 (02:20 +0000)]
* variable.c (scm_make_variable): Make the name hint optional, as
documented.
(anonymous_variable_sym): Renamed from variable_sym. All uses
changed.
Jim Blandy [Wed, 16 Oct 1996 02:18:33 +0000 (02:18 +0000)]
* boot-9.scm: Doc fixes.
(make-module): Rework for readability.
(make-root-module, make-scm-module): USES argument to make-module
should be '(), not #f.
Jim Blandy [Tue, 15 Oct 1996 22:31:06 +0000 (22:31 +0000)]
*** empty log message ***
Jim Blandy [Tue, 15 Oct 1996 22:30:48 +0000 (22:30 +0000)]
* load.c (scm_primitive_load, scm_primitive_load_path): Renamed
from scm_sys_try_load and scm_sys_try_load_path. The Scheme name
of scm_primitive_load_path was also changed to
"primitive-load-path", from "%try-load-path". Callers changed.
We'd like to respect the convention that a function named
"try-mumble" should behave just like the function called "mumble",
but return #f instead of signalling some error.
* load.h: Rename prototypes.
Jim Blandy [Tue, 15 Oct 1996 22:29:46 +0000 (22:29 +0000)]
* boot-9.scm (try-load): %sys-load-path has been renamed to
primitive-load-path; adjust call here.
Jim Blandy [Tue, 15 Oct 1996 21:57:15 +0000 (21:57 +0000)]
*** empty log message ***
Jim Blandy [Tue, 15 Oct 1996 21:56:27 +0000 (21:56 +0000)]
* alist.c (scm_sloppy_assq, scm_sloppy_assv, scm_sloppy_assoc):
Don't crash when passed an improper list terminated by a
non-immediate value.
Mikael Djurfeldt [Tue, 15 Oct 1996 14:06:29 +0000 (14:06 +0000)]
*** empty log message ***
Mikael Djurfeldt [Tue, 15 Oct 1996 12:27:01 +0000 (12:27 +0000)]
*** empty log message ***
Mikael Djurfeldt [Tue, 15 Oct 1996 12:26:49 +0000 (12:26 +0000)]
* boot-9.scm ((signal-handler n)): Bugfix: Moved the recording of
the stack to the correct place: when it is decided to generate an
error-signal.
Mikael Djurfeldt [Tue, 15 Oct 1996 03:40:31 +0000 (03:40 +0000)]
*** empty log message ***
Mikael Djurfeldt [Tue, 15 Oct 1996 03:40:21 +0000 (03:40 +0000)]
* print.c (make_print_state, grow_print_state), print.h: Modified
the print state representation: Don't use a tail array for
recording of circular references. Resizing of the print state
structure invalidates the print state pointer. To avoid passing
around an indirect print state reference to all printing
functions, we instead let the print state reference a resizable
vector.
Jim Blandy [Tue, 15 Oct 1996 00:14:14 +0000 (00:14 +0000)]
*** empty log message ***
Jim Blandy [Tue, 15 Oct 1996 00:10:59 +0000 (00:10 +0000)]
Allocate data for structures on an eight-byte boundary, as
required by the tagging system.
* struct.c (alloc_struct): New function.
(scm_make_struct, scm_make_vtable_vtable): Call it.
* struct.h (scm_struct_n_extra_words): Bump to 3.
(scm_struct_i_ptr): New "field".
* gc.c (scm_gc_sweep): When we need to free the data, use the
information stored by alloc_struct to find the beginning of the
block allocated to the structure, so we can free it.
Mikael Djurfeldt [Mon, 14 Oct 1996 20:29:16 +0000 (20:29 +0000)]
*** empty log message ***
Mikael Djurfeldt [Mon, 14 Oct 1996 20:28:39 +0000 (20:28 +0000)]
* boot-9.scm (error-catching-loop, signal-handler,
handle-system-error): Backtracing now works for signals aswell;
Backtracing mechanism can now identify the stack root created by
start-stack so that the user isn't exposed to system stack frames.
Mikael Djurfeldt [Mon, 14 Oct 1996 20:28:18 +0000 (20:28 +0000)]
* debug.c (scm_procedure_name): Try procedure property `name' for
compiled closures aswell.
Mikael Djurfeldt [Mon, 14 Oct 1996 20:28:13 +0000 (20:28 +0000)]
* debug.h (SCM_VOIDFRAME, SCM_VOIDFRAMEP): New macros.
(scm_debug_info): New member: id.
Mikael Djurfeldt [Mon, 14 Oct 1996 20:28:08 +0000 (20:28 +0000)]
* eval.c: scm_i_name moved to gsubr.c
(scm_m_define): Record names of all kinds of procedure
objects. (Earlier, only closures were recorded.)
Mikael Djurfeldt [Mon, 14 Oct 1996 20:27:51 +0000 (20:27 +0000)]
* gc.c (scm_init_storage): Initialize scm_stand_in_procs to SCM_EOL.
Mikael Djurfeldt [Mon, 14 Oct 1996 20:27:45 +0000 (20:27 +0000)]
* eval.c: scm_i_name moved to gsubr.c
(scm_m_define): Record names of all kinds of procedure
objects. (Earlier, only closures were recorded.)
* gsubr.c: Added global scm_i_name. Added #include "procprop.h".
(scm_make_gsubr): Record names of compiled closures.
Mikael Djurfeldt [Mon, 14 Oct 1996 20:27:39 +0000 (20:27 +0000)]
* init.c (scm_boot_guile_1): Moved scm_init_struct in front of
scm_init_stacks.
Mikael Djurfeldt [Mon, 14 Oct 1996 20:27:20 +0000 (20:27 +0000)]
* procprop.h: Added declaration of scm_i_name.
* gsubr.c: Added global scm_i_name. Added #include "procprop.h".
(scm_make_gsubr): Record names of compiled closures.
Mikael Djurfeldt [Mon, 14 Oct 1996 20:27:14 +0000 (20:27 +0000)]
* stacks.c: Stacks are now represented as structs; Stacks have an
id given to them by `start-stack'.
(scm_last_stack_frame): Added predicates `stack?' and `frame?'.
Mikael Djurfeldt [Mon, 14 Oct 1996 20:27:07 +0000 (20:27 +0000)]
* stacks.h: Added declarations of scm_stack_p and scm_frame_p;
Changed stack representation.
Mikael Djurfeldt [Mon, 14 Oct 1996 04:08:01 +0000 (04:08 +0000)]
*** empty log message ***
Mikael Djurfeldt [Mon, 14 Oct 1996 04:07:53 +0000 (04:07 +0000)]
* Makefile.in: Added threads.scm.
Mikael Djurfeldt [Mon, 14 Oct 1996 03:44:37 +0000 (03:44 +0000)]
*** empty log message ***
Mikael Djurfeldt [Mon, 14 Oct 1996 03:28:57 +0000 (03:28 +0000)]
*** empty log message ***
Mikael Djurfeldt [Mon, 14 Oct 1996 03:28:35 +0000 (03:28 +0000)]
* debug.scm (make-enable, make-disable): Simplified.
Mikael Djurfeldt [Mon, 14 Oct 1996 03:28:26 +0000 (03:28 +0000)]
* boot-9.scm: Renamed %%throw-handler-default -->
throw-handler-default.
((handle-system-error key . arg-list)): Changed the way errors are
reported.
((scm-style-repl)): Wrap up the call to eval in a start-stack
acro.
((error-catching-loop thunk)): Introduce a lazy-catch into
error-catching-loop so that the stack can be captured.
Mikael Djurfeldt [Mon, 14 Oct 1996 03:27:11 +0000 (03:27 +0000)]
* symbols.c (scm_sym2ovcell): Fixed documentation.
Mikael Djurfeldt [Mon, 14 Oct 1996 03:26:57 +0000 (03:26 +0000)]
* init.c: Added #include "backtrace.h" and #include "stacks.h".
(scm_boot_guile_1): Added calls to scm_init_backtrace and
scm_init_stacks.
* Makefile.in: Added entries for new files: backtrace.c,
backtrace.h, stacks.c and stacks.h.
Mikael Djurfeldt [Mon, 14 Oct 1996 03:26:51 +0000 (03:26 +0000)]
* continuations.c, continuations.h, debug.c, gc.c, init.c, root.c,
stacks.c: Renamed regs --> scm_contregs.
* Makefile.in: Added entries for new files: backtrace.c,
backtrace.h, stacks.c and stacks.h.
Mikael Djurfeldt [Mon, 14 Oct 1996 03:26:44 +0000 (03:26 +0000)]
* srcprop.c, srcprop.h: Made scm_i_filename, scm_i_copy,
scm_i_line, scm_i_column and scm_i_breakpoint global.
Mikael Djurfeldt [Mon, 14 Oct 1996 03:26:37 +0000 (03:26 +0000)]
* srcprop.c (scm_source_properties, scm_set_source_properties_x,
s_set_source_property_x): Check that first argument is a pair or a
memoized object.
* srcprop.c, srcprop.h: Made scm_i_filename, scm_i_copy,
scm_i_line, scm_i_column and scm_i_breakpoint global.
Mikael Djurfeldt [Mon, 14 Oct 1996 03:26:29 +0000 (03:26 +0000)]
* continuations.c, continuations.h, debug.c, gc.c, init.c, root.c,
stacks.c: Renamed regs --> scm_contregs.
Mikael Djurfeldt [Mon, 14 Oct 1996 03:26:21 +0000 (03:26 +0000)]
* print.h: Added selector SCM_PRINT_STATE.
* print.h: Added declarations for scm_make_print_state,
scm_free_print_state.
Mikael Djurfeldt [Mon, 14 Oct 1996 03:26:13 +0000 (03:26 +0000)]
* print.c (scm_free_print_state): Cleanup print state before
returning it to pool. It is better to do it here than in
scm_prin1 since scm_prin1 is called often.
* print.c (make_print_state): Bugfix: Initialize pstate->ceiling.
* print.c: New functions: scm_make_print_state,
scm_free_print_state.
Mikael Djurfeldt [Mon, 14 Oct 1996 03:25:59 +0000 (03:25 +0000)]
* continuations.c, continuations.h, debug.c, gc.c, init.c, root.c,
stacks.c: Renamed regs --> scm_contregs.
* init.c: Added #include "backtrace.h" and #include "stacks.h".
(scm_boot_guile_1): Added calls to scm_init_backtrace and
scm_init_stacks.
* init.c (scm_boot_guile_1): Moved scm_init_debug below
scm_init_eval.
Mikael Djurfeldt [Mon, 14 Oct 1996 03:25:40 +0000 (03:25 +0000)]
* eval.c: Added new debug options `maxdepth' and `indent'.
Mikael Djurfeldt [Mon, 14 Oct 1996 03:25:31 +0000 (03:25 +0000)]
* debug.c, debug.h: Removed obsolete code.
* debug.h: Added debug object smob declaration and macro
definitions.
* debug.h: New debug options SCM_BACKTRACE_MAXDEPTH and
SCM_BACKTRACE_INDENT.
* debug.h: Small cleanup.
Mikael Djurfeldt [Mon, 14 Oct 1996 03:25:21 +0000 (03:25 +0000)]
* debug.c, debug.h: Removed obsolete code.
* continuations.c, continuations.h, debug.c, gc.c, init.c, root.c,
stacks.c: Renamed regs --> scm_contregs.
* * debug.c (scm_m_start_stack): New acro.
Mikael Djurfeldt [Mon, 14 Oct 1996 03:24:57 +0000 (03:24 +0000)]
* configure.in: Build with backtrace.o and stacks.o if debug
support enabled.
Mikael Djurfeldt [Mon, 14 Oct 1996 03:24:16 +0000 (03:24 +0000)]
* Makefile.in: Added entries for new files: backtrace.c,
backtrace.h, stacks.c and stacks.h.
Mikael Djurfeldt [Mon, 14 Oct 1996 03:24:09 +0000 (03:24 +0000)]
* async.c: Moved `min' macro to _scm.h.
Mikael Djurfeldt [Mon, 14 Oct 1996 03:24:01 +0000 (03:24 +0000)]
* _scm.h (min, max): Added.
* async.c: Moved `min' macro to _scm.h.
Jim Blandy [Mon, 14 Oct 1996 01:33:50 +0000 (01:33 +0000)]
* __scm.h, alist.c, alist.h, append.c, append.h, appinit.c,
arbiters.c, arbiters.h, async.c, async.h, boolean.c, boolean.h,
chars.c, chars.h, continuations.c, continuations.h, debug.c,
debug.h, dynwind.c, dynwind.h, eq.c, eq.h, error.c, eval.c,
eval.h, extchrs.c, extchrs.h, fdsocket.c, fdsocket.h, filesys.c,
filesys.h, fports.c, fports.h, gc.c, gdb_interface.h, gdbint.c,
gdbint.h, genio.c, genio.h, gscm.c, gscm.h, gsubr.c, gsubr.h,
hash.c, hash.h, hashtab.c, hashtab.h, init.c, ioext.c, ioext.h,
kw.c, kw.h, libguile.h, mallocs.c, mallocs.h, markers.c,
markers.h, mbstrings.c, mbstrings.h, numbers.c, numbers.h,
objprop.c, objprop.h, options.c, options.h, pairs.c, pairs.h,
ports.c, ports.h, posix.c, posix.h, print.c, print.h, procprop.c,
procprop.h, procs.c, procs.h, ramap.c, ramap.h, read.c, read.h,
root.c, scmsigs.c, scmsigs.h, sequences.c, sequences.h, simpos.c,
simpos.h, smob.c, socket.c, socket.h, srcprop.c, srcprop.h,
stackchk.c, stackchk.h, stime.c, stime.h, strings.c, strings.h,
strop.c, strop.h, strorder.c, strorder.h, strports.c, strports.h,
struct.c, struct.h, symbols.c, symbols.h, tag.c, tag.h, unif.c,
unif.h, variable.c, variable.h, vectors.c, vectors.h, version.c,
version.h, vports.c, vports.h, weaks.c, weaks.h: Use SCM_P to
declare functions with prototypes. (Patch thanks to Marius
Vollmer.)
Jim Blandy [Mon, 14 Oct 1996 01:28:01 +0000 (01:28 +0000)]
* __scm.h, alist.c, alist.h, append.c, append.h, appinit.c,
arbiters.c, arbiters.h, async.c, async.h, boolean.c, boolean.h,
chars.c, chars.h, continuations.c, continuations.h, debug.c,
debug.h, dynwind.c, dynwind.h, eq.c, eq.h, error.c, eval.c,
eval.h, extchrs.c, extchrs.h, fdsocket.c, fdsocket.h, filesys.c,
filesys.h, fports.c, fports.h, gc.c, gdb_interface.h, gdbint.c,
gdbint.h, genio.c, genio.h, gscm.c, gscm.h, gsubr.c, gsubr.h,
hash.c, hash.h, hashtab.c, hashtab.h, init.c, ioext.c, ioext.h,
kw.c, kw.h, libguile.h, mallocs.c, mallocs.h, markers.c,
markers.h, mbstrings.c, mbstrings.h, numbers.c, numbers.h,
objprop.c, objprop.h, options.c, options.h, pairs.c, pairs.h,
ports.c, ports.h, posix.c, posix.h, print.c, print.h, procprop.c,
procprop.h, procs.c, procs.h, ramap.c, ramap.h, read.c, read.h,
root.c, scmsigs.c, scmsigs.h, sequences.c, sequences.h, simpos.c,
simpos.h, smob.c, socket.c, socket.h, srcprop.c, srcprop.h,
stackchk.c, stackchk.h, stime.c, stime.h, strings.c, strings.h,
strop.c, strop.h, strorder.c, strorder.h, strports.c, strports.h,
struct.c, struct.h, symbols.c, symbols.h, tag.c, tag.h, unif.c,
unif.h, variable.c, variable.h, vectors.c, vectors.h, version.c,
version.h, vports.c, vports.h, weaks.c, weaks.h: Use SCM_P to
declare functions with prototypes. (Patch thanks to Marius
Vollmer.)
More prototype-related changes from Marius Vollmer:
* gdb_interface.h: Wrapped header file in #ifdef/#endif
* gscm.h (gscm_run_scm): Added prototype for `initfn' paramter.
* ports.h (ptobfuns): Added prototypes. This means some casting in
fports.c.
* fports.c: Added casts for initializations, since the functions
are defined to take FILE * as their stream argument, not SCM.
* fdsocket.c, fdsocket.h: Made `init_addr_buffer' static.
* genio.c (scm_gen_puts): Changed `unsigned char *str_data' parameter
to `char *str_data' to conform to prototype.
Jim Blandy [Mon, 14 Oct 1996 00:58:55 +0000 (00:58 +0000)]
*** empty log message ***
Jim Blandy [Mon, 14 Oct 1996 00:58:30 +0000 (00:58 +0000)]
* eval.c (scm_nconc2last): Don't accept an empty list; apply must
be given at least two arguments. Insist that lst's last element
be a list, but don't make any requirements of its predecessors.
Gary Houston [Sat, 12 Oct 1996 21:59:40 +0000 (21:59 +0000)]
* error.c, eval.c, load.c, stackchk.c: use scm_error not lgh_error.
* __scm.h (lgh_error): removed, lgh shouldn't be in libguile.
* stime.c, stime.h: use SCM_P method.
Jim Blandy [Fri, 11 Oct 1996 20:14:11 +0000 (20:14 +0000)]
*** empty log message ***
Jim Blandy [Fri, 11 Oct 1996 08:59:59 +0000 (08:59 +0000)]
*** empty log message ***
Jim Blandy [Fri, 11 Oct 1996 08:59:38 +0000 (08:59 +0000)]
* eval.c (scm_nconc2last): Revert last change; there seems to be
other stuff going on here.
Jim Blandy [Fri, 11 Oct 1996 07:58:43 +0000 (07:58 +0000)]
*** empty log message ***
Jim Blandy [Fri, 11 Oct 1996 07:58:13 +0000 (07:58 +0000)]
* vectors.c (scm_make_vector): Fill vectors with the undefined
value, to help make Guile Scheme code more portable to other
Schemes.
Jim Blandy [Fri, 11 Oct 1996 07:58:00 +0000 (07:58 +0000)]
* unif.c (scm_ra_set_contp): Localize `inc' declaration.
Clarifies flow.
Jim Blandy [Fri, 11 Oct 1996 07:57:35 +0000 (07:57 +0000)]
* symbols.c (scm_intern_obarray_soft, scm_sysintern): Doc fixes.
* symbols.h, tags.h: Doc fixes.
Jim Blandy [Fri, 11 Oct 1996 07:56:34 +0000 (07:56 +0000)]
* struct.c (scm_make_struct, scm_make_vtable_vtable): Use the
symbolic name for the tag, scm_tc3_cons_gloc, instead of just
saying "1".
Jim Blandy [Fri, 11 Oct 1996 07:56:11 +0000 (07:56 +0000)]
* eval.c (scm_nconc2last): Make sure that each element of lst
(which is a list of argument lists, except for the tail) is a
proper list, i.e., finite and terminated by '().