El jue., 3 oct. 2019 a las 10:04, Philippe Prados (< philippe.prados@gmail.com>) escribió:
Hello everybody,
After the previous discussions, a new simplified version of PEP-0604 <https://www.python.org/dev/peps/pep-0604/> was published.
I propose to add a similar syntax of Scala 3 <https://dotty.epfl.ch/docs/reference/new-types/union-types.html> in Python, to accept an or operator.
# Operator for Union assert( int | str == Union[int,str])
The isinstance() and issubclass() were extended to accept this new syntax: isinstance(int, int | str) *It's not really explored.* To accept this evolution, the object Union (and dependencies) now be available as a builtin.
By "available as a builtin", do you mean that it will be in the builtins module, so that the `Union` name will always be accessible anywhere, or simply that the `Union` object will be built into the Python interpreter? Only the latter is actually technically necessary as far as I can see. For example, functions are instances of `types.FunctionType`, which is a "builtin" object, but not actually in the `builtins` module.
Your remarks are welcome.
Philippe _______________________________________________ Typing-sig mailing list -- typing-sig@python.org To unsubscribe send an email to typing-sig-leave@python.org https://mail.python.org/mailman3/lists/typing-sig.python.org/