Re: There is no such thing as a prototype
PhD student: "what are you doing zere?"
Me (ca. 2003): "object oriented programming?"
PhD student: "no, it is too slow. Use malloc and pointers!"
... he was right.
(and I sort of guessed your punch line when you mentioned python.... :) )