Perl is certainly far more portable than anything else
I've come across. Some years ago I did quite a bit of work
in VMS 5.3 (I think, it's been a while) and the same
scripts from the VAX would often run completely unchanged
on my Intel box under DOS, NT and LINUX (various releases of Perl 4). I did have to
make some adjustments (binmode under DOS, directory string
separators etc.) but very little compared to porting C. The
byte order template characters in unpack were particularly handy!
It's also likely that many of the minor difficulties have
been removed in newer Perls (though I haven't checked).