3 ms·
The dynamics change a little now that the language server protocol is becoming more popular, as it drops the cost of developing new tooling, though there's lots
by DougBTX 6y ago
The dynamics change a little now that the language server protocol is becoming more popular, as it drops the cost of developing new tooling, though there's lots more work to do.
- ktpsns 6y agoI think this comment thinks still too much "within" the box. Sure, there is a large class of programming languages with similar idioms where mostly only the syntax is different. I think the rise of multi paradigm languages makes this even more obvious. Nowaday, an IDE will support you with OOP, module/package structures and functional programming. However, nobody has said that the world has to end there. What about, for instance, declarative languages, domain specific languages, logic programming, computational notebooks? We still have special purpose tools for that, something which you typically don't see in a standard IDE. (Of course you could argue that IDEs as modular software just integrate all this special purpose stuff) For my perspective, one best works with an IDE if one is d'accord with all the core principles of the IDE and software ecosystem it proposes. Whenever you want to do something out of the box, the IDE reduces to nothing more then a bulky text editor. That's why I think real innovation doesn't happen in IDEs.
- throwaway_pdp09 6y agoI believe you misunderstand. The LSP is not about syntax. "The Language Server Protocol (LSP) is an open, JSON-RPC-based protocol for use between source code editors or integrated development environments (IDEs) and servers that provide programming language-specific features. The goal of the protocol is to allow programming language support to be implemented and distributed independently of any given editor or IDE." https://en.wikipedia.org/wiki/Language_Server_Protocol https://en.wikipedia.org/wiki/Language_Server_Protocol
- rocqua 6y agoSo basically "write your language support for an IDE once, have it work everywhere (that uses LSP)"?
- marcosdumay 6y agoThat's the idea. It's reasonably well supported now and its use is only increasing. The standard is very OOP centered. It's not much that it won't work on other paradigms, but that it's limited to what is useful for OOP, so it won't lead to a perfect IDE to them.
- throwaway_pdp09 6y agoMay be wrong but I don't believe that's true. It provides language info for a language, there's nothing (?) that ties it to OO especially.
- IggleSniggle 6y agoI don’t understand this comment. The syntax provider can be written in any language, and is basically just an abstraction for IDE behavior. Given that the instructions for how the IDE should represent any given code block, user behavior, or reactiveness in the IDE are defined by the language provider, what exactly is lacking for any arbitrary language? The only thing I can think of is that a given language may not have suitable representation in the IDE, eg a data-flow visual language when most of the IDEs features are centered around text.