All implementation including tokenlizer, AST builder, compiler, optimizer(TODO), and VM executer is simple and easy to debug, so I called this library ezjs.
An completed example is a repl ( src/bin/repl.rs), which including a hookable extention struct.
The function compile string to bytecode of Virtual Machone. If some erros happens, return it with errpr message in a Resut.
Print all bytecode of Function object, whith internal data.
Create an new JsRuntime struct of ezjs, which execute byte of VMFunction. All internal members are open and defined in runtime.rs.
Run bytecode of VMFunction with a runtime, and return the result sharedvalue. See more info via repl example.