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

8602 commits

Author SHA1 Message Date
Mikael Djurfeldt
f872b8222c * numbers.c: Formatted according to Guile conventions;
Renamed s_bignum --> scm_s_bignum.
1999-01-10 07:38:39 +00:00
Mikael Djurfeldt
34f74fe1cc * numbers.h: Added #include "libguile/print.h". 1999-01-10 07:38:05 +00:00
Mikael Djurfeldt
7688430d05 Correction of mistake (should have committed onto a branch...) 1999-01-05 09:40:49 +00:00
Mikael Djurfeldt
98fae09612 *** empty log message *** 1999-01-05 09:25:59 +00:00
Mikael Djurfeldt
e1f2bf99e9 * guardians.c, guardians.h (scm_make_guardian,
scm_guardian_gc_init, scm_guardian_zombify, scm_guard,
scm_get_one_zombie, scm_init_guardian): This is an implementation
of guardians as described in R. Kent Dybvig, Carl Bruggeman, and
David Eby (1993) "Guardians in a Generation-Based Garbage
Collector" ACM SIGPLAN Conference on Programming Language Design
and Implementation, June 1993 ftp://ftp.cs.indiana.edu
/pub/scheme-repository/doc/pubs/guardians.ps.gz
Author: Michael	N. Livshin.
1998-12-23 06:38:06 +00:00
Mikael Djurfeldt
0c03eafd7b *** empty log message *** 1998-12-23 05:57:33 +00:00
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