43. Direct Calls of Plain Rules in the VMs
- As in the closure backend (change 38) and generated parsers (change 42), the recursive VM calls rules that are
never memoized in an ordinary parse and have no captures through
invokePlaindirectly, and the iterative VM starts them withplainCallFramewithout asking whether to memoize. - Effect (min of 10 interleaved runs, Apple M3 Max): both VMs 0.5–2.5% faster on full parses and 1.4–4.6% on recognition (JSON bytecode 12.2 → 11.7 ms).