On Friday, 23 January 2015 at 00:24:45 UTC, Andrei Alexandrescu
wrote:
I think it's important that we enable Calypso
(https://github.com/Syniurge/Calypso) and related tooling that
interfaces D with other languages, notably C++.
A key topic in 2015 for D is playing well with C++. A good C++
interface will give access to a host of mature C++ libraries,
starting of course with the C++ standard library. More
importantly, it will provide a smooth migration path for
organizations that want to do development in D whilst taking
advantage of their legacy code.
I'd like to open the topic of "what can we do in core D to make
Calypso better".
But first, I want to get better acquainted with Calypso and
raise awareness of it with coworkers and the larger community.
To my dismay, the github homepage provides exactly zero "look
and feel" use examples beyond the mechanics of building Calypso
itself.
To Calypso's creator: is it possible to beef up the
documentation of Calypso with a few use cases? Ideally there'd
be a soup-to-nuts step by step guide of making a C++ library
(either artificial or extant) interfacing with D. Also: what
things on the D side would be necessary to make the interface
better? Exceptions would be an obvious topic on which we have
an attack already (more on it later).
Andrei thanks for finally sharing your thoughts on the matter :-)
I'll see what I can do this week-end to expand examples and write
a tutorial.
As for what could be done in core D, I haven't struck anything
blocking while writing Calypso. Exception catching is next after
the first light of my Ogre3D demo, Clang will probably simplify
handling of C++ exceptions a lot.