|
LSP is sensible for the same reason that the middle end in a compiler is sensible - it turns an MxN problem into an M+N problem. 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. |
If you insist on using IPC, then you've incurred a great deal of friction in a place that it matters.
If you insist on using JSON IPC, then you've incurred a great deal of overhead in a place that it matters.