Live data from Hacker News

Perl 5.26.0 released

nntp.perl.org

151–160 of 165 posts

Re: Perl 5.26.0 released

#151
post #110
post #98

Earlier quoted context omitted.

> Python's growth in popularity is largely due to its superior data science libraries and the backing of Google. Both are false. Data science libraries are quite new development that happened because Python got popular, not the other way around. Backing by Google (whatever you mean) was irrelevant, as the main selling points for Python dozen years ago was simple and readable syntax and nice web toolkits (a movement t…

Ruby 1.0 was released in 1996 and Python 1.0 in 1994. If Perl's demise was due to the simpler syntax of Python and Ruby why was Perl ever popular? Answer: Perl CGI at the dawn of the WWW. I'd date Perl's decline from around 2005 so Django and Rails might have more to do with it than languages and syntax.

Perl was popular because it had a huge head start. Perl 5 was released the same year as Python 1.0. CPAN launched in 1995, PyPI in 2003.

Python began to pick up momentum around 2000. It was able to break out of the "scripting" niche because it had good OO support and encouraged a consistent style that made it easy for several developers to work on a large project.

Rails probably marked the tipping point, but it wasn't just the framework. A lot of Perl programmers found out they liked Ruby. You're right that Perl 6 was part of the problem; it might be where Ruby is today if it had come out in 2003.

On the other hand, Ruby probably wouldn't exist if Perl 5 had a better object system.[1] It's "Ruby on Rails" because DHH fell in love with Ruby.[2] The creators of Django learned Perl before falling in love with Python.[3] So that has something to do with the languages too.

[1] http://www.linuxdevcenter.com/pub/a/linux/2001/11/29/ruby.ht...

[2] https://www.quora.com/Why-did-David-Heinemeier-Hansson-choos...

[3] http://www.akitaonrails.com/2008/01/01/chatting-with-adrian-...

Re: Perl 5.26.0 released

#152
post #104

Earlier quoted context omitted.

That's not a requirement of anonymous callbacks. That's just a symptom of poor coding standards. It can happen in Python too.

And yet the two go hand in hand. Have never seen it in Python, though have never used twisted either.

> And yet the two go hand in hand.

It's a tool that can be abused. Saying that the number of tools available should be limited so that they can't be abused seems counter-productive.

Re: Perl 5.26.0 released

#153
post #136
post #134

Earlier quoted context omitted.

