What's Changed
- website: parse playground snippets once per run by @davydog187 in #402
- Fix unbounded recursion on cyclic tables at the eval boundary by @fedme in #407
- lexer: slice tokens from the source binary; drop per-char position maps by @davydog187 in #399
- compiler: key scope resolution by node id and dedupe upvalue descriptors by @davydog187 in #400
- vm: cut per-call and per-iteration overhead in the dispatcher by @davydog187 in #401
- runtime: memoize the default VM template; build stdlib tables one-shot by @davydog187 in #398
- compiler: stamp node ids once, at compile time by @davydog187 in #416
- compiler: peephole pass with fused and constant opcodes by @davydog187 in #403
- vm: cheaper call convention — one-allocation register files, static-arity opcodes, call_self fusion by @davydog187 in #405
- fix(pattern): honour ^ anchor in gsub and literal caret in gmatch by @smn in #406
- fix(parser): allow comments between a bare return and its terminator by @smn in #418
- release: 1.0.2 by @davydog187 in #419
- bench: cross-version benchmarks for v0.4.0, v1.0.0 and v1.0.2 by @davydog187 in #420
New Contributors
Full Changelog: v1.0.1...v1.0.2