throop has asked for the wisdom of the Perl Monks concerning the following question:

I can't quite understand what Makefiles do for Perl modules. The camel book states
If you don't know what a Makefile is, or what the make(1) program does with one, you really shouldn't be reading this section.
Which is way helpful. Anyways, I thought knew what make and Makefiles do for C and C++ projects — check source file dependencies and binary files, seeing what needs to be recompiled.

But I didn't think these Perl modules were pre-compiled. I thought the compiler gets invoked at run time. I don't see any binary files generated. (I realize that some modules include C code that does get compiled, but I'm not talking about those cases.)

If I get a CPAN module which only contains one .pl file, why do I need a Makefile along with it? Why wouldn't it be enough just installing the .pl file in a directory, and making sure that directory is in @INC?