3 ms·
I'm skeptical of the idea of static archives, especially when it comes to code. I think software is pretty much a living creature - with all of its environments
by euske 7y ago
I'm skeptical of the idea of static archives, especially when it comes to code. I think software is pretty much a living creature - with all of its environments and contexts and baggage. The only feasible way to survive it is to keep changing it. When it's no longer updated, we should pay a respect and bury them.
Plus, people are going to reinvent the wheel no matter what.
- reikonomusha 7y agoCommon Lisp code begs to differ. It’s not perfect but code that’s half a century old (Lisp that’s not even Common Lisp!) can run nearly untouched. It’s a huge reason I write it.
- jobigoud 7y agoIf found bare in an archive, you would still need to dig up some form of matching interpreter/runtime to run it.
- gen220 7y agoI get where you’re coming from, but the interpreter that you’re using to run that code has been rewritten to suit the underlying architecture of your machine dozens of times in the intervening time. I think that’s what GP means, that if you don’t include the “context” (interpreter, cpu architecture, power supply), you’re only burying the most malleable tip of the iceberg. It reminds me of the Zork source code that was published here some months ago. It was written in a language for which the compiler appears to have been lost. People have tried to develop compilers given the source code provided, but we can’t get it to work just right, because some crucial bit of context appears to be missing. There will probably be people who maintain LISP and C for decades more, but imagine trying to write a Java or Haskell compiler with only the source code for Kafka or Pandoc as your guide? Not impossible of course, but hey, maybe you should check the source code for a JVM or ghc version (and maybe add a Linux distro and gcc for good measure) in with your source in time for the cut off date. :) Point is, once you enumerate all of the dependencies, you realize the only solution is what GP said. Constant maintenance at all levels is the only thing that keeps the ship running.
- gwd 7y ago> I'm skeptical of the idea of static archives, especially when it comes to code. I don't think anyone is going to be hoping to use this code for their own purposes, but rather to study programmer culture and development. For instance, when did the idea of "immutable by default" start, and how did it spread from esoteric academic languages into mainstream languages like Rust? How did the decades-long specter of Perl 6 affect the course of Perl 5, and how did the rename to Raku lead to its resurgence (or lack thereof)? I'm no expert in history, but I have read a reasonable amount; and what's often fascinating is when there are two groups who think that they are in complete disagreement, but in fact share a common assumption which you, from the perspective hundreds of years in the future, do not share. There are things that are so obvious to us now that we don't bother writing them down or explaining them, which will be a complete mystery to people 1000 years hence; and it's basically impossible to imagine what those might be.