Live data from Hacker News

Perl 5.26.0 released

nntp.perl.org

71–80 of 165 posts

Re: Perl 5.26.0 released

#71
post #3

Guys I am genuinely asking this and I have zero intent on bashing on Perl. What is the position of Perl industry right now? how much it can compete with Python. Where does it compete? is it on losing side ? P.S. I am student and I have no real perspective on what is going on in industry right now.

Perl has great Unicode support. Not just Unicode regexes, but a lot of built-in Unicode support ( https://perldoc.perl.org/perlunicode.html ). I have no idea if other languages have caught up, though. Perl doesn't have anything like Python's GIL. People have other complaints about threading in Perl, but you can count on things running in parallel more often. I believe Larry Wall is correct that he borrowed more from…

What do you mean by Perl functions being modeled after POSIX functions?

My only points of reference are POSIX being a UNIX system specification which defines both a C language reference and system userspace specification. I also have a vague notion of POSIX specifying the fundamental behavior of shells.

I'm just not quite sure which point of reference to apply.

Re: Perl 5.26.0 released

#72
post #61

Earlier quoted context omitted.

> I have no opinion about Perl as a language but I like how rich the ecosystems is for that sort of project. CPAN was way ahead of the competition - it was elegant where other languages would require you to manually download dependencies archives and wrangle them like a barbarian.

There is a feature I'd like to have in other languages. CPAN Testers. It's actually a really simple ideas. You randomly (or not) download packages and run their tests. The result will be uploaded. This is a really nice alternative to CI services and it makes sure that your stuff works in other environments than your standard Ubuntu LTS systems. It's pretty much crowd funded CI and I am pretty sure that a lot of peopl…

CPANTS is the bane of my existence as a module author, it's also extremely rad to automatically get a test failure report for every possible combination of platform/language version.

Re: Perl 5.26.0 released

#73
post #62
post #45

Earlier quoted context omitted.

> I think it cannot compete with Python at its current state. This has nothing to do with the language (I consider Perl to be vastly superior) but rather its ecosystem and lack of momentum. In this specific case, these are contradictory. Perl and Python had roughly the same amount of corporate backing (almost none) and Perl had a huge head start. If Perl as a language would be "vastly superior", Python would have nev…

Python's growth in popularity is largely due to its superior data science libraries and the backing of Google. Without these it wouldn't be where it is today. Perl's stewardship is largley responsible for its decline. If Perl6 hadn't taken 15 years to complete Perl's popularity might be different. Perl6 is far superior to Python and most popular languages. It's just not performant at string/regex handling which is ir…

Perl is not more readable than Python.

I know that "readable" is a subjective trait, but Python is 1 cm away from being pseudocode.

And when a programming language is basically the thing we write when we don't have any tools to assist us, that says a lot about the language's syntactic quality, including its readability.

Both the data science libraries and Google's backing come from this. And to be honest, I don't really see how Google's backing mattered that much... 99% of the popular Python libraries have nothing to do with Google, especially Django.

Re: Perl 5.26.0 released

#74
post #71

Earlier quoted context omitted.

Perl has great Unicode support. Not just Unicode regexes, but a lot of built-in Unicode support ( https://perldoc.perl.org/perlunicode.html ). I have no idea if other languages have caught up, though. Perl doesn't have anything like Python's GIL. People have other complaints about threading in Perl, but you can count on things running in parallel more often. I believe Larry Wall is correct that he borrowed more from…

What do you mean by Perl functions being modeled after POSIX functions? My only points of reference are POSIX being a UNIX system specification which defines both a C language reference and system userspace specification. I also have a vague notion of POSIX specifying the fundamental behavior of shells. I'm just not quite sure which point of reference to apply.

Perl has a core function called 'unlink', which maps directly to unlink(2). Same for stat, rmdir, link, etc.

They're good for when you want something more than what the coreutils give you, but don't want to compile some C.

Re: Perl 5.26.0 released

#75
post #45

Earlier quoted context omitted.

> I think it cannot compete with Python at its current state. This has nothing to do with the language (I consider Perl to be vastly superior) but rather its ecosystem and lack of momentum. In this specific case, these are contradictory. Perl and Python had roughly the same amount of corporate backing (almost none) and Perl had a huge head start. If Perl as a language would be "vastly superior", Python would have nev…

I don't know how I feel about that. We're talking about subjective measurements here. There are many languages that are "better" than JavaScript for example, yet not many that enjoy its share of success.

That's why I chose my words carefully in the previous comment.

Perl and Python are perfectly comparable regarding origin, corporate backing, marketing, platform restrictions, etc. Javascript isn't.

Perl and Python were both started by a BDFL, acquired a grass-roots community that promoted them and never really had 1 major corporate backer or sponsor that outshined all the others. They also didn't become the main or even the only suppported language for a platform.

They had a really similar trajectory, just with different peaks. Perl peaked earlier and IMO lower.

Re: Perl 5.26.0 released

#76
post #63

Earlier quoted context omitted.

I still think CPAN has more coverage than the equivalent in python

http://modulecounts.com

Which python module lets me declare object methods like:

  method foo(bar):
    self.do_foo(bar+self.baz)
? Because I get tired of all those selfs

Re: Perl 5.26.0 released

#77
post #2

Wow, I haven't looked at Perl in a while, but all sorts of numbers mentioned in the announcement really surprise me. Btw., as mentioned in announcement. The actual changes are here, if you missed that: https://metacpan.org/pod/release/XSAWYERX/perl-5.26.0/pod/pe...

Yes, impressive community effort for a language that... Well... I have heard nothing good about in any "at the water cooler" conversation that I was ever in, over the past fifteen years or so. Except, of course, that Perl is awesome at regular expressions, an advantage that most languages must have caught up on, no? Not for nothing Perl shows up in most hated-lists all around town (top 10 at Stack Overflow).

How many of those "water cooler" conversations you had with someone who actually knew and used perl for at least a few projects? Most of perl hate I hear is from people who've seen like 2 perl one-liners in life and got scared by $, @, and %'s in syntax...

Re: Perl 5.26.0 released

#78
post #8

Reading through the changes it becomes abvious how rich a language Perl is. Just look at all the edge cases and fine tunings that this long time of development and improvement has generated. Its impressive. Anyone starting their own little programming language should really consider how big a task that actually is. This is not to stop anyone or discourage them.

Isn't the point of that comment precisely to discourage someone who might otherwise think the task to be smaller than it is? It's okay to discourage if it helps people understand scope.

Re: Perl 5.26.0 released

#79

Earlier quoted context omitted.

Yes, impressive community effort for a language that... Well... I have heard nothing good about in any "at the water cooler" conversation that I was ever in, over the past fifteen years or so. Except, of course, that Perl is awesome at regular expressions, an advantage that most languages must have caught up on, no? Not for nothing Perl shows up in most hated-lists all around town (top 10 at Stack Overflow).

Perl is still the only language I've seen that has a dedicated syntax for regular expressions. Every other language requires you to write your regexes as strings, which puts you squarely in backslash hell. (I'm sure there must be other languages with dedicated regex syntax, but I'm not aware of any.)

Some other languages have a "raw string" syntax which disables backslash processing. For instance, Python (see https://docs.python.org/3/library/re.html and https://docs.python.org/3/reference/lexical_analysis.html#st...) and Rust (see https://doc.rust-lang.org/reference/tokens.html#raw-string-l...).

Re: Perl 5.26.0 released

#80
post #59

Earlier quoted context omitted.

Even now I start web-projects with Perl. It's not "cool", it's not "sexy", but there package collection ( http://cpan.org/ ) is __huge__. I find it unlikely that new people will suddenly rediscover perl, in the golang/node.js/python-centric state the world is in. But the people who love it, do continue to love it, and do continue to do useful and essential things with it.

The CPAN argument for choosing Perl was relevant about 10 years ago but if you look at http://modulecounts.com you'll find Ruby, Python, PHP, JS and Java have an order of magnitude more libraries to choose from. CPAN is not __huge__ by today's standards. Drupal alone has the same number of modules. The declining community also means many of the libraries on CPAN are unlikely to be maintained.

Yes, "stableperl" maintains a small number of backported bugfixes to Perl 5.22: http://blog.schmorp.de/2015-06-06-a-stable-perl.html

The author cites a couple of issues as the motivation behind the release.

Post reply on HN