Commit Graph

8 Commits (5a3315d6e8ba8776a1762c16e68803a943b10bfe)

Author SHA1 Message Date
Jack Firth e5d7cab7cb Rework the grammar APIs
- Make symbol kind mismatches trigger contract errors in more places.
- Add a notion of "flat" grammars and "normal" grammars, where normal grammars can have recursive expressions for their substitution instead of just a list of symbols.
3 years ago
Jack Firth 60a142f90c Move symbols into their own module too 3 years ago
Jack Firth ac5370f26a Fix an argument name 3 years ago
Jack Firth fa72938368 Derive datum and syntax parsers together 3 years ago
Jack Firth 2e53bca272 Unify syntax/datum labels as semantic actions 3 years ago
Jack Firth 31174e67f4 Add support for cuts and splices 3 years ago
Jack Firth 2300abf00c Clarify that grammars are context-free 3 years ago
Jack Firth c65391f703 Add a parser API 3 years ago