This repository was archived by the owner on Apr 8, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 19
This repository was archived by the owner on Apr 8, 2024. It is now read-only.
Post a list of useful/interesting links? #8
Copy link
Copy link
Closed
Description
I think it would be useful to post a list of relevant links somewhere (like the README or wiki or wherever), for people wanting to learn more.
I'll dump some that I'm thinking about. If agreed, please add to the list and it can be posted somewhere.
Previous/existing grammars and rust parsers:
- The truth: https://github.com/rust-lang/rust/tree/master/src/libsyntax
- The reference: https://github.com/rust-lang-nursery/reference/
- The old grammar: https://doc.rust-lang.org/nightly/grammar.html (src)
- The old ANTLR grammar (removed): https://github.com/rust-lang/rust/tree/12e76e24cc1466ffb2bd37cc7652a6dd7ba15735/src/grammar
- Old flex/bison grammar (outdated): https://github.com/rust-lang/rust/tree/master/src/grammar
- Intellij's parser: https://github.com/intellij-rust/intellij-rust/blob/master/src/main/grammars/RustParser.bnf
- jorendorff's ANTLR grammar: https://github.com/jorendorff/rust-grammar/
- Niko's rustypop: https://github.com/nikomatsakis/rustypop
- Haskell parser: https://github.com/harpocrates/language-rust/blob/master/src/Language/Rust/Parser/Internal.y
RFCs:
- RFC: https://github.com/rust-lang/rfcs/blob/master/text/1331-grammar-is-canonical.md
- RFC tracker: Canonical Rust grammar distinct from parser (tracking issue for RFC #1331) rust#30942
- Original RFC discussion with interesting stuff: src/grammar for the canonical grammar of the Rust language rfcs#1331
I also have a bunch of links about specific issues (like RFCs that have changed the syntax over time), but may be too specific/outdated?
Grammar Testing:
See #5.
Parsing projects:
- https://github.com/CAD97/gll-rust
- https://github.com/lykenware/gll/
- Lossless syntax tree: https://github.com/matklad/rowan/
- New front-end rust parser: https://github.com/matklad/rust-analyzer/
Metadata
Metadata
Assignees
Labels
No labels