Hacker News new | ask | show | jobs
by jvanderbot 39 days ago
I regret to inform you, but the post was not about maintaining old systems, it was about simplicity in creating services using a language purpose-designed for creating services. The modern underlying os/docker image was kind of a baked-in assumption.
1 comments

The post was about Go and uses the "The boring choice is the right choice." point at the end. But a compiler that's so quick to abandoned previously perfectly fine supported systems, and basically is bleeding edge, is anything but the "boring right choice". I personally prefer long term stability in the toolchains I use for my projects at least.
What language/toolchain/platform are you talking about because C/C++/Python/... all have the same issues?
Bootstrapping a modern/ up-to-date C/C++ compiler works, getting an up-do-date Python onto the system works too. No such issues with either of those. But try the same with Go or Rust and you hit nasty roadblocks (in both cases the older OS was previously supported just fine.)
I'm not sure what C/C++ compilers you have in mind but bootstrapping older GCC and LLVM versions on modern systems is far from trivial and typically requires patching (e.g. older LLVM versions do not compile with modern compilers) and pinning a whole ecosystem (cmake, C lib, autotools, ...). The same is true for the other way around, modern C compilers usually do not compile on older systems and you get lucky if you find a round trip of several versions that get you a roughly working compiler at some point.