Greetings!
I would like to share with you my project, Lady Deirdre.
Lady Deirdre is a framework that helps you create new programming languages in Rust. It is specifically designed to develop compilers and interpreters with support for code editor extensions (LSP servers) from day one.
The framework includes essential components to design parsers and semantic analyzers capable of incrementally reparsing dynamically evolving source code.
Lady Deirdre can be seen as a replacement for preexisting projects with similar goals, such as Tree-Sitter, Rowan, or Salsa. However, Lady Deirdre aims to offer a unified framework API that guides you through the steps of programming language development, providing even more components necessary to develop a full-featured language ecosystem. For example, components to develop a source code formatter.
I will be happy to answer any questions.
Ilya
Tree-sitter is widely supported (both in editors and on web) for syntax highlighting as well as making semantic nodes available for external tools to interact with. Is there any chance you'd add a tree-sitter integration to this project? Or conversely, build out a compatible API that can be used with editors/tools that use tree-sitter's library?
The licensing is a bit confusing - for example, what happens with open-source projects that use this that are then used in commercial projects?