Garbage Collection
Noun · Development · Origin: 1959
Definitions
Automatic memory management where the runtime identifies and frees memory that is no longer referenced. Invented for Lisp in 1959, it eliminates most memory leaks but introduces unpredictable pauses — a tradeoff that's kept language designers arguing for decades.
In plain English: An automatic system in some programming languages that cleans up memory your program is no longer using — like a self-cleaning kitchen.
The main GC algorithms: reference counting (Swift, Python — simple but can't handle cycles), mark-and-sweep (JavaScript V8 — traces reachable objects), and generational collection (Java, .NET — optimizes for the observation that most objects die young).
Example: 'Our Java service has 3-second GC pauses every 5 minutes. We tuned the generational collector and got it down to 50ms by reducing object allocation in the hot path.'
Source: algorithm taxonomy