On 21/01/2022 11:51, Oscar Benjamin wrote:
I really don't understand (having read everything above) why anyone
prefers {1,2,3}.frozen() over f{1,2,3}. Yes, some people coming from
some other languages might get confused (e.g. in Mathematica this is
function call syntax) but that's true of anything: you have to learn
Python syntax to use Python. The fact that {1,2,3} is a set and
f{1,2,3} is a frozenset is not difficult to explain or to understand,
especially in a language that already uses single letter prefixes for
other things.
The .frozen() method is a strangely indirect way to achieve a minor
optimisation. Outside of attempting to achieve that optimisation it's
basically useless because any time you would have written obj.frozen()
you could have simply written frozenset(obj) so it does nothing to
improve code that uses frozensets.
With f{...} you have a nice syntax that clearly creates a frozenset
directly and that can be used for repr.
+1
_______________________________________________
Python-ideas mailing list -- python-ideas@python.org
To unsubscribe send an email to python-ideas-le...@python.org
https://mail.python.org/mailman3/lists/python-ideas.python.org/
Message archived at
https://mail.python.org/archives/list/python-ideas@python.org/message/TJMIXB4V2WYYTI5IJ2LAL3N5XTTN4R57/
Code of Conduct: http://python.org/psf/codeofconduct/