GSoC Mentor Summit Observations and D Marketing

Jerry jlquinn at optonline.net
Tue Nov 1 11:16:29 PDT 2011


Fawzi Mohamed <fawzi at gmx.ch> writes:

> I was also surprised about how many already heard something about D, I got even some questions about D1/D2 tango/phobos.
> My answers were something along these lines:
> - D2 toolchain becoming now robust enough to be chosen for new projects (with gdc finally also 64 bits)

Umm, not yet.  GDB support is woefully lacking.  The 3 custom debugging
types output by dmd aren't supported at all.  These are darray, aarray,
and delegate.  Without it, debugging D code is awful.

I think darrays would be straightforward to support in GDB.  Delegates
can probably be supported as well, taking advantage of C++ member
function pointer support.  However, aarray doesn't have an ABI other
than void*.  There's no defined portable way to access the contents.

Currently druntime has some C functions to access the AA, but those are
implementation-specific.  To be more ready for prime time, an actual ABI
needs to be defined for AA's, especially if you wish to permit multiple
compilers to write compatible object files.  That's not a huge issue
yet, since all the current D compilers use the same front end, but will
become increasingly so as D becomes more popular.

The AA ABI issue could be solved by defining all AA operations to map to
a template class defined by druntime.  That's what already happens, but
defining it would plug this hole.

Jerry


More information about the Digitalmars-d mailing list