Open
Description
We currently don't have a good solution for all of the below:
- module documentation rendering (for raku.land, the rakudoc CLI app, ...)
- a sound and maintainable LSP implementation
- syntax highlighting
There are several projects out there that provide partial solutions:
raku --doc
: Doesn't work with partially incorrect code (bad for LSP). Slow. Executes BEGIN blocks. Works for docs.raku.org, because we have control over the input. Bad idea for outside code like on raku.land.- Chroma syntax highlighter: The best OSS highlighter out there. Not written in Raku. Only a highlighter, no use for information extraction.
- Comma: Exactly the parser we'd need. But it's not written in Raku and coupled to IntelliJ.
- Raku Navigator: A greenfield LSP implementation. Works, the first bits are there, but nowhere near a full Raku parser.
Maybe related to #373.
p.s.
Tree sitter provides a really nice list of papers on how to build such parsers. I started, but have a few hundred pages ahead of me.