[Python-Dev] Re: [std-proposals] Exception compatibility with aliens
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
> 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
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
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/