I am writing this in Celeste, which is the email app in the Squeak
Smalltalk programming language and system. The way you normally use
Smalltalk is to save a snapshot (called an "image file" in Squeak) of
your full working environment and which you can later restore to have
everything back exactly as you had left it. Basically a memory dump,
like when you hibernate a laptop. Or a Unix core dump file. Other
languages have used this concept, such as APL workspaces and several
Lisp implementation.
The interesting thing about Squeak (and variations like Pharo and Cuis)
is that in 1976 a special tool called SystemTracer was created that
would run inside a given system and spit out a modified version of the
snapshot. This allowed a Smalltalk-74 system to save its state in the
very different Smalltalk-76 format (in -74 classes weren't objects while
in -76 they were, for example). Smalltalk-76 was modified to be
Smalltalk-78, then Smalltalk-80, then Apple Smalltalk and, in 1996,
Squeak (while Apple Smalltalk was 16 bits with an object table and black
and white, Squeak was 32 bits with direct pointers and color).
The point of all this is that there are objects in the system I am
typing this on which have been copied over and over with a few
transformations all the way back from 1976. That makes it one of the
oldest "living" computing systems around and still in use.
Smalltalk: we put the class in classic!
-- Jecel