xo-interpreter2 stack: work on apply for closures [WIP]

This commit is contained in:
Roland Conybeare 2026-02-12 20:09:22 -05:00
commit fd0e5613dd
8 changed files with 47 additions and 27 deletions

View file

@ -26,15 +26,15 @@ namespace xo {
/** @defgroup scm-localenv-constructors constructors **/
///@{
/** empty instance with parent @p p for variables in @p symtab **/
/** create instance with parent @p p for variables in @p symtab **/
DLocalEnv(DLocalEnv * parent,
DLocalSymtab * symtab,
DArray * args);
static DLocalEnv * _make_empty(obj<AAllocator> mm,
DLocalEnv * parent,
DLocalSymtab * symtab,
DArray * args);
static DLocalEnv * _make(obj<AAllocator> mm,
DLocalEnv * parent,
DLocalSymtab * symtab,
DArray * args);
///@}
/** @defgroup scm-local-env-methods methods **/

View file

@ -24,6 +24,7 @@ namespace xo {
DVsmRcx(VirtualSchematikaMachine * vsm);
obj<AAllocator> allocator() const noexcept;
obj<AAllocator> error_allocator() const noexcept;
private:
/** schematika interpreter **/

View file

@ -31,7 +31,7 @@ namespace xo {
/** Configuration for error allocator
* TODO: may want to make ArenaConfig polymorphic
**/
ArenaConfig error_config_ = ArenaConfig().with_size(64*1024);
ArenaConfig error_config_ = ArenaConfig().with_name("error-reserve").with_size(64*1024);
};
} /*namespace scm*/
} /*namespace xo*/