syntax icon indicating copy to clipboard operation
syntax copied to clipboard

Syntactic analysis toolkit, language-agnostic parser generator.

Results 49 syntax issues
Sort by recently updated
recently updated
newest added

Despite the documentation recommending JSON for more complex Julia parsers, [the only complex Julia parser I could find here](https://github.com/DmitrySoshnikov/syntax/blob/master/examples/letter.jl.bnf) is written in the BISON/YACC format. Makes it harder to confirm...

Per Python's regular expressions documentation [here](https://docs.python.org/3/library/re.html), if we want Python re's to have the same escaping rules as other langs we need to prepend the strings with 'r' for raw....

``` /Users/michaelheuberger/code/(example dir removed) ❯❯❯ npx syntax-cli -v feature/DASH-905 ✭ ✚ ✱ ═ ◼ node:internal/modules/cjs/loader:936 throw err; ^ Error: Cannot find module '../package.json' ... ```

C:\dev\@compiler\grammar>type letter.bnf %lex %% \d+ return 'NUMBER' /lex %% E : E '+' t | t ; T : T '*' F | F ; F : NUMBER ; C:\dev\@compiler\grammar>syntax-cli...

The affected code is located in [grammar.js-line191](https://github.com/DmitrySoshnikov/syntax/blob/master/src/grammar/grammar.js#L191). It uses the vulnerable regular expression `'(\\.|[^'\\])*'`. When the match fails, it will cause catastrophic backtracking. I generate PoC using the python script...

Thanks for responding to my tweet! Just opening this ticket to start a discussion of implementing PEG parsing mode. Side note, you could enable the discussions section to have an...

Is there any, or a plugin planned for it?

Hi, I am currently trying to implement a parser in Rust using Syntax, but when I run Syntax with the `--loc` option `rustc` just complains that it cannot find a...

We should support IELR parsing mode. Some details: - https://www.sciencedirect.com/science/article/pii/S0167642309001191?via%3Dihub - https://cs.stackexchange.com/questions/3461/what-is-an-ielr1-parser/99463#99463

Currently "global" variables like `yytext`, `yyleng`, `$$`, etc. are implemented either as module-level variables (in JS), or static class variables (in some plugins, C#, PHP, etc). This makes parsing several...