bamts-runtime 0.1.0

Execution runtime and built-in intrinsics for BamTS
Documentation

Deterministic register interpreter for verified production BamTS bytecode.

Persisted constants never carry runtime identity. This interpreter therefore owns a slot heap for strings, bigints, objects, arrays, closures, private names, regular expressions, and iterators, and exposes only bamts_native::Value words at host boundaries. Bytecode heap slots use segment 1; other segments remain host-owned.

The 36-op dynamic-computation ISA is executed locally: register-keyed property access (with data properties, accessor descriptors, and private-name identity), prototype chains, closures with explicit capture environments, arguments arrays, this/arguments/new.target, globals, arrays with spread, object spread, iterators (sync/async/keys) with the two-write IteratorNext, and generator/async Suspend-resume. The [Host] trait owns only external module and builtin operations (foreign calls/constructs, foreign property access, import, export, and the suspension driver); internal objects, arrays, functions, closures, prototypes, and private names never leave the interpreter.