| No, it's merely a work-around for two very distinct and self-inflicted problems: - The pain of exposing language-native compiler/language AST and indexing APIs to a JavaScript IDE. - RMS' inability to accept that GCC might need to expose an AST to external consumers, and his paranoia regarding how that might undermine his GPL-everywhere ideals. Using JSON for local IPC -- and requiring IDE language support to funnel itself across that high-overhead IPC connection -- is fey. |
For compilers, M is source languages and N is target platforms. For LSP, M is source languages and N is editors.
They both have the same downside. The more esoteric the language feature, the lower the fidelity of support in the common middle.