On Thursday, 28 January 2016 at 15:20:12 UTC, Dicebot wrote:
On Thursday, 28 January 2016 at 13:53:30 UTC, Craig Dillabaugh
wrote:
Would there be any interest in a project to automate binding
generation from C files (or perhaps even a full conversion
tool)?
This could be done either as a new project, or possibly
building on dstep - if there is meaningful work that can still
be done to improve that project. Alternately, the student
suggested using pycparser
(https://github.com/eliben/pycparse) as the basis for such a
tool?
I think it is very important to focus on polishing dstep
instead of creating more and more imperfect tools. In the end
any approach which doesn't use existing mature C compiler
frontend is doomed to make binding mistakes.
Random suggestions for improving dstep:
- implement support for C++ clang API using new shiny dmd
features (it tends to have more features than C one)
- implement automatic generation of idiomatic D code for raw
bindings (i.e. stripping redundant namespace prefixes)
- remove/minimize dependencies apart from Phobos/libclang (will
make much easier including it into standard tools)
Seems like there should be enough there for a project. Also
looking at:
https://github.com/jacob-carlborg/dstep
in the list of limitations is, 'Doesn't translate preprocessor
macros of any kind", that seems like a good challenge.
So if Jacob can't mentor this, is there anyone who would be
comfortable with that type of project?