Programming

Computing that can run backwards.

Reversible computing is built from steps that are one-to-one and invertible, so no information is ever destroyed. Because nothing is erased, Landauer's principle says such a computation need not dissipate the heat that forgetting demands. That is the route to "zero-energy programming" — reversible programming languages, reversible debugging, and adiabatic, energy-recovery hardware.

Latest news

All programming news →

Explore

Read the principles →

Key ideas

Logical reversibility

Bennett (1973) showed a computation that throws nothing away — every step one-to-one and invertible — can run forward and then backward to uncompute its scratch work, leaving memory clean.

Landauer's principle

Erasing one bit must release at least kT ln 2 of heat — about 2.75 zJ at room temperature. Avoid erasure and you avoid the toll.

Adiabatic switching

Energy-recovery circuits charge and discharge nodes gently through a resonant clock, returning most of the energy to the supply rather than dumping ½CV² as heat.