3 ms·
Much as people complain about Perl, it is the language which I use when I want to have something which will run 10-20 years from now. I recently wrote a consis
by jwr 6y ago
Much as people complain about Perl, it is the language which I use when I want to have something which will run 10-20 years from now.
I recently wrote a consistency checker for file archives (so that I know when bitrot sets in) in Perl, precisely because I want it to be usable for a long time (https://github.com/jwr/ccheck https://github.com/jwr/ccheck).
Very happy to see a path forward for Perl 5.32.
- boring_twenties 6y agoPerl is still unmatched for one-liners, and by extension, one-liners that graduate to short scripts.
- cutler 6y agoYes, of all the Perl books in my collection Tim Maher's "Minimal Perl" (Manning) is still the one I dip into regularly.
- boring_twenties 6y agoThinking about this some more, I now feel really sad for anyone who doesn't use perl (i.e., almost everyone). Its immense power at the command line is something they'll never experience. Nothing today even comes close.
- cutler 6y agoEven sadder that no-one will probably now start their programming career, as I did, with Perl as their first language. I feel honoured. At the time it was a toss-up between Java, which my house-mate was using every day to write banking apps at work, or Perl - that funky linguistic creation which granted you magical powers. No contest.
- jeffhuys 6y agoI don't understand what you mean exactly – couldn't you use any language, even javascript, exactly the same version as you use right now, in 2100? Why not? Edit: nice tool, by the way!
- jwr 6y agoHave you tried? :-) Especially in the JavaScript world, things evolve so quickly, that they become obsolete within single years. If you use node and npm, within months. To put this in contrast, Perl 5.001 was released on March 13, 1995 — that's more than 25 years ago, and code written in it will largely run fine today.
- latk 6y agoInteresting, I've been moving away from Perl and Python and towards Rust precisely because I'm afraid of bitrot. Perl the language is stable as fuck and takes back-compat extremely seriously. The problem for me was the library ecosystem: Cpan makes it tedious to pin/vendor dependencies, and installs dependencies globally by default.
- daotoad 6y agoYou might want to look at Carton and cpanfiles as a way of managing dependencies. You can also get really ancient stuff off BackPAN, should your dependencies disappear from CPAN proper. https://metacpan.org/pod/Carton#Tracking-the-dependencies https://metacpan.org/pod/Carton#Tracking-the-dependencies http://backpan.perl.org/authors/id/ http://backpan.perl.org/authors/id/
- latk 6y agoYup, Perl7 + Carton looks like a good combo for stable programs that don't have to be distributed publicly. I just wish cpanm and Carton were Core :D
- jwr 6y agoYes, dependencies are a bit of a problem (I tried to use as few as possible in ccheck), but I'd say that the general culture of CPAN is to keep things long-term and prevent breakage, so my experience has been fairly good over the last 25 years. Something I can't say for node.js.