Right now, we're using the Adams, Hollenbeck, Might trick of encoding parser memoization directly on the Parser instance using vars. This is extremely cool and efficient-like and stuff, but it appears to be causing problems with simultaneous use of the same parser across multiple threads, even just in the test suite. I had originally thought that this would only cause problems in so far as it would make things less efficient (effectively a cache miss), but it seems to be affecting the correctness of the algorithm
Right now, we're using the Adams, Hollenbeck, Might trick of encoding parser memoization directly on the
Parser
instance using vars. This is extremely cool and efficient-like and stuff, but it appears to be causing problems with simultaneous use of the same parser across multiple threads, even just in the test suite. I had originally thought that this would only cause problems in so far as it would make things less efficient (effectively a cache miss), but it seems to be affecting the correctness of the algorithm