4 ms·
I agree, the only reason LSP exists as it does is for a world running on electron based applications. Plug-ins and application extensions are not new technology
by throwaway17_17 14d ago
I agree, the only reason LSP exists as it does is for a world running on electron based applications. Plug-ins and application extensions are not new technology and they are nearly universally more efficient in the forms designed and used prior to 2005-ish. I understand why VSCode exists and why it is used so often by developers, but it is certainly a downgrade from more language specific options that could exist.
There are some arguments that do carry water in favor of using a client/server protocol transmitting JSON, in particular, the ability for a nearly complete decoupling of analysis of code and the displaying and editing of that code. Also, LSP was (to my knowledge) the first language/platform/usecase agnostic protocol intended for use in code editors.
I get why this is where a big chunk of developers have ended up, but I do bemoan the lost potential for a language to grab mindshare and popularity on the usability and performance of its tooling and developer experience via-a-vis a custom designed and hyper specific code editor. I mean, Rust and Elm received endless praise for their error messages as a massive boon to developer experience, so it is a facet of language design and implementation that can act as great advertisement. I just hate that the prevalence of LSP at this point precludes custom editors as a first choice in the current zeitgeist.
- jiehong 13d agoLSP helps with not having to develop the same tooling in each editor for each language. This isn’t for Electron app only, but is also helpful for Emacs, vim or helix (especially when they lack said language plugins). Now, some IDEs provide capabilities for a language far exceeding what can even be implemented in a LSP.
- stevenhuang 13d agoThis comment makes no sense. You realize how much lsp is used in other editors like vim/neovim? The existence of lsp is exactly what lets custom editors to flourish. Any language/lsp client can add their own extensions too. Any new editor can come up with it's own way of doing things and implement it on top of lsp, as long as the lsp client supports those extra features then there's no problem. I don't know how you can get it so wrong.
- mitxela 13d agoThey are not custom editors, they are all the same editor because they have to implement the same LSP protocol.
- imtringued 12d agoYou don't know what an editor or LSP is, if you genuinely believe that.