in reply to Word Comparison

Maybe not super efficient in terms of time, but at least terse:
for ([qw/dog good/],[qw/food fodder/]) { my ($first, $second) = @$_; print "$first does "; print "not " unless join("",sort split //,$second) =~ join(".*",sort split // +,$first); print "contain $second\n"; }
I do this in word twist, which you may want to look at.
join("",sort split //,$first) =~ ("^".join("?",sort(split //,$second)) +."?\\z")
is possibly a faster way - I haven't benchmarked.