Nice contribution! Seems that you are using Lezer for handling the parsing. Multi-type parsers are a fascinating subject but I haven’t encountered many references to them either. It would be interesting to explore more projects or approaches in that area. Contributions are welcome!