xo-interpreter2 stack: apply user-defined lambda passes utest

This commit is contained in:
Roland Conybeare 2026-02-13 16:06:19 -05:00
commit cc98f515bd
7 changed files with 48 additions and 21 deletions

View file

@ -30,11 +30,11 @@ namespace xo {
/** create instance, using memory from @p mm **/
static DVsmApplyClosureFrame * make(obj<AAllocator> mm,
obj<AGCObject> stack,
obj<AGCObject> parent,
VsmInstr cont,
DLocalEnv * env);
obj<AGCObject> stack() const { return stack_; }
obj<AGCObject> parent() const { return stack_; }
VsmInstr cont() const { return cont_; }
DLocalEnv * local_env() const { return local_env_; }

View file

@ -185,7 +185,7 @@ namespace xo {
* (specifically: local_env_, stack_, cont_)
* after invoking a schematika closure
**/
void _do_applycoda_op();
void _do_apply_cont_op();
/** loop continuation after evaluating element of a SequenceExpr **/
void _do_seq_cont_op();

View file

@ -18,8 +18,8 @@ namespace xo {
static VsmInstr c_apply;
static VsmInstr c_evalargs;
/** restore registers after calling a schematika closure **/
static VsmInstr c_applycoda;
/** proceed to continuation after an ApplyExpr **/
static VsmInstr c_apply_cont;
/** loop to evaluate members of a SequenceExpr **/
static VsmInstr c_seq_cont;

View file

@ -31,7 +31,7 @@ namespace xo {
/** Coda to restore vsm registers (local_env, stack, cont)
* after invoking a closure
**/
applycoda,
apply_cont,
/** Loop over elements of a SequenceExpr **/
seq_cont,