Pre-compilation could potentially enable SSSE3, when the target the code is being installed on might not actually have it. In order to use more modern instruction sets, we need runtime detection. It's simpler just to rely on the baseline...kddnewton (Kevin Newton)
@mame that looks really good. I think I may have overestimated how difficult it would be, but this seems like a really good solution. A future thing may be to trim down the Ruby::Prism API, since that now covers so much surface area. ...kddnewton (Kevin Newton)
Please don't do this. This is going to start impacting &&= and ||=, which already have very complex semantics depending on what is on the left-hand side of the expression. This is going to be very difficult to reason about.kddnewton (Kevin Newton)
There are times when we don't need explicit order in a list of constants, namely when looking at names of captures in a pattern match and names of captures in a regular expression. In these cases it's better to be linear with respect to ...kddnewton (Kevin Newton)
A bunch of things are required to match ripper state, including looking backward sometimes to pull a state forward because of the nature of parse.y. This changes the structure from a backward look to a forward look by keeping a couple of...kddnewton (Kevin Newton)
The parse.y grammar has the concept of a words separator that must delimit words in a word list literal. Prism previously didn't emit these in the token stream because they don't actually correspond to any source code. However, in order...kddnewton (Kevin Newton)