There are rumours that perl has initially really just been an experiment to prove that a program can be written only by using the preprocessor. It eventually failed and that's the reason why you'll occasionally find a few lines of C code sprinkled in between the preprocessor directives.