[gclist] gc interface

Jerry Leichter leichter@smarts.com
Mon, 8 Apr 1996 11:30:09 -0400


Hans-J. Boehm asks for citations for the use of the word "finalizer" earlier 
than 1986.

In the late 70's/early 80's - I no longer remember the exact timing - I added a 
feature which I called "initializers" and "finalizers" to the DECUS C compiler.
Given that this was C, not C++ (much less a compiler with a GC), the actual
semantics was that initializers ran before main() was called, while finalizers 
ran after main() returned or exit() was called.  Still, the idea was to provide 
to programmers the ability to do exactly the same kind of initialization and 
cleanup that built-in facilities have access to.  In fact, in DECUS C, the 
initialization of the standard I/O library, and the final closing of all files, 
was done through the same basic mechanism as programmer-defined initializers and 
finalizers.

Outside of the DECUS C documentation, I described this stuff in a paper that 
appeared in the March 1991 issue of the Journal of C Language Translation.

I can no longer recall where I got the name "finalizer", or for that matter the 
idea to do this.  I may have just made it up; but I may very well have seen it 
used somewhere else.
							-- Jerry