>You're declaring the function within that scope. You can do this in other languages too. >This isn't some Python-specific thing. I think btilly meant that by the ability to do in Python what he described (define a nested function and then return it), you get (almost) all the same features as anonymous functions (and specifically, more than Python's lambdas give you, because they can only contain an expression, not s…

> And BTW they are quite powerful so you can do a lot with them. I'm not saying that they aren't powerful. I'm saying that personally, I find declaring one-time-use functions in-line to be syntactically more pleasant / organized than sticking the function definition in the middle of functional code. I'm not a newbie to Python, but after working with it for years, it's one of those things that I still wish existed. It…

>I find declaring one-time-use functions in-line to be syntactically more pleasant / organized than sticking the function definition in the middle of functional code.

Ok, I get what you mean now, and think you have a point there.

Re: Perl 5.26.0 released

#154

Earlier quoted context omitted.

I think your comment on wages is astute, and it's the same everywhere. There are Perl jobs around, but they're on legacy codebases in (parts of) organizations that are basically too dysfunctional / under-resourced / incompetent to upgrade them, and if you take the job you'll just be putting out fires and stagnating. When you take that into account, the salary would need to be at a real premium to make it worthwhile,…

The 2017 SO Developer Survey has Perl in 6th place for highest compensation in the world. https://insights.stackoverflow.com/survey/2017#technology-to... Interestingly, Perl places 5th in the USA for highest compensation, and it doesn't even make the lists of France, Germany, India, and the UK.

Hmm, I am pretty surprised by that, but I'll take it at face value.

I suspect there is too much else going on for a comparison of salaries by language to be meaningful. Those Perl programmers are probably highly paid mainly because they have 20ish years of experience, and lots of other valuable Linux/Unix experience. There are probably lots of fresh graduate and entry level JavaScript / Java / C++ developers bringing down those averages.

I always get a good laugh when I see job ads for a "Junior Perl developer" paying 25k GBP or something. They stopped making those 20 years ago.

Re: Perl 5.26.0 released

#155
post #90

Earlier quoted context omitted.

I see what you mean. POSIX was basically a committee ratifying things that a bunch of systems people had come up with. So it gets to the point, it's reasonably concise, and there's little noise to wade through to do most things. Java was slowly designed by committee, taking inspiration from other languages. I just thought of something. Maybe it's relevant. IBM said "let make something totally different with this 8086…

I think Java's "all OOP, all the time" approach influenced their standard library design. I don't like the result. "Modernism was based on a kind of arrogance, a set of monocultural blinders that elevated originality above all else, and led designers to believe that if they thought of something cool, it must be considered universally cool. That is, if something's worth doing, it's worth driving into the ground to the…

Very very interesting thoughts, thanks very much for this comment. Would +10 if I could.

The article was an excellent read too.

I've noticed that a lot of people around the 18-25 demographic (and some outside that range) have mental health issues that (among other catastrophes) cause detrimental effects to emotional development. I was thankfully able to get off this train myself using alternative therapies about ten years ago, but one of the things I observed about myself was a tendency to hone in on one specific idea present in something I was thinking about and then redefine what I was focusing on on the basis of and in terms of that idea, in many situations irreversibly discarding any other possible interpretations. I essentially didn't have the capacity to wield concepts that required careful balance between a series of discrete ideas.

I wonder a lot about how much of the noise margin present in current research and work is caused by related developmental issues.

Re: Perl 5.26.0 released

#156
post #150

Earlier quoted context omitted.

"It's also much slower" Perl was never intended to be fast for computers. It was intended to be fast for programmers . Perl 6 does a pretty darn good job of that, and additionally already has working and easy-to-use C/C++-compatible FFI that I can use today to offload things that really do require maximum computational performance (that latter point wasn't true for cperl last I checked; "extern sub ..." is still a "t…

extern sub is actively being worked on. The technical problem is not the ffi, this is trivial, but to fix the broken attributes architecture beforehand. They are not usable at runtime (variable arguments) and Attribute::Handlers only makes it worse. Of course cperl is lacking compared to perl6 features, user facing. Because I had to fight first p5p sloth, like broken designs for everything. cow, const, threads, attri…

Are you open to taking patches to that blog entry?

Re: Perl 5.26.0 released

#157
post #152

Earlier quoted context omitted.

And yet the two go hand in hand. Have never seen it in Python, though have never used twisted either.

> And yet the two go hand in hand. It's a tool that can be abused. Saying that the number of tools available should be limited so that they can't be abused seems counter-productive.

The trend toward limiting ultimately counter-productive language flexibility is getting stronger, not weakening.

See static typing, golang, and functional languages.

Re: Perl 5.26.0 released

#158

Earlier quoted context omitted.

I think perl invites a kind of mindset from how the language is and how the initial community was. Why does it have something called 'say' instead of something more intuitive like 'println'. Then there are worse examples: carp, cluck, croak. These are commonly used. They are from the same module of course. There is also Moo, Moose. I'm not sure but was there something called 'Mo' too? Commonly used of course but as y…

> Why does it have something called 'say' instead of something more intuitive like 'println'. "Say" is a common English verb that fairly directly communicates the action performed (with a bit of metaphor, sure.) "Println" is, well it starts out with something which might be as good as "say" and then has some extra opaque consonants glued on the end. The latter is only "more intuitive" from the perspective of someone…

Exactly. "Print" originally made me think of an ink printer. "Say" makes alright sense. Strangest I've seen is the basic language PBASIC's "debug" statement for the BASIC STAMP controller.

Re: Perl 5.26.0 released

#159

Earlier quoted context omitted.

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

…is the answer 'the downvotes module'?

Downvoters: ok I get it: never post anything that's not a glowing recommendation of Python or an attempt to learn more about available modules/distributions.

Re: Perl 5.26.0 released

#160
post #150

Earlier quoted context omitted.

extern sub is actively being worked on. The technical problem is not the ffi, this is trivial, but to fix the broken attributes architecture beforehand. They are not usable at runtime (variable arguments) and Attribute::Handlers only makes it worse. Of course cperl is lacking compared to perl6 features, user facing. Because I had to fight first p5p sloth, like broken designs for everything. cow, const, threads, attri…

Are you open to taking patches to that blog entry?

Of course not. Only typos. Blog entries are one-time discussion entries, written by the author, not by chromatic. You are free to add comments.

While you censored me from adding comments to the old official discussion channels, I will not censor you on the new discussion channel /r/cperl or here. I just don't accept illegal comments as they used to happen on the old channels (asshole and such).

Post reply on HN