Post-Apocalyptic Programming
Even aside from the apocalypse, I was wondering recently how someone might &quot;pass down&quot; some piece of software, like say a video game, to their descendants. If you want to leave a written record for future generations then it&#x27;s easy enough to print out a book on some acid-free paper and reasonably expect that it will last for up to a millennium. But for robustly archiving a piece of software it&#x27;s not enough to print out the complete source code (including dependencies), you also need the complete source of the compiler (including dependencies), and the complete source of the operating system it runs on, and complete schematics for the hardware it runs on, and instructions on how to manufacture the hardware, and possibly more.<p>In the same way that we have standards for archival-grade books, it seems like we could benefit from some sort of standard archival-grade software stack designed for simplicity (and I mean real simplicity, I agree with the article that even C is too complicated and you want a Forth or something (or maybe a Scheme)). It&#x27;s okay if the stack is as slow as molasses, as long as you have a functional reference implementation you can always produce a translation into whatever modern stack exists in your time period.