LSP an Debug Adapter Protocol

97 views
Skip to first unread message

max

unread,
Apr 7, 2026, 8:26:11 PMApr 7
to The Ring Programming Language
Hallo Youssef Saeed

you have implemented a very useful extension for the Ring programming language—thank you for your work!

I was wondering if you are also planning to implement a Language Server Protocol (LSP)  and an interactive debugger for the Ring programming language in the future?

Youssef Saeed

unread,
Apr 8, 2026, 5:41:58 AMApr 8
to The Ring Programming Language
Hello Max,

Thank you for your message and the great feedback!

To answer your question: yes, I actually created an LSP for Ring (written in Go) last year. It is fully functional and I currently use it for my own personal projects, but I haven't officially released it publicly yet because it is still quite experimental.

I don't have any immediate plans for an interactive debugger (DAP) just yet, as I'd like to focus on stabilizing the LSP first.

Thanks again for your interest. I hope to share the LSP with the community in the future!

Best regards,
Youssef
Message has been deleted

max

unread,
Apr 8, 2026, 2:12:15 PMApr 8
to The Ring Programming Language

Hello Youssef,

thank you for your detailed reply — that’s really exciting to hear!

It’s great that you’ve already implemented an LSP for Ring. Even in an experimental state, that sounds like a very valuable addition to the ecosystem. I’m looking forward to seeing it once you decide to make it public.

I also tried to implement something similar myself using Tree-sitter and ANTLR, but I realized that I don’t yet have enough experience to get it working properly. That’s why I really appreciate the work you’ve already done in this area.

I’m also interested to know which parsing technique you used in your LSP. Additionally, I hope that one day it might be possible to integrate the Tree-sitter library into Ring, as I think it could be very beneficial for tooling.

Thanks again for your work on Ring and for sharing this update!

Best regards,
Max

Youssef Saeed

unread,
Apr 8, 2026, 2:31:39 PMApr 8
to The Ring Programming Language
Hello Max,

Thank you for your reply and the kind words!

To answer your question about the LSP: I actually didn't use Tree-sitter for it. The parsing technique I used for the LSP is a custom parser alongside a custom analyzer, written 100% in Go.

However, since you mentioned experimenting with Tree-sitter yourself, I have some exciting news! I have already created a separate Ring grammar for Tree-sitter. You can check out the repository here:
https://github.com/ysdragon/tree-sitter-ring

It is still a Work In Progress (WIP) and a bit incomplete at the moment, but it is already very usable. In fact, I am currently using it locally to power my setup in both the Zed Editor and the Helix Editor.

My plan for the future is to officially release extensions/plugins for both Zed and Helix so that everyone can use them!

Best regards,
Youssef

Robin

unread,
Apr 11, 2026, 7:19:42 AM (13 days ago) Apr 11
to The Ring Programming Language
Hello Youssef,

this is really exciting news! An LSP for Ring would be an amazing addition to the ecosystem.

To be honest, the main reason I’m not using Ring as much as I’d like is because it doesn’t yet have an LSP like many other languages. Having features like autocompletion, diagnostics, and better editor integration would make a huge difference in day-to-day development.

That’s why I’m really looking forward to your work—I’ll be patiently waiting for a public release, and I truly hope it will be available soon.

Thanks again for your great work on Ring and for sharing this update!

Best regards
Reply all
Reply to author
Forward
0 new messages