* modules.c: Use applicable smobs for eval closures instead of
authorKeisuke Nishida <kxn30@po.cwru.edu>
Sun, 10 Sep 2000 22:22:36 +0000 (22:22 +0000)
committerKeisuke Nishida <kxn30@po.cwru.edu>
Sun, 10 Sep 2000 22:22:36 +0000 (22:22 +0000)
commitfb43bf74e2a2131ec80bf9e71de2fddab7696ff7
tree2fbcba188edcf7d6d219300b1f2690d982a0825c
parent4c7cb8ba9447b5d51c88032b2b90eae618e2460e
* modules.c: Use applicable smobs for eval closures instead of
compiled closures.  Include "libguile/smob.h".
(f_eval_closure): Removed.
(scm_eval_closure_tag): New variable.
(scm_eval_closure_lookup): Renamed from eval_closure.
This function now takes a smob instead of a compiled closure.
(scm_standard_eval_closure): Create a smob instead of a compiled
closure.
(scm_init_modules): Initialize the eval closure type as a smob.
* modules.h (SCM_EVAL_CLOSURE_P): New macro.
(scm_eval_closure_tag, scm_eval_closure_lookup): Declare.
* symbols.c: Include "libguile/smob.h".
(scm_sym2vcell): Call scm_eval_closure_lookup directly if THUNK
is an eval closure.
libguile/modules.c
libguile/modules.h
libguile/symbols.c