And this was written before Java's garbage collector was even good.
(At one job, I wrote an infinite loop background process that did nothing but allocate memory, and ran it in the test environment of the Smalltalk trading application I was maintaining. Unless you did certain intensive operations, you couldn't tell the difference. The GC handled it without a hiccup. I could've put that into production, and almost no one would've had any idea it was there.)