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

carlriz has asked for the wisdom of the Perl Monks concerning the following question:

Hey guys, I was reading 'cool uses for perl' and came across some code. What is the '=<<' operator? What is 'eval $begin.$content;' (specifically, you can concat. these?)? Just curious how this works (maybe the rest of the code too).

my $file = $ARGV[0]; my $content = do { open my $fh, '<', $file or die $!; local $/; <$fh> +}; my $begin =<<'THEEND'; UNITCHECK { no strict; # access $VERSION by symbolic reference no warnings qw (uninitialized); print map { s!/!::!g; s!.pm$!!; sprintf "%-20s %s\n", $_, ${"${_}::VERSION"} } sort keys %INC; exit; }; THEEND eval $begin.$content; print $@ if $@;