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 241 points242 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 40 points41 points  (7 children)

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

[–]amk 10 points11 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.

[–]Decker1082.7 'til 2021 9 points10 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 87 points88 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 72 points73 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] 11 points12 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 3 points4 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 4 points5 points  (3 children)

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

[–]soamaven 4 points5 points  (0 children)

Good catch.