5 ms·
Sadly I think Node and Python have long taken over CPAN. But apart from that, I was nodding through your whole comment… Perl really is a super power. POSIX at
by alfiedotwtf 2y ago
Sadly I think Node and Python have long taken over CPAN.
But apart from that, I was nodding through your whole comment… Perl really is a super power. POSIX at your fingertips!
- kamaal 2y agoNode/NPM definitely is on-par with CPAN. But pip isn't even close. The real deal with Perl is you not only get bleeding stuff, you get all kind of obscure and rare libraries. Its not that you can't do that in Python. Its just that the culture in Python world isn't made up of people who think about those problems or even in that dimension. Its a great language for writing all variety of apps. Perl is the og hacker's language. Python is awesome too, but its not really what Perl is. Most of the bad rep Perl gets is because programmers who only interact with http endpoints and databases tend to not understand where else it could be useful. Like even the regexes. They sound like a pain, until you have to do non trivial string manipulation tasks. Then you discover, regexes do it a lot better than cutting and slicing strings some 100s of times.
- canvascritic 2y agoI'll be frank: I think this idea that ${faveLang} is for misunderstood geniuses who truly understand computers where mainstream languages like Python are for dunces who only know how to glue together APIs is a large part of why such languages as Perl are nearing extinction. It turns out that there are people working on challenging problems in domains you've never heard of in Python -- and pretty much every other language. Give it a rest In the real world, the ability of a lone genius to cobble together a script in an hour is actually not that much of an edge -- it is more important for people to write something that others can understand and maintain. If you can do that in Perl, great, and if writing Perl makes you happy: also great. But beware that smug elitism turns people off, it kills communities and also tends to signal a pathological inversion of priorities. All this should be in service to people, after all
- kamaal 2y ago>>In the real world, the ability of a lone genius to cobble together a script in an hour is actually not that much of an edge Any macro/multiplier is that way. You don't miss it, until some one shows you how to do it. In the last six months alone the scenarios where I had to call upon Perl to help slam dunk a thing insanely laborious are dozens in number. Its just that if you don't know this, or don't know it exists, you grow up being comfortable doing manual work with comfort. Sheer amount of times, I have seen some one spend like half a day doing things which can be done using a vim macro in like seconds is beyond counting at this point.
- stouset 2y agoThe superpower here is a scripting language, not Perl specifically.
- kamaal 2y agoSometimes a language/tool gets to evolve with the operating system right at their birth. The relationship with between Unix, vim, and Perl is that way. This is a unique combination, which I don't think will ever change. Unless of course we move away from Unixy operating systems to something entire new.
- canvascritic 2y agoYou are missing my point. For transparency, you are talking to someone who writes Racket in emacs on my Linux desktop, has used Rust macros to clean up awful code in widely used open source packages, and regularly generates code for all manner of purposes in lots of different languages. I know the slam dunk feeling of generating exactly the code that will topple a problem -- and I also know it's not actually that big an edge! It matters little that you can generate code in an hour that would take your colleague days. It is nice for you and it provides a short lift for your team, but in the limit what matters is maintainability. Peter Hintjens writes fondly of metaprogramming and code generation, but also warns that it makes it difficult for others to work with you, and it's easy to fall into the trap of building abstractions for their own sake. The "edge" in technical work comes from seeing both the forest and the trees, and missing that technical work is in service of humans, first and foremost. I am glad you enjoy writing Perl, and I like encountering people passionate about it in my work. But I still think there are good reasons why it's in decline, and Perl users should reflect more on that rather than assuming people aren't using it because they are dumb / not technical enough / don't think about problems as creatively or deeply.
- lokar 2y agoRegex and slicing are not the only options. I find that people tend to over estimate how hard it is to write a basic parser.
- throwaway2037 2y ago> Node/NPM definitely is on-par with CPAN. But pip isn't even close. Can you explain why Python pip isn't close to CPAN? I could always find what I needed.
- warpspin 2y ago> Node/NPM definitely is on-par with CPAN. But pip isn't even close. I'll say this as someone who still does more than 80% of his backend work in Perl: This is not true. I wish it was. CPAN was awesome once. Now it's mainly old. Yes, you will find obscure things which you won't find for Python. At same time, anything interfacing with modern stuff is often only 40% done in CPAN or not at all compared to the Python, PHP or JavaScript eco system. Not talking about data science stuff here, where Python gained a huge lead - simply have a look at how much support you get nowadays in CPAN for interfacing with, for example, current web api versions or interfacing with third party files like docx, pdf, excel, odt. If there's support for things at all, it is so far far far behind to what libs in other ecosystems have to offer, most of the time. It simply shows that the crowd implementing business applications went elsewhere, so anything in that area seems stuck in the 2000 to 2010s in CPAN.