In my current Proof of concept, I use PyObject* typing=PyImport_ImportModule("typing");
and it's enough.

At time, I am not an expert of all the source code.

From my understanding, the buildin type must be enough to use Python, without other modules. 
It is just a pure CPU code. If I'm right, to add the operator __or__() and to update the isinstance() and issubclass(), I must have the _GenericAlias accessible without other modules.
I can not import the module typing in isinstance() otherwise an infinite recursion arrives. I use a "bad trick" to resolve this problem.

See here and here.

The code must be better if I can have direct access to _GenericAlias type.
 
So, I imagine this class must be in buildin, or indirectly accessible by buildin methods and functions, without the import of typing.

What do you think?

Philippe


Le jeu. 3 oct. 2019 à 23:17, Chris Angelico <rosuav@gmail.com> a écrit :
On Fri, Oct 4, 2019 at 7:13 AM Jelle Zijlstra <jelle.zijlstra@gmail.com> wrote:
>
>
>
> 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 was published.
>>
>> I propose to add a similar syntax of Scala 3 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.
>
>

There are some changes pending on the PEP text and I believe this will
be one of the topics discussed. Philippe, can you assess the PR and
the comments, and clarify the parts of the proposal regarding this
object and where it'll live?

ChrisA
_______________________________________________
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/