As the title says, cpp_binder is a tool that generates C++ bindings.  It
reads C++ headers and produces a D file filled with "extern(C++)"
declarations.  It can translate a bunch of cool, small examples, but is
not close to being ready for prime-time.  It crashes a lot, especially
in the STL; since the STL is pretty pervasive, I have not successfully
used cpp_binder on an actual C++ library.

I've written more about cpp_binder and my experiences at

The code is available at .
cpp_binder still dumps lots of debugging info to stdout and stderr, so
you'll probably want to redirect those somewhere beesides your console.

I hope that this post will spur discussion / decisions / action binding
C++ libraries into D.  I think the language capabilities (e.g.
extern(C++, namespace)) get really far and that the next big push needs
to be on binding real libraries and tools to help.

Paul O'Neil
Github / IRC: todayman

Reply via email to