Conversation

LALRPOP: Mature, good error messages, generates LALR(1). Mine: Prototype, terrible error messages, generates canonical LR(1). I'm using mine as a research device and for learning. I will be implementing GLR, good errors + error recovery etc.
1
1
Very interesting post! I think I agree that lossless parse trees are a good idea and semantic actions feel like a "layering violation". tree-sitter gets this right. I should probably implement a mode in my parser generator to disallow semantic actions and return lossless trees.
2
1