There was a performance gain (if I remember correctly, somewhere between 10-15x) going from my first parser to the second parser pre-grammar rewrite; the only differences between the two was a functional style vs. an imperative style. But the new performance gains in the grammar rewrite might dwarf the performance gain in this specific case. I'll profile to find out!