A D wrapper around a C function
Nitpick: map!(s =&gt; s.toStringz)(argv) would be more idiomatic as argv.map!toStringz. Apart from that, your code looks very much correct. It should work as expected, and is indeed the way to do this.