use strict; my $code = <<'CODE'; sub r{$_[0]eq reverse$_[0]} sub n{foreach(1..$_[0]){$a{$_}=$_*$_ if r($_)&&r($_*$_)};\%a} } CODE $code =~ s/^\s+|\s+$//gm; $code =~ s/\n//g; $code =~ s/}$//; $code =~ s/^sub\s+(\w+)\s*{//; printf "Length of sub '$1' => %d chars", length $code; print "\n\n$code\n"; __END__