Commit Graph

175 Commits (2896ea5eeb96e7e915b97b050cea87f5bd920fd2)
 

Author SHA1 Message Date
Jack Firth 2896ea5eeb Use `match-define` 3 years ago
Jack Firth c339773860 Run Resyntax again 3 years ago
Jack Firth 14949f8241 Add new grammar API and Earley parser 3 years ago
Jack Firth 5c953a3d08 Use `hash-update!` 3 years ago
Jack Firth dea323686f Revert "Use `hash-update!` where possible"
This reverts commit 43d9632859.
3 years ago
Jack Firth 43d9632859 Use `hash-update!` where possible 3 years ago
Jack Firth 138c11b908 Get rid of unnecessary lambdas in `hash-ref` calls 3 years ago
Jack Firth d1c41aece2 Add another missing import 3 years ago
Jack Firth 9bee9b98c4 Add missing imports 3 years ago
Jack Firth 8e87b541e1 Use `append-map` where possible 3 years ago
Jack Firth e9bb15e9d5 Use `'()` instead of `null` 3 years ago
Jack Firth 0d423ff56e Run `resyntax` again 3 years ago
Jack Firth b97a41c8ef Get rid of the `grammar%` class
Also, get rid of some dead code.
3 years ago
Jack Firth 19320eb0e2 Move all grammar method logic into functions 3 years ago
Jack Firth fc61543f29 Make a grammar struct
The grammar class delegates to it for now. Eventually I'll remove the class.
3 years ago
Jack Firth c588b40a23 Fix indentation 3 years ago
Jack Firth bd8fd280f6 Fix deps 3 years ago
Jack Firth 39505951ea Reorganize imports and exports of `grammar.rkt` 3 years ago
Jack Firth b5d3b102f8 Delete the yacc conversion code
I don't have any intention of using or maintaining this.
3 years ago
Jack Firth 9d48ab7152 Run `resyntax` over everything 3 years ago
Jack Firth e18a3399fe Add new token API
Eventually this will replace the other ones, hopefully.
3 years ago
Jack Firth d33149d20b Use `syntax-parse` in `support.rkt` 3 years ago
Jack Firth a20f1b5a32 Get rid of `#:inspector` declarations
Mutable structs instead use the default (current inspector instead of a new child inspector) and immutable structs instead are transparent.
3 years ago
Jack Firth 9c78ffcc05 Use `struct` instead of `define-struct` 3 years ago
Jack Firth 121c26450e Fix more module imports 3 years ago
Jack Firth d7e5b10fe0 Use `convert-compile-time-error` in error tests 3 years ago
Jack Firth 1a2df4295e
Merge pull request #1 from jackfirth/fork
Fork brag into a new package called `yaragg`.
3 years ago
Jack Firth dbebeb54d8 Remove runtime dependency on rackunit 3 years ago
Jack Firth e7415fc690 Use test submodules for yaragg lang tests 3 years ago
Jack Firth 5a90bb6551 Only bother testing stable version 3 years ago
Jack Firth 909092f41e Use racket modules instead of scheme modules
Also remove some unnecessary imports.
3 years ago
Jack Firth ede85ad60b Fix parse error tests
They were broken because changing the language name from `brag` to `yaragg` changed the source positions of some error messages.
3 years ago
Jack Firth 2786491af1 Remove unnecessary dependencies 3 years ago
Jack Firth 275032d6c1 Remove unnecessary `compile-omit-paths` info 3 years ago
Jack Firth bbbd2fb9b1 Fix scribblings info 3 years ago
Jack Firth 691a084232 Fix some module name changes 3 years ago
Jack Firth 457d29471c Consolidate into one package 3 years ago
Jack Firth 6c0930207f Move `yaragg-parser-tools` collection to `yaragg/parser-tools` 3 years ago
Jack Firth aa5a5ab533 Fix incorrect module name 3 years ago
Jack Firth d08127cef1 Fix CI config 3 years ago
Jack Firth 6c73ec6f13 More renaming 3 years ago
Jack Firth 386052ac68 Rename project to `yaragg`. 3 years ago
Jack Firth 36306b57d4 Fix CI badge link 3 years ago
Jack Firth 8feed88328 Use collection-based module paths in parser-tools 3 years ago
Jack Firth add6832116 Update CI config 3 years ago
Jack Firth db7fa0e156 Copy parser tools packages into this repo 3 years ago
Jack Firth ab8a7437a9 Use collection-based module paths 3 years ago
Jack Firth 574fe215ea Remove reader dependency on enclosing module 3 years ago
Matthew Flatt f52c2a80c9
update pkg dependencies to list syntax-color-lib (#33) 3 years ago
Matthew Butterick 81f4fd25e7
lex double-quoted strings with Racket lexer (#32)
Follow up on an idea in #31: use the Racket lexer to lex double-quoted strings in a grammar, thereby giving them all the semantics of Racket strings, and preventing any corner cases. This solution can’t be extended to single-quoted strings, however, because even with readtable tomfoolery to recognize a single quote as an opening delimiter for a string, the string still needs to be closed with a double quote. (I don’t know why this should be so, but it is the documented behavior.) Therefore single-quoted strings still are subject to the homegrown lexing solution and the flaws therein. Still, I don’t see that single-quoted strings have ever been a documented feature of brag (or its predecessor ragg). Perhaps they could be dropped altogether. For now, this solution is satisfying, because double-quoted strings are the dominant notation, and this PR will make them as good as they can be.
3 years ago