The official Elixir Language Server team
elixir-lang.org
elixir-lang.org
I would love for someone to point to another group of diverse people who have so consistently gotten things right, in the right ways at the right times.
For Example:
1. The language is both expressive, performant and approachable
2. Its best in class when you have strong concurrency / realtime needs
3. Since 1.0 they've declared Elixir "finished" and committed to making few breaking changes.
4. They've instead pushed energy into other important areas like Language Servers, Typing support, Data science / ML capabilities, embedded systems, etc...
5. And have done so while maintaining an extremely friendly and welcoming community with nearly no drama.
Again would love to know who else is worth of this same amount of praise, but to me Jose Valim, Chris McCord, the rest of the Elixir/Phoenix Core Teams and the Community as a whole is in a league of their own.
>This is not news to the Elixir team either: almost every Elixir release within the last 3 years has shipped new code analysis APIs, such as Code.Fragment, with the goal of removing duplication across Language Servers, IEx, and Livebook, as well as reduce their reliance on internal Elixir modules. Most recently, Elixir v1.17 shipped with new APIs to help developers emulate the compiler behaviour.
It is crazy how many things MS/Roslyn team got right.
They were like decade ahead about their red-green trees, compiler as a service/library instead of .exe
Exposing compiler level things which enabled IDE makers or 3rd party ppl who wanted to create tools
https://ericlippert.com/2012/06/08/red-green-trees/
https://github.com/rust-lang/rust-analyzer/blob/master/docs/...
https://stackoverflow.com/questions/8921782/what-are-the-ben...
The Server and Tools team contains the .net, c++, and Visual Studio teams in one division. That division is laser-focused on the sales of its products. Combined with a considerable amount of dogfooding, it has built a sizeable institutional knowledge base. There are so many intelligent people there who have been building code tools for so long that the hallway discussions are bound to include an expert who has tried to solve the problem before.
I’m optimistic that LS will finally be done right, and that should help convince those curious about Elixir to stick around and __actually__ use it.
It should also make it easier to sell decision makers on Elixir as a serious language.
I've had some time to use Lexical recently (one of the alternative LS mentioned) and it's considerably snappier compared to ElixirLS, but it didn't have feature-parity, understandably.
This is really great news.
The LSP story is definitely one of Elixirs big weaknesses. Issues with performance, missing autocomplete, not being able to jump to definitions inside macros, are quite annoying to deal with.