On Wednesday, 20 June 2018 at 18:47:10 UTC, Jordi GutiƩrrez
Hermoso wrote:
I'm specifically thinking of the GNU Octave codebase:
http://hg.savannah.gnu.org/hgweb/octave/file/@
It's a fairly old and complicated C++ codebase. I would like to
see if I could slowly introduce some D in it, anywhere.
Now, as I understand it, I would need to begin with making
`main` a D function, because D needs to initialise the runtime.
Is this correct?
Another possibility might be in dlopen'able functions.
Currently Octave uses so-called oct functions, which are
nothing more than C++ object code that is dynamically loaded by
the interpreter at runtime. They are compiled to the Octave C++
API, but we also have a Matlab-compatible C API that perhaps
could be more amenable for D-ification.
What are your ideas?
If you would like to expose C function and type declarations to
D, you could take a look at DPP, which allows you to just
#include a C header. If you encounter a bug, please file an
issue and in time we will fix it.
Does not yet work for C++ except in some cases.
https://github.com/atilaneves/dpp