Closed alex-ozdemir closed 4 years ago
Note: The Travis CI is broken. I believe that I've disabled it, and it will not affect future builds.
A few minor questions.
This is a really nice direction I think. I'm not very attached to the old lexing code :)
I'm not too familiar with
flex
, I assume adding this is a safe long-term decision?
flex has been around for a long time (we were using it when I was in grad school). It is probably the most popular open-source lexer. I think it's safe to depend on it.
Also, do you have any more detailed information on the speedup you are seeing?
It's not very rigorous, but hyperfine
reports that the new version is a bit faster. Log file attached.
I'm mostly just glad we're not slower this way.
LGTM, thanks again for adding this.
This PR introduces a flex-based lexer.
check
is still a combined parser and checker, but it doesn't have to do tokenization.This introduces flex as a build dependency.
I my benchmarks this actually gives a small speedup.