use CGI::Carp qw(fatalsToBrowser set_message); BEGIN { sub handle_errors { my $msg = shift; print "

Error trapped by CGI::Carp

\n"; $msg = s/\n/
/g; print "

Message: $msg

\n
\n";
        foreach my $key ( keys %ENV ) {
            print " $key\t $ENV{$key}\n";
        }
        print "
\n"; } set_message(\&handle_errors); } use Modern::Perl; use CGI::Simple; use CGI::Session; # and so on...