Hi, I have a patch that further "despaghettifies" the evaluator, as Han-Wen would say. ;-) It adds two files, `eval-memoize.i.c' and `eval-unmemoize.i.c', and moves memoizers in the former and unmemoizers in the latter. Thus, the functions that end up in these files are:
* `eval-memoize.i.c' c_improper_memq, canonicalize_define, memoize_as_thunk_prototype, m_body, m_expand_body, scm_m_begin, scm_m_case, scm_m_cond, scm_m_define, scm_m_delay, scm_m_future, scm_m_do, scm_m_if, scm_m_lambda, check_bindings, transform_bindings, memoize_named_let, scm_m_let, scm_m_letrec, scm_m_letstar, scm_m_and, scm_m_or, iqq, scm_m_quasiquote, scm_m_quote, scm_m_set_x, scm_m_apply, scm_m_atbind, scm_m_cont, scm_m_at_call_with_values, scm_m_generalized_set_x, scm_m_atslot_ref, scm_m_atslot_set_x, scm_m_nil_cond, scm_m_atfop, scm_m_expand_body, scm_m_undefine, scm_macroexp * `eval-unmemoize.i.c' unmemoize_expression, unmemoize_exprs, unmemoize_and, unmemoize_begin, unmemoize_case, unmemoize_cond, unmemoize_delay, unmemoize_do, unmemoize_if, unmemoize_lambda, build_binding_list, unmemoize_let, unmemoize_letrec, unmemoize_letstar, unmemoize_or, unmemoize_quote, unmemoize_set_x, unmemoize_apply, unmemoize_atcall_cc, unmemoize_at_call_with_values, unmemoize_future, unmemoize_atslot_ref, unmemoize_atslot_set_x, unmemoize_builtin_macro, scm_i_unmemocopy_expr, scm_i_unmemocopy_body, scm_unmemocar It does nothing beside this, so it should be harmless. Ok to commit? Thanks, Ludovic. _______________________________________________ Guile-devel mailing list Guile-devel@gnu.org http://lists.gnu.org/mailman/listinfo/guile-devel