News for hackers. Stuff that matters.
Re:Atom Was Archived Today by rtpg on Friday December 16, 2022 @02:23AM (#34011734)
Of course a lot goes on but pre-LSP and post-LSP are day and night. There is now a huge amount of serious language tooling that _isn't_ locked up into one or several editors.

Now some might point out that LSP-based stuff is, like, bloat. Sure, OK. But there's a lot of motivation to do work that can pay off across the board. So much language stuff was based off of random regexes! It's hard to overstate how much better of an editor situation we are in than 10 years ago.

This isn't even getting into VS Code offering a way for you to put... one? two? files into a git repo and have that mean that opening the editor will spawn a container, _install itself in the container_, and run there while still having a native GUI for the actual usage of the tool. So much incidental complexity, gone!

One might point out that containers are a "big ball of mud" solution, but I vastly prefer that to big setup scripts that only half work. Here's to hoping we can shrink the ball of mud.

Re:Atom Was Archived Today by Beltalowda on Friday December 16, 2022 @05:43AM (#34013005)
LSP is nice, but it's not an engineering marvel. It's just a text protocol. It's not even a great text protocol; it's okay, but not great. There's been lots of "LSP-like" protocols over the years, even decades, it's just that none of them really became a standard (partly because no one actually invested the time in writing one, and it just used an "ad-hoc protocol"). And of course the general concept of "process A communicates with process B over a text protocol" is all around us.

Like I said, I like LSP, but a great exceptional feat of engineering it is not.

This applies to most of VSCode as near as I can tell.

Re:Atom Was Archived Today by rtpg on Friday December 16, 2022 @06:17AM (#34013260)
The thing is it successfully had work put in so that it’s a standard. “They did a thing that basically no one succeeded in doing” is, imo, proof of something.
Re:Atom Was Archived Today by Beltalowda on Friday December 16, 2022 @06:25AM (#34013337)
I don't think anyone tried to really make a standard, as far as I know. But even if they did, there's lots of reasons why some things take off and others don't: putting in the work as you mentioned, whether it's any good, marketing, state of other tooling and tech, zeitgeist at the time ("timing"), etc.

Would something like Go have taken off 20 years ago? I'm not so sure, the zeitgeist at the time was very much in the direction of dynamic languages. And would Python take off if it was released today? Not so sure about that either.

But you know, putting in the work to write down a specification isn't really a marvel of engineering. It's ... just putting in the work.

Re:Atom Was Archived Today by ElectricalUnion on Friday December 16, 2022 @10:36AM (#34015735)
> But you know, putting in the work to write down a specification isn't really a marvel of engineering. It's ... just putting in the work.

It's no marvel of engineering, but someone did put in the work, and others used it, more that can be said about many other things that might be "better engineered".

Re:Atom Was Archived Today by Beltalowda on Friday December 16, 2022 @11:02AM (#34016085)
I never said they were "better engineered". I only wanted to refute that "VSCode is one of the greatest pieces of engineering of our time", which went to use LSP as an example in this (sub)thread.
Re:Atom Was Archived Today by krageon on Friday December 16, 2022 @07:38AM (#34013901)
It's proof of nothing but popularity, which isn't indicative of quality in the least.
Re:Atom Was Archived Today by mgaunard on Friday December 16, 2022 @05:56AM (#34013107)
I don't know what LSP is or why you'd think it's anything special or game-changing.

It just seems to be a generic interface to describe language bindings, which most text editors have.

In practice it's mostly a bad thing because any advanced language has special needs which will end up difficult to address by funneling everything through a common interface.

Re:Atom Was Archived Today by rtpg on Friday December 16, 2022 @06:19AM (#34013273)
It is a generic interface which also helps with many capabilities, including proper refactoring, formatting, and the like. Since VSCode does so much through it, basically all nontrivial interaction with the code base can also be used in other editors.

A far cry from the days of sublime text’s regex-based autocomplete

Re:Atom Was Archived Today by mgaunard on Friday December 16, 2022 @07:12AM (#34013697)
Except it only works for trivial languages.
Re:Atom Was Archived Today by ParetoOptimal on Friday December 16, 2022 @09:16AM (#34014673)
What languages do you consider "non-trivial"?
Re:Atom Was Archived Today by Sharlin on Friday December 16, 2022 @10:35AM (#34015716)
Rust-analyzer works via the LSP, and I'd hardly call Rust "trivial".
Re:Atom Was Archived Today by bdhcuidbebe on Saturday December 17, 2022 @02:14AM (#34025599)
Is rust and C++ trivial languages?
Re:Atom Was Archived Today by mgaunard on Saturday December 17, 2022 @05:50AM (#34026690)
It doesn't really work with C++.