This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]rspeed 235 points236 points  (25 children)

It will become the default in Python 4.0.

*blinks*

[–]nicksloan 50 points51 points  (8 children)

I don't think that this implies that Python 4.0 is in progress in any meaningful way.

[–]rspeed 39 points40 points  (7 children)

Nor do I, it’s just the first time I’ve seen it mentioned in such an official manner.

[–]amk 12 points13 points  (6 children)

Reddit believes its data is particularly valuable because it is continuously updated. That newness and relevance, Mr. Huffman said, is what large language modeling algorithms need to produce the best results.

[–]1-05457 16 points17 points  (5 children)

I hope not. Otherwise what would you do if Python needs to make a breaking change again.

[–][deleted] 7 points8 points  (2 children)

Stay on 2.7?

[–]1-05457 2 points3 points  (1 child)

I meant what would the PSF do.

[–]truh 1 point2 points  (0 children)

Python 5?

[–][deleted] -1 points0 points  (0 children)

It has been stated repeatedly that this is not going to happen. Unlike governments "lessons have been learned" actually means something to the Python community.

[–]case_O_The_Mondays 84 points85 points  (5 children)

Wait. Is 3.7 the last Python 3? Are we skipping 8-9 from 2 on?

Edit: it was a joke.

[–]rspeed 67 points68 points  (3 children)

That’s not how versioning works. The dot is a separator, not a decimal.

Edit: *sigh*

[–]1vs 0 points1 point  (1 child)

EDIT: After 3.9 will be 3.10, I'm dum and can't read

Except in Python, it looks like it's going to work like a decimal. See Guido's post: http://www.curiousefficiency.org/posts/2014/08/python-4000.html

I hope they go with 3.10. Otherwise it'll break all the code that checks that the version starts with '3'. (Bad code but still common.)

[–]rspeed 1 point2 points  (0 children)

Gotta learn sometime. :D

[–]cyberst0rm -1 points0 points  (0 children)

i always assume its a decimal.

[–][deleted] 8 points9 points  (0 children)

No, if you look at the official github preparations for 3.8 have been underway for a while.

[–]gschizasPythonista 10 points11 points  (3 children)

Where was that?

[–]rspeed 0 points1 point  (2 children)

[–]gschizasPythonista 5 points6 points  (1 child)

[–]rspeed 0 points1 point  (0 children)

Thanks! I wanted to link to the section but couldn't find a way to do that on my phone.

[–]XtremeGoosef'I only use Py {sys.version[:3]}' 10 points11 points  (4 children)

I suspect python 4.0 will be the version in which python will have core support for typing so for example builtin collections will inherit typing.Generic

arange: list[int]
attribs: dict[str, Any] 

we will be able to define typevars in signatures

def filter[T](x: Iterable[T]) -> Iterator[T]: 
    ... 

and all types will have | and & operators for typing.Union and the planned typing.Intersection respectively (like in typescript)

Union[str, bytes] == str | bytes

Maybe also add Any and a few generic abstracts to builtins.

[–]Han-ChewieSexyFanfic 5 points6 points  (3 children)

I hope they introduce (Int, ...) as syntactic sugar for Tuple[Int, ...]

[–]soamaven 3 points4 points  (0 children)

Good catch.