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

Currently lookbehind assertions do not work, since `^` is inserted at the beginning of the whole regexp (tokenizer applies all regexes from the beginning of the rest of a string)....

Currently tokenizer automatically add `^` at the beginning of all regexes. Some regexes, e.g. _lookbehind assertions_, can use it explicitly: ``` '/(?

Some tools may need to analyze original source code corresponding to AST nodes (combined with node locations, it is possible to get a substring of a node in the source...

Currently code is not statically type-checked. We can use [Flow](https://flowtype.org/) to provide static type safety.

Currently one have to explicitly define an optional rule as: ``` Foo : Bar OptBaz ; OptBaz : Baz | /* empty */ ; ``` This makes it inconvenient to...

Calculating an LALR(1) by compressing from CLR(1) for a big grammar can take some time. It'd be good to log each steps making calculation more interactive. Potentially this may also...

Currently a lex rule handler returns only a token type (potentially modifying `yytext`), E.g. ```js [`[0-9]+`, `yytext = yytext.slice(1); return 'NUMBER';`] ``` In this case `"100"` would result to: ```js...

Currently there is no way to refer a specific matched group in the lex rule handler. We need to support them as variables: `$1`, `$2`, etc. Example: ```js [`\\n( *)`,...

Lexical grammar can already be specified as a separate file, however at code generation a tokenizer is always embedded into the generated parser file. We need to support generating a...