Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> and the snide remarks about completely unrelated languages don’t help your argument.

Granted, I apologize. It was childish.

> but creates an expression rather than a statement.

Expressions are limited in Python for the same reasons. It's the same rational that got us tone done lambdas. People code with a certain style using it, which is not the style we want to promote for Python.

> A linter rule could then be added prohibits the assignment operator, and converts all instances of it to the walrus operator.

Every time you delegate something to a linter, you fail. A good language must be a good language without 3rd party tooling. Tooling should only be a bonus. This is why we have forced indentation in Python. This is why we have namespaces and don't rely on a bundler.

> What the language creators have done instead is add a whole new operator with all new semantics, leading to all new sources of confusion. (See TFA). This is not easy to learn.

You don't learn this operator when you learn Python. Just like people don't learn about list comprehensions at first, don't use yield and code without creating a decorators for years.

Python scales down: you are productive with it without all its features. It is designed to be partially learned and still be useful. Thousands of Python devs are not coders, but scientists, geographers, finance people, etc. They know very little Python and yet, can work all day with it.

Walrus is made so that it doesn't interfere with the original design. It's something separate that you get to later.

> yet ignore the fact that the actual creator of the language was so against the addition of this operator that he saw the community’s insistence on it as reason to step down as BDFL.

That's not what happened. The bad quality of the debate is what made Guido step down. We had a huge number of new comers in the later years because of Python popularity. These people didn't learn internet from the age of mailing list, IRC, etc. They addressed the topic like others talk on Twitter: lot of noise, little content. I understand that after 30 years of doing what is basically free awesome work for thousands of people, he didn't feel like being disrespected by a horde of juniors that though they knew better.



> yet ignore the fact that the actual creator of the language was so against the addition of this operator that he saw the community’s insistence on it as reason to step down as BDFL.

Regarding this part, Guido specifically addressed the toxic debate as the reason for stepping down as BDFL, and not the operator per se.

(Yes, I'm reinforcing BiteCode_dev's reply on this point)


> Every time you delegate something to a linter, you fail. A good language must be a good language without 3rd party tooling.

Thank you.


This isn’t delegating anything to the linter, it’s saying that a linter rule would help some people enforce particular styles (only walrus), if that’s what they want. I.e. the point of a linter.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: