V0.5馃
Most of changes comes from here!
- statements are compiled once into Stmt objects
- expressions are parsed once and cached
- execution uses a dispatch table instead of repeated regex-heavy branching
- function bodies are compiled once too
- exec is still used only for ! Python blocks, because that feature is literally executing Python
- Fixed Bugs
And a concrete benchmark from this environment for the built in 10000 iteration test:
- time: 0.021500s
- peak memory: 0.00 MiB reported by tracemalloc for that tiny program
Added command's of:
python vulpin_opt.py app.vulpython vulpin_opt.py --selftestpython vulpin_opt.py --bench 10000