Hacker Newsnew | past | comments | ask | show | jobs | submit | kzrdude's commentslogin

There's a massive wave of stuff, at least. Sorting it, is not easy.

What benefit does the lazy import have here - if we use the value in a type hint at module scope anyway? Would that require Deferred evaluation of annotations -- which I don't think are enabled by default?

Type annotations are lazily evaluated by moving them behind a special annotations scope as of 3.14:

https://peps.python.org/pep-0649/

https://docs.python.org/3/reference/compound_stmts.html#anno...

With 3.15, using lazy typing imports is more or less an alternative to putting such imports behind an "if TYPE_CHECKING" guard.


Ah, thanks for the update. My only check before asking was to check if the future feature for annotations had been enabled by default yet. It has then effectively been abandoned instead, I guess.

Yup, "from __future__ import annotations" will eventually be removed:

> from __future__ import annotations (PEP 563) will continue to exist with its current behavior at least until Python 3.13 reaches its end-of-life. Subsequently, it will be deprecated and eventually removed.


So the future behavior is deprecated before it ever became the default?

It was an abandoned path even before 3.10, it just took longer to implement 649 and 749 than they expected.

But this is a "...will continue to exist with its current behavior at least..." is an important bit there.

From pep-0749:

     Sometime after the last release that did not support PEP 649 semantics (expected to be 3.13) reaches its end-of-life, from __future__ import annotations is deprecated. Compiling any code that uses the future import will emit a DeprecationWarning. This will happen no sooner than the first release after Python 3.13 reaches its end-of-life, but the community may decide to wait longer.
It has a good overview of the history.

https://peps.python.org/pep-0749/


Correct. Before the "from __future__ import annotations" behavior that converts annotations to strings became the default, they figured out a better mechanism for circular type annotations (making them lazy) that is implicitly backwards compatible and that didn't need to be guarded behind a future statement.

Ironically, the new default behavior (making type annotation evaluation lazy) is not backwards compatible with the "from __future__ import annotations" behavior of converting annotations to strings, so they can't just rip out "from __future__ import annotations" and instead it needs to be deprecated and removed over multiple releases.

Oh, what tangled webs we weave! :-)


After the rise of Rust, it has gained more visibility? But some people were interested in C in this way long ago too, I used to hang out in some godforsaken irc channel where people competed in out-pedanticing each other over the C standard.

I trust your historical C usage was more productive than that..


AI is getting really useful, might be why

My go-to example of "UB is everywhere" is this one:

    int increment(int x) {
        return x + 1;
    }
Which is UB for certain values of x.

C23 removed the whole stuff about indeterminate value and trap representation. Underflow/overflow being silent or not is implementation defined.

Signed overflow is just undefined.

TBF that is the same as saying "signed overflow is UB".

yes but it is a 'picture' that makes you think about it in a different way.

As mentioned in another recent thread, that time is now.

Gemini 3.1 basically takes it home on that benchmark, anyway, it's done.

Gemini is heavily benchmaxxed and sucks in agentic coding so no surprise.

I think that's the key explanation. Gamers are no longer a mass market user group for microsoft - they target all the casual computer users. Gamers actually want full control of their computer, pay attention to details and care about performance: that's a niche user base, and it's clear why their interests overlap with the linux community: user needs trump everything.

I don't know if I'd agree with the adage about gamers wanting full control. A subset of gamers, absolutely.

But this excludes the entire console population. This arguably excludes most Steam Deck customers, who picked it because Valve made the Linux experience seamless, so they don't have to pay attention to the details. This excludes many of the PC gamers I know, that do not care beyond whether their computer is capable of playing the games they want to. They won't even reformat their Windows to remove OEM bloat.


I think you are way overestimating how technically inclined the average gamer is. Most of them just want to play a couple rounds of fifa or madden or call of duty to blow off some steam after work, not to spend extra time and effort optimizing their gameplay experience besides maybe buying a nicer keyboard on Black Friday.

You don't tend to hear them online of course. They are the silent majority keeping the AAA industry alive.


Leaders are not conveying so much about the loss of trust, because they are saving face for the US to try to rescue what little can be rescued of the remaining relationship.

probably also to not make feel Trump too isolated in fears he does something unfixable.

It's a new era of capital, literally, in software development. Ownership of the means of production is now concentrated.


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

Search: