It's wrong when applied to initializing empty arrays and hashes, so it doesn't "scale" well.
I presume a knowledge of people reading my code equal to that contained in my Learning Perl book, and in there, it's clear that a new scalar starts with undef