http://www.perlmonks.org?node_id=846053


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.

Perl 6 - links to (nearly) everything that is Perl 6.