mirror of
https://github.com/vosen/ZLUDA.git
synced 2025-07-25 13:16:23 +03:00
779 B
779 B
I'm convinced nobody actually uses parser generators in Rust:
- pomelo can't generate lexer (understandable, as it is a port of lemon and lemon can't do this either)
- pest can't do parse actions, you have to convert your parse tree to ast manually
- lalrpop can't do comments
- and the day I wrote the line above it can
- reports parsing errors as byte offsets
- if you want to skip parsing one of the alternatives functional design gets quite awkward
- antlr4rust is untried and requires java to build
- no library supports island grammars
What to emit?
- SPIR-V
- Better library support, easier to emit
- Can by optimized by IGC
- Can't do some things (not sure what exactly yet)
- But we can work around things with inline VISA
- VISA
- Quicker compilation