Derelict is not a direct binding it contains lots of tools to automatically load symbols from DLLs and call library initialization and finalization routines. That takes a while to make. Direct translations do not change anything and do not add anything. When done correctly (checked by compiling it) the code cannot be broken, since the underlying API is already tested by the respective developers.<div>
<br></div><div>I'll look into the opportunity to refactor the <a href="http://dsource.org">dsource.org</a> WinAPI binding, because it's much closer to reality then Derelict. In that case It'll take a few hours to finish (quite fast). Would you suggest me to send a pull request to druntime with the new modules? How long will it take to be merged?</div>
<div><br></div><div>If the only problem with Deimos is the speed at which libraries end up there, why not make the review process more loose and allow the code to be submitted and then fixed as necessary? It would be much more useful, then just having nothing at all.</div>
<div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Nov 23, 2012 at 4:56 PM, Andrej Mitrovic <span dir="ltr"><<a href="mailto:andrej.mitrovich@gmail.com" target="_blank">andrej.mitrovich@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">On 11/23/12, Gor Gyolchanyan <<a href="mailto:gor.f.gyolchanyan@gmail.com">gor.f.gyolchanyan@gmail.com</a>> wrote:<br>

</div><div class="im">> It'll take more time trying to extract stuff from Derelict, rather then<br>
> regexp search/replace -ing the headers.<br>
<br>
</div>You really believe that your regex script is going to do a better job<br>
than what Mike has been using and maintaining for years? The same<br>
applies to WinAPI, these bindings have been developed and used in<br>
years. Introducing new bindings to the same APIs which aren't<br>
compatible with existing bindings is just going to create<br>
compatibility issues when you use multiple libraries, and it's going<br>
to create confusion for new users.<br>
<br>
Instead of trying to reinvent, why not just contribute to the existing<br>
bindings if they're missing functionality or some of their code is<br>
outdated?<br>
<br>
I'll also say that IMO the concept of Deimos turns out to be a bad<br>
idea, and I'm not alone in thinking this. Only few people have write<br>
access, which means all pull requests have to go through a handful of<br>
people who may not even know what the code in the bindings does, and<br>
if the devs aren't around you'll have to wait days or even months (see<br>
dmd/druntime/phobos) for a pull to be merged. Now some projects use<br>
module names without a root (module curses), others encode the deimos<br>
name (module deimos.zmq.utils), and then others use their own encoding<br>
(module libexif.exif_byte_order).<br>
<br>
And then you have Walter which merges all pull requests without any<br>
review whatsoever. Deimos should have been a wiki page that lists<br>
active bindings. And each binding project would have a maintainer or a<br>
team of maintainers (who would review pull requests properly). And<br>
that's it.<br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br>Bye,<br>Gor Gyolchanyan.<br>
</div>