in reply to cause perl to die on use of unintialized variables
use warnings FATAL => qw(uninitialized);
should do what you want.
Update: if you don't want to add that to your file, but rather want it confined to development uses only, you can also run your perl script as
$ perl -Mwarnings=FATAL,uninitialized filename.pl
to get that effect without modifying your script. But beware, it can be overridden inside the script, or in modules used by the script.
For more information on the warnings pragma, please consult perllexwarn.