Now let me unpack that. I'm curious to see if you reply and whether we arrive at middle ground.
> in practice [Perl's use of operators] makes Perl programs more difficult to maintain than they should be
This is an old saw but do you agree that it is a misstatement of what's actually going on:
* Some Perl programmers, especially experienced ones, have made and continue to make Perl programs, including large ones, EASIER to maintain than they could be and would be if written by a similarly strong programmer using the deliberately dumbed down language Python.
* Some Perl programmers, especially beginners, have made and/or continue to make Perl programs, mostly small ones, more difficult to maintain than they should be and would be if written by a similarly weak programmer using a deliberately dumbed down language like Python.
Perhaps your response to that is something like "Oh sure, I just meant most programs I see because they're mostly small and written by inexperienced programmers."
If not, how modern are the Perl programs of which you speak? Much has changed since 2000 and especially in the 2010s: Perl 5 has stabilized around a wise view of the language, interpreter, and how to be respectful of each others' failings; Perl 6 has radically dialed back the complicated built in availability of terribly cryptic symbol aliases as part of a complete rethink of what it means to be a Perl language.
As for the "hate speech" aspect:
>> Of course, it's definitely possible to overdo this -- then you get Perl.
> That's the Guido we know and love.
The above was the entirety of by far the highest voted comment in the python reddit post about this article.
I posted the following in sardonic response, which also got upvoted:
> Once you've internalized the simple properties which operators tend to have, using + for string or list concatenation becomes more readable than a pure OO notation, and (2) and (3) above explain (in part) why that is.
> But it contradicts property (1). That's (in part) why I did not use + for string and list concatenation in Perls. Then again I used it for adding floats, even though that contradicts property (1) too. And changed my mind about what symbol to use between Perl 5 and Perl 6. Heck, who cares about consistency?
> I care. I consistently hate on Perl and Python users consistently love me doing so.
I generally find Guido's and the Python community's intolerant attitude consistent with the above and with this exchange about the same article on twitter:
> Random nit: you've got a "font-size: 85%" in the CSS for your posts. Mind removing that, so those of us with our default font-size set deliberately don't have to squint?
> I'm sorry, I have no interest in CSS hacking. The template is what it is. Deal with it.
Guido's riposte also got lots of hearts (presumably to soothe or applaud their beloved ex-BDFL).
I note the follow up got nothing from Guido:
> It's a single-line deletion, and would improve the accessibility of your blog, but sure ok.
There's zero chance Larry would have thought and spoken as Guido did and he absolutely would have made that single line deletion out of respect for the person whose eyesight wasn't as good as others'. The same attitude applies to improving the language and culture.
How familiar are you with current Perl activity?
I see a new Perl emerging, one that will unfold throughout the 2020s. I see a well entrenched self-reinforcing tolerant attitude in Perl culture, even of those who like to use too many operators for my liking.
The only comment I would add is clarification on your comment about 'Your use of "100% agree" and "I actually really like Perl" are mutually contradictory.'
Someone can really like a languages, but not agree with all the language designer's choices. A language designer needs to make tradeoffs, and I hope we can agree that not every choice needs to be universally accepted. Tolerance != uniformity and bind acceptance.
Beyond that: I'm very familiar with Perl 5, Perl 6, and the direction the community is taking the languages, and the Perl culture. I just disagree with some of the language choices.
> Someone can really like a languages, but not agree with all the language designer's choices.
Yes, of course.
When writing about `+`, Guido might have chosen to gently chide himself for deciding to break the very first principle he wrote about in his article.
Instead he arbitrarily focused on a couple later principles he didn't break -- and then rudely dissed Perl which deliberately did not break any of the principles he listed in his article.
I really like Python but I do not agree with all Guido's choices in human language and that inappropriate cheap shot at Perl was an example.
> A language designer needs to make tradeoffs
As I wrote, Guido chose to write "The template is what it is. Deal with it." in response to someone with poor eyesight requesting he make a one line change.
Twitter is a constrained medium so he presumably felt he needed to tradeoff civility for making his point clear. But:
> I hope we can agree that not every choice needs to be universally accepted. Tolerance != uniformity and bind acceptance.
That was the point of my first reply to you.
I was curious to see if you would agree that Guido's decision to be rude toward Perl in the very context in which he'd just described a flaw in Python according to his own stated principles did not warrant the essentially universal acceptance it got in the reddit python thread.
And, likewise, his rudely dismissive twitter response to a random innocent person reading his article which received far more hearts than those sympathizing with the tweeter with less than perfect eyesight.
> Beyond that: I'm very familiar with Perl 5, Perl 6, and the direction the community is taking the languages, and the Perl culture. I just disagree with some of the language choices.
To recap, I wasn't speaking about disagreement. And not really about Perl either. I was speaking of agreement with Guido's rudeness.