xo-interpreter2 stack: lambda expr -> closure runs in VSM utest

This commit is contained in:
Roland Conybeare 2026-02-08 23:32:20 -05:00
commit 0170b8dacf
22 changed files with 358 additions and 73 deletions

View file

@ -10,6 +10,7 @@
namespace xo {
using xo::mm::AGCObject;
using xo::print::APrintable;
namespace scm {
@ -69,6 +70,24 @@ namespace xo {
return shallow_size();
}
// ----- printable facet -----
bool
DClosure::pretty(const ppindentinfo & ppii) const
{
obj<APrintable,DLambdaExpr> lambda_pr(const_cast<DLambdaExpr *>(lambda_));
obj<APrintable,DLocalEnv> env_pr(const_cast<DLocalEnv *>(env_));
bool lambda_present = lambda_pr;
bool env_present = env_pr;
return ppii.pps()->pretty_struct
(ppii,
"DClosure",
refrtag("lambda", lambda_pr, lambda_present),
refrtag("env", env_pr, env_present));
}
} /*namespace scm*/
} /*namespace xo*/