Right, except that all of these classes get packaged together in the same CPAN module (hence the My::Package nomenclature). My understanding is that Makefile.PL's VERSION_FROM does actually compile a module, and read its $VERSION variable. Does it really only parse the file, not compile it?