-
Notifications
You must be signed in to change notification settings - Fork 139
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Parser-guided fuzzer #1077
Comments
Note: since the "grammar" here is implicit and generated on-the-fly during parsing, it's impossible to "balance" it ahead of time, something that is possible with a formal grammar: #1062 |
Note: performance regression is a concern here, since we are hiding Token.Type and Token.Value behind a "getter" function call, where they were previously just plain data. I will run the benchmarks and post the results here for further discussion. |
Placing Token behind an interface caused no noticeable loss in performance, even with grammar-checking enabled at runtime. |
This is blocked on subtask #1094 |
Deprecating this ticket in favor of epic #1309. |
Issue To Be Solved
The grammar in docs/cadence.ebnf is not obviously correct, but not strictly necessary. We can have a parser-guided fuzzer, without a formal grammar, simply by refactoring the parser to specify which tokens it accepts, each time it asks the lexer for the next one.
Tasks
The text was updated successfully, but these errors were encountered: