3 ms·
Why is a server specification better than a DSO (library) specification that is shared between editors? At http://langserver.org http://langserver.org it is no
by cardiffspaceman 9y ago
Why is a server specification better than a DSO (library) specification that is shared between editors?
At http://langserver.org http://langserver.org it is noted that plugins are created for N languages X M editors, and the USP of the language server idea is to reduce M to 1 through a shared server. I just don't see the force that drives us towards a server instead of a library.
- Matthias247 9y agoBecause depending on your programming language it can be anywhere from annoying up to impossible to load and utilize a shared library. IO (and especially HTTP) however are easily available in most environments. Also languages servers might often be written in the language-that-they-care-for themselves (e.g. the C# language server in C#), because that's the environment where most of the tooling for that language is available. If you need everything in C then you need to rewrite the tooling. Or you just build a C library which then internally does RPC to the non-C process, but in this case you made the language-service an implementation detail for one language.
- coldtea 9y ago>I just don't see the force that drives us towards a server instead of a library. Obviously because the server can just be written ONCE, in some language (and preferably the targeting language it covers) and be done with it, whereas a library would always need bindings to be used by different editors that are themselves written in different languages (C, C++, Java, Javascript, etc).
- MaulingMonkey 9y agoVisual Studio crashing or hanging because of a bug in parsers or plugins is always annoying.