[Python-Dev] Re: [std-proposals] Exception compatibility with aliens

2023-01-18 Thread Josh Engroff
Table this, perhaps? 


> On Jan 18, 2023, at 5:04 PM, Barry Scott  wrote:
> 
> 
> 
>> On 18 Jan 2023, at 15:35, Frederick Virchanza Gotham 
>>  wrote:
>> 
>>> On Wed, Jan 18, 2023 at 3:07 PM Jason McKesson wrote:
>>> 
>>> Also, this proposal seems to be missing the biggest issue with
>>> cross-language exception handling: the fact that you can't throw
>>> exceptions across languages. The only thing you *can* do is catch
>>> exceptions on the source language end, convert them into some data
>>> packet, and throw a different exception on the destination language
>>> side.
>> 
>> 
>> Yes this is what I had in mind. Behind the scenes, the C++ compiler
>> would catch the Python exception and then throw something that C++ can
>> deal with "such as std::aliens::python::exception".
> 
> In PyCXX I allows exceptions to go into and out of python and C++.
> https://cxx.sourceforge.net/
> 
> You can raise in C++ go into python and back into C++ and the exception 
> arrives as expected.
> You can riase in Python fo into C++ and back to Python and again the 
> exception arrives as expected.
>  That is as long as its a python exception.
> 
> Barry
> 
>> ___
>> Python-Dev mailing list -- python-dev@python.org
>> To unsubscribe send an email to python-dev-le...@python.org
>> https://mail.python.org/mailman3/lists/python-dev.python.org/
>> Message archived at 
>> https://mail.python.org/archives/list/python-dev@python.org/message/5OARJXOXYFXHTO2OBHUGFVFSQHOVPVPO/
>> Code of Conduct: http://python.org/psf/codeofconduct/
>> 
> 
> ___
> Python-Dev mailing list -- python-dev@python.org
> To unsubscribe send an email to python-dev-le...@python.org
> https://mail.python.org/mailman3/lists/python-dev.python.org/
> Message archived at 
> https://mail.python.org/archives/list/python-dev@python.org/message/NFUSVJB2N6FZVU23L2IVSCG3SN6DMINO/
> Code of Conduct: http://python.org/psf/codeofconduct/
___
Python-Dev mailing list -- python-dev@python.org
To unsubscribe send an email to python-dev-le...@python.org
https://mail.python.org/mailman3/lists/python-dev.python.org/
Message archived at 
https://mail.python.org/archives/list/python-dev@python.org/message/7JQHGK6F2FI526XG7J77NPGOUC3LUWZ3/
Code of Conduct: http://python.org/psf/codeofconduct/


[Python-Dev] Re: [std-proposals] Exception compatibility with aliens

2023-01-18 Thread Barry Scott


> On 18 Jan 2023, at 15:35, Frederick Virchanza Gotham 
>  wrote:
> 
> On Wed, Jan 18, 2023 at 3:07 PM Jason McKesson wrote:
>> 
>> Also, this proposal seems to be missing the biggest issue with
>> cross-language exception handling: the fact that you can't throw
>> exceptions across languages. The only thing you *can* do is catch
>> exceptions on the source language end, convert them into some data
>> packet, and throw a different exception on the destination language
>> side.
> 
> 
> Yes this is what I had in mind. Behind the scenes, the C++ compiler
> would catch the Python exception and then throw something that C++ can
> deal with "such as std::aliens::python::exception".

In PyCXX I allows exceptions to go into and out of python and C++.
https://cxx.sourceforge.net/

You can raise in C++ go into python and back into C++ and the exception arrives 
as expected.
You can riase in Python fo into C++ and back to Python and again the exception 
arrives as expected.
 That is as long as its a python exception.

Barry

> ___
> Python-Dev mailing list -- python-dev@python.org
> To unsubscribe send an email to python-dev-le...@python.org
> https://mail.python.org/mailman3/lists/python-dev.python.org/
> Message archived at 
> https://mail.python.org/archives/list/python-dev@python.org/message/5OARJXOXYFXHTO2OBHUGFVFSQHOVPVPO/
> Code of Conduct: http://python.org/psf/codeofconduct/
> 

___
Python-Dev mailing list -- python-dev@python.org
To unsubscribe send an email to python-dev-le...@python.org
https://mail.python.org/mailman3/lists/python-dev.python.org/
Message archived at 
https://mail.python.org/archives/list/python-dev@python.org/message/NFUSVJB2N6FZVU23L2IVSCG3SN6DMINO/
Code of Conduct: http://python.org/psf/codeofconduct/


[Python-Dev] Re: [std-proposals] Exception compatibility with aliens

2023-01-18 Thread Frederick Virchanza Gotham
On Wed, Jan 18, 2023 at 3:07 PM Jason McKesson wrote:
>
> Also, this proposal seems to be missing the biggest issue with
> cross-language exception handling: the fact that you can't throw
> exceptions across languages. The only thing you *can* do is catch
> exceptions on the source language end, convert them into some data
> packet, and throw a different exception on the destination language
> side.


Yes this is what I had in mind. Behind the scenes, the C++ compiler
would catch the Python exception and then throw something that C++ can
deal with "such as std::aliens::python::exception".
___
Python-Dev mailing list -- python-dev@python.org
To unsubscribe send an email to python-dev-le...@python.org
https://mail.python.org/mailman3/lists/python-dev.python.org/
Message archived at 
https://mail.python.org/archives/list/python-dev@python.org/message/5OARJXOXYFXHTO2OBHUGFVFSQHOVPVPO/
Code of Conduct: http://python.org/psf/codeofconduct/


[Python-Dev] Re: [std-proposals] Exception compatibility with aliens

2023-01-18 Thread Ville Voutilainen
On Wed, 18 Jan 2023 at 11:45, Frederick Virchanza Gotham via
Std-Proposals  wrote:
>
> I have sent this email to two mailing lists for programming language
> proposals, the one for C++ and the one for Python. If you reply to
> this email, please make sure you reply to both. You can see the
> mailing list archives for this month for each list here:
>
> C++  :  https://lists.isocpp.org/std-proposals/2023/01/date.php
> Python  :  https://mail.python.org/archives/list/python-dev@python.org/2023/1/
>
> Both C++ and Python have exception handling, however a C++ program
> which links with a Python library is unable to handle an exception
> thrown from Python.

Perhaps you should just use
https://www.boost.org/doc/libs/1_81_0/libs/python/doc/html/index.html

See also https://realpython.com/python-bindings-overview/

In both C++ and Python, exceptions can contain anything as their
payload. The problem becomes a problem of
mapping one language to the other, not just mapping exceptions. That
makes it a general cross-language binding generation problem,
so the forthcoming reflection/injection in C++ can certainly help, but
just having a 'list' of exceptions isn't going to
cut it either way.
___
Python-Dev mailing list -- python-dev@python.org
To unsubscribe send an email to python-dev-le...@python.org
https://mail.python.org/mailman3/lists/python-dev.python.org/
Message archived at 
https://mail.python.org/archives/list/python-dev@python.org/message/XWENS3AO6PYAHGQL6S64NDXUT45PMEYP/
Code of Conduct: http://python.org/psf/codeofconduct/