Live data from Hacker News

What's Coming in Python 3.8

lwn.net

61–70 of 558 posts

Re: What's Coming in Python 3.8

#61
The lack of the "nursery" concept for asyncio really sucks. Originally I heard it was coming in 3.8. Right now asyncio has this horrible flaw where it's super easy to have errors within tasks pass silently. It's a pretty large foot gun.

Re: What's Coming in Python 3.8

#62
post #8

Python looks more and more foreign with each release. I'm not sure what happened after 3.3 but it seems like the whole philosophy of "pythonic", emphasizing simplicity, readability and "only one straightforward way to do it" is rapidly disappearing.

I see what you're saying, but I kinda like the gets ":=" operator.

But now there are two ways to do assignment. That's not very pythonic, is it?

Re: What's Coming in Python 3.8

#63

Gotta ask how many of these changes are actually reflective of changing environments. I could see with c++ that between 2003 and 2014 a fair few underlying machine things were changing and that needed addressing in the language. But Python is not quite as close to the machine, and I don't see how something like the walrus is helping much. If anything it seems like you'd scratch your head when you came across it. And…

> I'm guessing a lot of people don't ever read a comprehensive python guide, what are they going to do when they see that?

My guess would be "run it and see what it does".

Re: What's Coming in Python 3.8

#64

Earlier quoted context omitted.

Most code still look like traditional Python. Just like meta programming or monkey patching, the new features are used sparingly by the community. Even the less controversial type hints are here on maybe 10 percent of the code out there. It's all about the culture. And Python culture has been protecting us from abuses for 20 years, while allowing to have cool toys. Besides, in that release (and even the previous one)…

> Even the less controversial type hints are here on maybe 10 percent of the code out there. I think this metric is grossly overestimated. Or your scope for "out there" is considering some smaller subset of python code than what I'm imagining. I think the evolution of the language is a great thing and I like the idea of the type hints too. But I don't think most folks capitalize on this yet.

I mean 10% of new code for which type hints are a proper use case, so mostly libs, and targeting Python 3.5+.

Of course, in a world of Python 2.7 still being a large code base and Python being used a lot for scripting, this will far from the truth for the entire ecosystem.

Re: What's Coming in Python 3.8

#65
post #24

Earlier quoted context omitted.

“I've come up with a set of rules that describe our reactions to technologies: 1. Anything that is in the world when you’re born is normal and ordinary and is just a natural part of the way the world works. 2. Anything that's invented between when you’re fifteen and thirty-five is new and exciting and revolutionary and you can probably get a career in it. 3. Anything invented after you're thirty-five is against the n…

Does that mean someone born in 2008 will think C++ is simple and elegant?

Good point. I think it should be rephrased in basis of personal familiarity: people who learned C++ before they were 15 indeed think that it's simple and elegant.

Re: What's Coming in Python 3.8

#66
post #46

Earlier quoted context omitted.

Disable it in pylintrc. Pylint is unusable without a good config file anyway.

Ideally the defaults should be sensible. I have found they mostly are, except the f-string one.

on the contrary, i've seen code slow down by 50% due to a log.debug() that wasn't even emitted in prod. should've seen my face when i saw the pyspy flamechart.

Re: What's Coming in Python 3.8

#68

Earlier quoted context omitted.

It's not that common. There's 1 place where its useful imo (comprehensions to avoid duplicate calls), but even that can be handled case by case, and it certainly isn't a common thing.

Disagree. In my experience (albeit, not very long, been writing Python since 2007 or so), assigning to a value and checking for truthiness is a very common pattern.

Very common pattern, confusing nonetheless. It does two different things at once where traditionally Python is explicit and only does one thing at once.

Re: What's Coming in Python 3.8

#69

Earlier quoted context omitted.

F-strings have appeared 2 versions ago. All in all, the feedback we have has been overwhelmingly positive, including on maintenance and readability.

...but every addition to make them more powerful and feature-rich is one more step in the direction of blurring the lines between what's code and what isn't, since more and more things that are supposed to be code will be expressed in ways that aren't code at all but fed to an interpreter inside the interpreter. And with every release, the language specification that I'm having to hold in my head when dealing with ot…

there's a difference between stability and stagnation and IMHO Python gets it.

finished is dead, to put it less mildly.

Re: What's Coming in Python 3.8

#70
I long for a language which has a basic featureset, and then "freezes", and no longer adds any more language features.

You may continue working on the standard library, optimizing, etc. Just no new language features.

In my opinion, someone should be able to learn all of a language in a few days, including every corner case and oddity, and then understand any code.

If new language features get added over time, eventually you get to the case where there are obscure features everyone has to look up every time they use them.

Post reply on HN