4 ms·
> Perhaps the distributions would be more inclined to include up-to-date version if the standard in the python community was not to break everything all the ti
by ajsnigrutin 5y ago
> Perhaps the distributions would be more inclined to include up-to-date version if the standard in the python community was not to break everything all the time.
Yep... Perl is a godsend... take a code from 20 years ago, run it on a modern system, and everything works.
Python? Three different software versions need three different versions of the same library, and new library versions are not backwards compatible with their older versions... Even Python 2.x -> 3.x was a pain in the ass too, and even within minor versions, you sometimes get breaking changes.
- toyg 5y ago> Perl is a godsend... take a code from 20 years ago, run it on a modern system, and everything works. That's more or less like "take a VB6 binary from 20 years ago, run it on some modern Windows, and everything works" - that's just because the ecosystem is effectively dead, so supporting it on new releases just means carrying over some stuff that worked 20 years ago.
- znpy 5y agoWhat's the sin in supporting stuff that works?
- ajsnigrutin 5y agoThis is the sad reality of modern development... new project? Why take some stable tech, when you can take a 2month old framework and an alpha version of a library, and do two rewrites, before the project fails due to breaking changes and abandoned software. It seems as if people actively avoid anything stable.
- popcube 5y agothey still publish new main version of perl every year, and still support code from perl4.
- jacquesm 5y agoSo, Perl is the new Latin?
- thesuperbigfrog 5y agoIt can be: use Lingua::Romana::Perligata; adnota Illud Cribrum Eratothenis maximum tum val inquementum tum biguttam tum stadium egresso scribe. da meo maximo vestibulo perlegementum. maximum comementum tum novumversum egresso scribe. meis listis conscribementa II tum maximum da. dum damentum nexto listis decapitamentum fac sic lista sic hoc tum nextum recidementum cis vannementa listis da. dictum sic deinde cis tum biguttam tum stadium tum cum nextum comementum tum novumversum scribe egresso. cis Source: https://metacpan.org/dist/Lingua-Romana-Perligata/view/lib/Lingua/Romana/Perligata.pm https://metacpan.org/dist/Lingua-Romana-Perligata/view/lib/L...
- ajsnigrutin 5y agoIt's funny, because original version of this library was written in year 2000, so literally more than 20 years ago (my example of "old") :) https://metacpan.org/dist/Lingua-Romana-Perligata/changes https://metacpan.org/dist/Lingua-Romana-Perligata/changes
- drran 5y agoYour comment is not updated for 20 minutes, so it's effectively dead. Please, write a new one.
- toyg 5y agoIn 20 years when we'll all be using brainfuck, my comment will indeed be effectively dead.
- ajsnigrutin 5y agoBut it works... it's universally supported on pretty much every os, even by default on most *nix based ones, and new versions and new CPAN modules are still written. In 10 years, with python 4, or even maybe 5, everything will still be broken, and you'll still be claiming perl is dead, and i'll still be using the same stuff I use now, that worked years ago, works now, and will work then.
- toyg 5y agoAnd people will still be shipping code faster and more efficiently than they would do in Perl. Because in the end, the advantages of using Python, in terms of readability and productivity, easily offset a bit of packaging pain - whereas the disadvantages of using Perl don't offset whatever marginal gain you get by using old infrastructure.
- katbyte 5y agoOr instead use another modern language? I avoid any python that I can’t apt-get/brew and haven’t considered writing anything with it for a very long time. There is always go/ruby/c# which seem to generally avoid the problems discussed here
- bmj 5y agoAnd people will still be shipping code faster and more efficiently than they would do in Perl. I feel that quite a bit of software written these days is designed to have a short shelf life. I wonder how many of the "Show HN" posts will work, or even be useful, in five years? How much will be maintainable? I've been thinking a lot about Matthew Crawford's writings on mechanical things[0] and how they might apply to my own craft as a software developer. The work, as described generally on HN, is still all about moving fast and breaking things. It doesn't matter if the Python code I crank out today works in five years (or is maintainable in five years) -- I just need to get my product to market. Some of us work in other domains where sustainability and repair-ability are important: if my software is going to be in the field, in users' hands, for ten years, I need to consider how reasonable it might be fix bugs. If I have to fight just to get the software to run, I've already lost that battle. In these cases, the dependability of something like Perl is really great. The complaint against Python here isn't about the language itself (I think many people would agree it is quite nice to use), but rather the larger ecosystem, which makes it very hard to maintain software over the long haul. [0] See Shop Class as Soulcraft, The World Beyond Your Head, and Why We Drive.
- tyingq 5y ago>that's just because the ecosystem is effectively dead Perl may be "dead", but that's not why it's so backwards compatible.
- benibela 5y agoIt is because Windows has a stable API and still has all the old functions
- wheelerof4te 5y agoYes, Win32 API is ancient. No, it does not mean it's useless.
- pjz 5y agoPerl 4, 5, or 6? What's CPAN's dependency resolution like?
- nieve 5y agoThat's a really weak gotcha: Perl 4 was deprecated 28 years ago and Perl 6 is a completely different language that's been called Raku since 2019. There are no dependencies to resolve between them. It's like worry about dependency resolution between Javascript and Java. They're not even the same platform.
- lizmat 5y agoTrue. But Raku (https://raku.org https://raku.org #rakulang) does have an Inline::Perl5 module, which allows you to use 99.9% of modules on CPAN (basically, only the ones using source-filters, and ones that are really, really deep into the Perl internals). So there *can* be dependencies between Perl and Raku.