mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-05-20 11:40:18 +02:00
Convert primitive-eval to "compile" its expressions to linked closures
* libguile/memoize.c (memoize): Fix meta on subsequent case-lambda clauses. * module/ice-9/eval.scm (primitive-eval): Rewrite to compile expressions to thunks, to avoid runtime dispatch cost.
This commit is contained in:
parent
dc33a94502
commit
95de4f52a8
2 changed files with 518 additions and 473 deletions
|
@ -574,7 +574,7 @@ memoize (SCM exp, SCM env)
|
|||
SCM_BOOL_F);
|
||||
|
||||
return MAKMEMO_LAMBDA (memoize (body, new_env), arity,
|
||||
SCM_BOOL_F /* meta, filled in later */);
|
||||
SCM_EOL /* meta, filled in later */);
|
||||
}
|
||||
|
||||
case SCM_EXPANDED_LET:
|
||||
|
|
File diff suppressed because it is too large
Load diff
Loading…
Add table
Add a link
Reference in a new issue