Keeping a single copy of anything, with no backups, is only one step away from it being deleted and lost forever. Automations are supposed to do a lot of work with minimal effort. Working on a filesystem automation in proximity to files you care about and have no backups for is high risk behavior regardless of what language you used. Unless Perl itself malfunctioned, it did nothing it wasn't asked to do.
There are design choices in many languages that are pessimal for safety though; SQL has unguarded DELETE that can wipe out a table just by omitting a WHILE. Perl has > for clobber mode, and < for input mode, a syntactic throwback to shell scripting that has probably made it way too easy for people to mistakenly clobber files.