1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-02 04:40:29 +02:00
Commit graph

1346 commits

Author SHA1 Message Date
Mikael Djurfeldt
f28b85f29a * init.c (scm_boot_guile_1): Call scm_init_guardian. 1998-12-23 05:55:15 +00:00
Mikael Djurfeldt
79e3f9e250 * gc.h (SCM_MARKEDP, SCM_NMARKEDP): New macros. 1998-12-23 05:55:01 +00:00
Mikael Djurfeldt
0493cd8974 * gc.c (scm_igc): Call scm_guardian_gc_init and
scm_guardian_zombify.
1998-12-23 05:54:47 +00:00
Mikael Djurfeldt
e98f3cf2c6 * Makefile.am: New files: guardians.c, guardians.x, guardians.h 1998-12-23 05:54:24 +00:00
Mikael Djurfeldt
ba4ee0d6b1 *** empty log message *** 1998-12-23 05:53:18 +00:00
Mikael Djurfeldt
d0c2c0c04c *** empty log message *** 1998-12-19 03:36:50 +00:00
Mikael Djurfeldt
8499074bcc * macros.c (scm_makacro, scm_makmacro, scm_makmmacro): Added
argument checking.
1998-12-19 03:35:51 +00:00
Mikael Djurfeldt
7f0a6a6946 *** empty log message *** 1998-12-16 08:13:41 +00:00
Mikael Djurfeldt
f40f662e9c Move the procedure slots of entities to invisible slots (so that
we can have operator class objects which themselves are entities).
* struct.h (scm_struct_i_proc, scm_struct_i_flags,
SCM_STRUCTF_ENTITY): New constants.
* struct.c, struct.h (scm_alloc_struct): Renamed from alloc_struct
and made global.
(scm_struct_init): Renamed from init_struct and made global.
1998-12-16 08:08:07 +00:00
Mikael Djurfeldt
a5bfe84db4 * struct.c (scm_make_struct): Allocate "invisible" room for
procedures if SCM_STRUCTF_ENTITY is set in vtable.
* struct.c, struct.h (scm_alloc_struct): Renamed from alloc_struct
and made global.
(scm_struct_init): Renamed from init_struct and made global.
1998-12-16 08:07:36 +00:00
Mikael Djurfeldt
82fe8ff1e2 * objects.h (SCM_ENTITY, scm_entity): Removed.
(SCM_ENTITY_PROC_0, SCM_ENTITY_PROC_0, SCM_ENTITY_PROC_0,
SCM_ENTITY_PROC_3): Adjusted for new location of procedure slots.
1998-12-16 08:06:50 +00:00
Mikael Djurfeldt
aa0761ec4f * gc.c (scm_gc_mark): Mark entity procedures. 1998-12-16 08:06:11 +00:00
Maciej Stachowiak
b8229a3bab * snarf.h (SCM_SYNTAX): New macro to allow convenient declaration of
syntactic forms, similar to SCM_PROC.
* debug.c, eval.c, evalext.c: use SCM_SYNTAX to declare all special
forms, and SCM_SYMBOL or SCM_GLOBAL_SYMBOL to delcare C variables for
the name symbols when needed.
1998-12-14 15:19:59 +00:00
Jim Blandy
257665b528 * Makefile.in: Regenerated. 1998-12-14 10:06:05 +00:00
Jim Blandy
333a479127 *** empty log message *** 1998-12-14 10:06:04 +00:00
Jim Blandy
715fad681a *** empty log message *** 1998-12-09 09:28:47 +00:00
Mikael Djurfeldt
ea633082e5 Formatting 1998-12-09 03:50:49 +00:00
Mikael Djurfeldt
67ad463a02 *** empty log message *** 1998-12-07 16:50:33 +00:00
Mikael Djurfeldt
dba2ab4994 * ramap.c (array-copy-in-order!, array-map-in-order): New names.
Replaces old names serial-array-copy! and serial-array-map!.
1998-12-07 16:48:56 +00:00
Mikael Djurfeldt
285302e107 * evalext.c (map-in-order): New name. Replaces serial-map. 1998-12-07 16:48:35 +00:00
Jim Blandy
f233316662 * pairs.h (SCM_NEWCELL): When DEBUG_FREELIST is defined, don't
take the address of _into; it might be a register.  Just have
scm_debug_newcell return the new cell.
* gc.c (scm_debug_newcell): Just return the new cell, instead of
taking the address of a place to store it as an argument.
* gc.h (scm_debug_newcell): Change declaration.
(Thanks to Greg Harvey.)
1998-12-05 18:52:15 +00:00
Jim Blandy
67ea079d85 *** empty log message *** 1998-12-05 16:55:41 +00:00
Jim Blandy
ceef320834 * smob.c (freeprint): New function.
(freecell): Use it to print freed objects, for slightly easier
debugging.
1998-12-05 16:52:34 +00:00
Mikael Djurfeldt
6ab397f48e *** empty log message *** 1998-12-04 11:41:18 +00:00
Mikael Djurfeldt
2e9d6c6d3c * backtrace.c (display_frame): Made more robust. Doesn't throw an
error if no source properties can be found for a frame.  (Thanks
to Christian Lynbech.)
1998-12-04 11:41:03 +00:00
Mikael Djurfeldt
afae5cbdcb *** empty log message *** 1998-11-26 18:05:20 +00:00
Mikael Djurfeldt
aa3bdf59ac * objects.h: Removed slots direct_supers and direct_slots from the
definitions of the rudimentary classes described by objects.h.
* objects.c, objects.h (scm_entity_p): New procedure.  Together
with the predicates scm_procedure_p and scm_struct_p, this
predicate makes it possible to differ between structs, entities
and operators.
1998-11-26 18:04:33 +00:00
Mikael Djurfeldt
19c0dec231 * objects.c, objects.h (scm_entity_p): New procedure. Together
with the predicates scm_procedure_p and scm_struct_p, this
predicate makes it possible to differ between structs, entities
and operators.
1998-11-26 18:03:02 +00:00
Mikael Djurfeldt
90184345a0 * modules.c, modules.h (scm_resolve_module): New function. 1998-11-26 17:59:15 +00:00
Mikael Djurfeldt
3763ac3c74 *** empty log message *** 1998-11-26 08:42:27 +00:00
Mikael Djurfeldt
91517e28d1 * procprop.c (scm_i_procedure_arity): Bugfix: Return correct value
for asubrs, rpsubrs, lsubrs and lsubr_2s.
1998-11-26 08:33:49 +00:00
Mikael Djurfeldt
f6b250bdde fix 1998-11-26 08:33:38 +00:00
Mikael Djurfeldt
0d2e4c1bec *** empty log message *** 1998-11-26 07:58:53 +00:00
Mikael Djurfeldt
03d1ed6f37 * procprop.h (scm_i_procedure_arity): Added declaration. 1998-11-26 07:44:53 +00:00
Mikael Djurfeldt
089067091c * procprop.c (scm_i_procedure_arity): Made global; New code to
handle operators and entities.
(scm_procedure_property): No need to call scm_procedure_p since
scm_i_procedure_arity now does all necessary type checking.
Added #include "objects.h".
1998-11-26 07:44:35 +00:00
Mikael Djurfeldt
e845cb8486 * feature.c, feature.h (scm_reset_hook_x): New procedure.
(scm_make_hook): Optional argument defines number of arguments to
the hook.
(scm_make_named_hook): Take number of args as second arg.
(scm_run_hook): Renamed from scm_run_hooks (old name kept for a
while); First arg is the hook.  The rest are arguments passed on
to the hook procedures.
1998-11-26 07:44:22 +00:00
Mikael Djurfeldt
b90d369ecf * feature.c (scm_remove_hook_x): Bugfix: Changed reference to
s_add_hook_x --> s_remove_hook_x.
(scm_add_hook_x, scm_remove_hook_x): Hooks now takes arguments.
Added #include "procprop.h"
* feature.c, feature.h (scm_reset_hook_x): New procedure.
(scm_make_hook): Optional argument defines number of arguments to
the hook.
(scm_make_named_hook): Take number of args as second arg.
(scm_run_hook): Renamed from scm_run_hooks (old name kept for a
while); First arg is the hook.  The rest are arguments passed on
to the hook procedures.
1998-11-26 07:44:09 +00:00
Jim Blandy
69c6acbb74 *** empty log message *** 1998-11-23 10:27:27 +00:00
Jim Blandy
7217f8167c * numbers.c (scm_logand, scm_logior, scm_logxor, scm_logtest,
scm_logbit_p): Do the computation in ulongs.  This is not as nice
as doing it in bignums, but at least it's good enough for
manipulating flags in 32-bit words.  (Thanks to Jim Wilson.)
1998-11-23 10:24:35 +00:00
Jim Blandy
7c7471d93b * regex-posix.c (scm_regexp_exec): Reliably mark unmatched
subexpressions.  (Thanks to Charbel Jacquin.)
1998-11-23 10:24:09 +00:00
Mikael Djurfeldt
a56eeb4674 *** empty log message *** 1998-11-23 02:39:47 +00:00
Mikael Djurfeldt
281004cc98 * modules.c (scm_make_module): Beautify the module. 1998-11-23 02:35:11 +00:00
Mikael Djurfeldt
1330700c7d * feature.c, feature.h (scm_make_hook, scm_add_hook_x,
scm_remove_hook_x, scm_run_hooks): Moved from ice-9/boot-9.scm.
(scm_make_named_hook): New function.
* feature.c: Added #include "eval.h".
1998-11-23 02:34:49 +00:00
Mikael Djurfeldt
7e41462735 *** empty log message *** 1998-11-22 12:06:41 +00:00
Mikael Djurfeldt
4b07a787e3 Updated 1998-11-22 12:05:35 +00:00
Mikael Djurfeldt
1ffa265b7c * modules.c, modules.h: New files: C interface to modules. (This
is necessary in order to interface the object system to Guile
properly.  The guts of these modules will be replaced by the new
module system in the future.)
1998-11-22 12:05:14 +00:00
Mikael Djurfeldt
345acb3967 * init.c: Added #include "modules.h"
(scm_boot_guile_1): Call scm_init_modules.
(invoke_main_func): Call scm_post_boot_init_modules.
1998-11-22 12:04:27 +00:00
Mikael Djurfeldt
bafece68d3 * Makefile.am: Added modules.c, modules.x, modules.h. 1998-11-22 12:04:00 +00:00
Mikael Djurfeldt
17621f3e37 *** empty log message *** 1998-11-21 17:02:36 +00:00
Mikael Djurfeldt
bdc88419bd * procs.c: #include "objects.h"
(scm_procedure_p): Return #t also on structs which are operators.
1998-11-21 17:01:48 +00:00