TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Show HN: Lady Deirdre 2 – Rust Framework for Compilers and LSP Servers

141 pointsby Eliah_Lakhin11 months ago
Greetings!<p>I would like to share with you my project, Lady Deirdre.<p>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.<p>The framework includes essential components to design parsers and semantic analyzers capable of incrementally reparsing dynamically evolving source code.<p>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.<p>I will be happy to answer any questions.<p>Ilya

7 comments

gsuuon11 months ago
This is cool, I think an integrated compiler and LSP is a great standard for new languages. I&#x27;d go one further though and say that syntax highlighting should also be part of that language core. This way you have a single source of truth wrt to that language: how it should look, what it means and how it runs.<p>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&#x27;d add a tree-sitter integration to this project? Or conversely, build out a compatible API that can be used with editors&#x2F;tools that use tree-sitter&#x27;s library?<p>The licensing is a bit confusing - for example, what happens with open-source projects that use this that are then used in commercial projects?
评论 #40753717 未加载
armchairhacker11 months ago
First, I really like language frameworks like this. I think it could become very useful and popular.<p>That being said, I really doubt anyone will buy a commercial license. People don&#x27;t sell compilers and IDEs, and the ones who do are large corporations who make everything themselves. Look at state of language tooling today: nearly every compiler is open-source, every language server is free, every IDE is free except JetBrains (a well-known company with a large reputation) and Sublime Text (being heavily replaced by VS Code), and anything not open-source has an active open-source alternative. Nobody&#x27;s going to buy a license from you to sell their compiler, because nobody&#x27;s planning to sell their compiler.<p>For this reason I&#x27;d recommend changing the license. I don&#x27;t think it&#x27;s overly-restrictive or dishonest, I think it&#x27;s fair to expect being paid if someone makes &gt;$200,000 off your work. But nonetheless it hurts adoption, a lot of people will see &quot;proprietary&quot; and not even read the license text. You&#x27;re more likely to make money distributing it as MIT &#x2F; Apache, letting it get popular, and setting up donations&#x2F;sponsorships to fund development. But honestly, if you&#x27;re looking to make money this isn&#x27;t the space to do so: you could be hired by someone to work on PL, or you could sell something like a game, but you&#x27;re not going to sell your own PL.
评论 #40751355 未加载
评论 #40752018 未加载
评论 #40755677 未加载
评论 #40751138 未加载
winter_blue11 months ago
This is awesome. Thank you!
solarpunk11 months ago
I like the Alpha Centauri reference here lol.
评论 #40758708 未加载
mdaniel11 months ago
The way the headline was written it seemed like this was the second <i>iteration</i> of Lady and not just a 2.0 release announcement<p>It would have also gone a long way if you had mentioned the licensing, which I am always interested in: <a href="https:&#x2F;&#x2F;github.com&#x2F;Eliah-Lakhin&#x2F;lady-deirdre#copyright">https:&#x2F;&#x2F;github.com&#x2F;Eliah-Lakhin&#x2F;lady-deirdre#copyright</a><p>As for a question: why the seemingly needless location of everything down in a &quot;work&quot; folder? Is there something else that you envision one day living at the top-level which you just planned for by putting everything someone would care about one further click away?
评论 #40750939 未加载
评论 #40750969 未加载
weinzierl11 months ago
<i>&quot;replacement for preexisting projects with similar goals, such as Tree-Sitter, Rowan, or Salsa.&quot;</i><p>To be a true replacement, there is at least one crucial feature missing: A LICENSE file that starts with <i>&quot;The MIT License (MIT)&quot;</i>.<p>Nothing against &quot;source available&quot; but thinking to have a chance to stand in for more permissively licensed projects is very much unrealistic.
评论 #40751412 未加载
评论 #40757963 未加载
评论 #40751129 未加载
mtndew4brkfst11 months ago
Thank you to the commenters who highlighted the licensing. I would ordinarily be <i>very</i> interested in this premise but I don&#x27;t want to risk unconsciously adapting ideas from what I read that could put me in tension with the terms or the author, and I can&#x27;t use it directly.
评论 #40756538 未加载
评论 #40754173 未加载