Just an aside, but I noticed when I was reading this that Justine's C coding style resembles my preference, and it reminded me of why I like to code this way. I learned Pascal before C and Pascal required that you define all methods before they are used. (This is a restriction that ANSI C and C++ worked around with function prototypes.) You can still code C without prototypes if you completely define all functions in the same file, before they are called. IMHO, code without forward references and/or function prototypes is inherently easier to read, but unfortunately it's not always possible to produce.