4 ms·
Perl is a Turing-complete language that runs on any platform and has maybe the longest-standing repository of open-source libraries. I haven't seen a benchmark
by tootie 3y ago
Perl is a Turing-complete language that runs on any platform and has maybe the longest-standing repository of open-source libraries. I haven't seen a benchmark recently, but I'd bet it still outperforms Python or node. But yeah, you'd be laughed out of any job for suggesting it be used for any serious work. It lost the PR war years ago.
I used it as my primary language for several years and it's extremely capable and intuitive. The learning curve of it's syntax is really only slightly longer than any other language. And I have the very strong opinion that syntax contributes less than 5% of readability and the rest is up to the developer to factor smartly and name things well.
- diputsmonro 3y agoAgree! I will add that it's actually very possible to write Perl in a readable way (at least no more unreadable than your average bash or python script). It's all up to the developer to write readable, maintainable code instead of trying to impress themselves with their esoteric one-liners. With the light syntax and giant, well-documented community repos, it feels a lot like Python With References to me, which is honestly pretty great imo. I wish more people respected Perl.
- xandrius 3y agoTo be fair neither node nor python are where they are today because of their performance. I wish we could leave them behind as a fun phase of mass adoption of programming and fully switch to strongly typed languages alone. One can dream.
- tootie 3y agoAs much as I enjoyed Perl, I also cannot fathom how these kind of languages got so much adoption. For me, productivity is most strongly correlated with IDE support, debuggers and documentation. These are the kind of things Java and C# beat everyone else at. But it seems like a lot of devs are just dogmatically tied to their text editors.
- xandrius 3y agoYeah, many people are happy with their IDE not letting them do something incorrectly (if they have extensions X, Y, Z installed), I prefer having something incorrect being impossible to exist.
- krupan 3y agocorrect vs. incorrect encompasses so much more than memory safety and types that agree. You could spend a ton of time making the ADA or Rust compiler happy only to discover your program doesn't solve the problem your customers want solved. That's why Python is still so very popular
- krupan 3y ago"cannot fathom how these kind of languages got so much adoption" The other options built into your UNIX (maybe Linux) machine were: - C - C++ - tcsh/ksh/bash - awk - TCL What would you have chosen?
- kamaal 3y agoApart from Python, even today what are the options? golang/rust/c doesn't fit well the kind of tasks you would use Perl to do. There is simply too much verbosity and at some point in time you will bail out of the sisyphean nature of the task. Kotlin etc are more for mobile apps. To me, back end work is- 1. Any serious application, that needs to run for years with performance - Java. 2. Glue work- Python/Perl.
- xandrius 3y agoI wouldn't dismiss Go that quickly, and same for C#.
- tmtvl 3y agoPerl has a very strong documentation culture. One of the things I miss in Common Lisp is the ability to just do 'perldoc List::Util' and get an overview of all subroutines in that module, with examples and clear explanations of how it all works.
- selimthegrim 3y agoI am reasonably sure Rentrak in Portland still uses Perl.