Janus (time-reversible computing programming language)
Janus is a time-reversible programming language written at Caltech in 1982. The operational semantics of the language were formally specified, together with a program inverter and an invertible self-interpreter, in 2007 by Tetsuo Yokoyama and Robert Glück.
Source: Wikipedia — Janus (time-reversible computing programming language) (CC BY-SA 4.0)