#!/usr/bin/perl -- use Data::Dumper; { my $a="[a,b,{perl=>monk}]"; my $b=eval $a; warn $@ if $@; print Dumper($b); } { my $a="['a','b',{'perl'=>'monk'}]"; my $b=eval $a; warn $@ if $@; print Dumper($b); } { use strict; use warnings; my $a="[a,b,{perl=>monk}]"; my $b=eval $a; warn $@ if $@; print Dumper($b); } __END__ $VAR1 = [ 'a', 'b', { 'perl' => 'monk' } ]; $VAR1 = [ 'a', 'b', { 'perl' => 'monk' } ]; Bareword "a" not allowed while "strict subs" in use at (eval 3) line 1. Bareword "b" not allowed while "strict subs" in use at (eval 3) line 1. Bareword "monk" not allowed while "strict subs" in use at (eval 3) line 1. $VAR1 = undef;