in reply to joining lines efficiency?

Well, its more efficient to slurp the whole file into one string instead of splitting the file into lines then joining the lines, one way is File::Slurp, the other way is my $wholefile = do { local $/; scalar readline $filehandle };