use strict;
use warnings;
use diagnostics;
####
warn "$var\n";
print "@things\n"; # array with spaces between elements
####
chomp $var;
print ">>>$var<<<\n";
####
my $copy = $str;
$copy =~ s/([^\x20-\x7E])/sprintf '\x{%02x}', ord $1/eg;
print ":$copy:\n";
####
use Data::Dumper;
print Dumper(\%hash);
print Dumper($ref);
####
print ref $ref, "\n";
####
$ perl -MO=Deparse -p program.pl
####
open my $fh, '<', 'foo.txt' or die "can not open foo.txt: $!";
####
if (system $cmd) {
print "Error: $? for command $cmd"
}
else {
print "Command $cmd is OK"
}
$out = `$cmd`; print $? if $?;
####
eval { do_something() }; warn $@ if $@;
####
use Carp qw(cluck);
cluck("var is ($var)");
####
$ perl -MCarp::Always program.pl
####
# what the heck does /^\s+$/ mean?
use YAPE::Regex::Explain;
print YAPE::Regex::Explain->new('/^\s+$/')->explain();
####
use WWW::Mechanize;
if ($mech->success()) { ... }