Thread overview | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
|
January 18, 2016 D is now catching C++ exceptions! | ||||
---|---|---|---|---|
| ||||
at least for 64 bit Linux. Other platforms to follow. https://github.com/D-Programming-Language/dmd/pull/5342 This is what Andrei and I call "enabling" technology, as it opens the door for many more uses of D, in this case better interoperability with existing C++ codebases. Thanks to everyone who helped out with this, especially Elie, Iain, David and Andrei! Also looking forward to getting this in GDC and LDC! Andrei and I feel that better interoperability with C++ is a major strategic feature and advantage for D. As the recent thread with Manu's frustrations in doing it show, we still have a significant way to go. But I hope to push it forward hard in the next few months. For the fearless who love working under the hood, extending the support to the rest of the platforms is a great way to materially contribute. |
January 19, 2016 Re: D is now catching C++ exceptions! | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | On 19 January 2016 at 08:26, Walter Bright via Digitalmars-d-announce <digitalmars-d-announce@puremagic.com> wrote: > at least for 64 bit Linux. Other platforms to follow. > > https://github.com/D-Programming-Language/dmd/pull/5342 > > This is what Andrei and I call "enabling" technology, as it opens the door for many more uses of D, in this case better interoperability with existing C++ codebases. > > Thanks to everyone who helped out with this, especially Elie, Iain, David and Andrei! > > Also looking forward to getting this in GDC and LDC! > > Andrei and I feel that better interoperability with C++ is a major strategic feature and advantage for D. As the recent thread with Manu's frustrations in doing it show, we still have a significant way to go. But I hope to push it forward hard in the next few months. > > For the fearless who love working under the hood, extending the support to the rest of the platforms is a great way to materially contribute. Nice work! Although I've never used C++ exceptions (or D exceptions) personally. Is there a roadmap for this stuff I can check out? Short list of upcoming C++ work? |
January 18, 2016 Re: D is now catching C++ exceptions! | ||||
---|---|---|---|---|
| ||||
Posted in reply to Manu | On 1/18/2016 8:03 PM, Manu via Digitalmars-d-announce wrote:
> Nice work! Although I've never used C++ exceptions (or D exceptions) personally.
> Is there a roadmap for this stuff I can check out? Short list of
> upcoming C++ work?
Since you're at the bleeding edge of interfacing to C++, I'd say your problems are on the short list :-)
Since we're nowhere on Win64 C++ exceptions at the moment, I guess it's good you're not blocked by them.
|
January 21, 2016 Re: D is now catching C++ exceptions! | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | On Tuesday, 19 January 2016 at 04:58:49 UTC, Walter Bright wrote: > On 1/18/2016 8:03 PM, Manu via Digitalmars-d-announce wrote: >> Nice work! Although I've never used C++ exceptions (or D exceptions) personally. >> Is there a roadmap for this stuff I can check out? Short list of >> upcoming C++ work? > > Since you're at the bleeding edge of interfacing to C++, I'd say your problems are on the short list :-) > > Since we're nowhere on Win64 C++ exceptions at the moment, I guess it's good you're not blocked by them. What is the state of C++ interfacing? is the http://dlang.org/spec/cpp_interface.html up to date? |
January 21, 2016 Re: D is now catching C++ exceptions! | ||||
---|---|---|---|---|
| ||||
Posted in reply to Taylor Hillegeist | On 1/21/2016 10:34 AM, Taylor Hillegeist wrote:
> is the
> http://dlang.org/spec/cpp_interface.html
> up to date?
No.
|
January 21, 2016 Re: D is now catching C++ exceptions! | ||||
---|---|---|---|---|
| ||||
Posted in reply to Taylor Hillegeist | On Thursday, 21 January 2016 at 18:34:27 UTC, Taylor Hillegeist wrote: > What is the state of C++ interfacing? is the > http://dlang.org/spec/cpp_interface.html > up to date? You can read more up-to-date documentation here: https://github.com/D-Programming-Language/dlang.org/pull/1154 |
January 21, 2016 Re: D is now catching C++ exceptions! | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | On Monday, 18 January 2016 at 22:26:56 UTC, Walter Bright wrote:
> at least for 64 bit Linux. Other platforms to follow.
>
> https://github.com/D-Programming-Language/dmd/pull/5342
>
> This is what Andrei and I call "enabling" technology, as it opens the door for many more uses of D, in this case better interoperability with existing C++ codebases.
>
> Thanks to everyone who helped out with this, especially Elie, Iain, David and Andrei!
>
> Also looking forward to getting this in GDC and LDC!
>
> Andrei and I feel that better interoperability with C++ is a major strategic feature and advantage for D. As the recent thread with Manu's frustrations in doing it show, we still have a significant way to go. But I hope to push it forward hard in the next few months.
>
> For the fearless who love working under the hood, extending the support to the rest of the platforms is a great way to materially contribute.
This is a good start and we should continue this work.
We need review our documentation about interfacing to C++ and clearly delineate the limits of our features.
For example we should say how do we may write D binding of C++ class.
How do we may inherit D-defined C++ class from external C++ class/interface?
When can we pass object of inherited class back to C++ code?
How do we may cast one extern(C++) class to another extern(C++) class in D?
In C++?
Which C++ features we support for different ABIs?
Also, I think, we need to implement linking to some C++ features (I'll help with this when I finish my alias this duty):
Linking to C++ overloaded operators (without moving their semantic to D).
C++ ctors/dtors.
Dynamic casting of C++ objects in D.
Maybe partial C++ RTTI support.
|
January 23, 2016 Re: D is now catching C++ exceptions! | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright Attachments:
| On 18 January 2016 at 23:26, Walter Bright via Digitalmars-d-announce < digitalmars-d-announce@puremagic.com> wrote: > at least for 64 bit Linux. Other platforms to follow. > > https://github.com/D-Programming-Language/dmd/pull/5342 > > This is what Andrei and I call "enabling" technology, as it opens the door for many more uses of D, in this case better interoperability with existing C++ codebases. > > Thanks to everyone who helped out with this, especially Elie, Iain, David and Andrei! > > Also looking forward to getting this in GDC and LDC! > > Andrei and I feel that better interoperability with C++ is a major strategic feature and advantage for D. As the recent thread with Manu's frustrations in doing it show, we still have a significant way to go. But I hope to push it forward hard in the next few months. > > For the fearless who love working under the hood, extending the support to the rest of the platforms is a great way to materially contribute. > Next step, catching any foreign exception thrown in Go, Ada, Java, [insert your language here]. |
Copyright © 1999-2021 by the D Language Foundation