my $reftolastscalar = \( "if(1<2){'1'}else{()}" ); my @arr = ( "if(1<2){'1'}else{()}" ); # ref to '2' ? # my $reftolastscalarfromlist = # \('0.99', if(1>2){1}else{(1,2)} ); # does not compile # ref to '42' ? my $reftolastscalarfromlist = \('0.99', 1>2?1:(1,42)); {local $, = "\n"; print $$reftolastscalar,@arr,$$reftolastscalarfromlist,''; # Deparses to: do { print '1','2' }; # :) if(1>2){print '1'}else{print ('1','2')} ; print '',''; } exit 0; ########OP########## if(1<2){'1'}else{()} if(1<2){'1'}else{()} 42 1 2 user@Desktop:~/Desktop$