Comment by WhereIsTheTruth

4 hours ago

This is the smart choice

You keep compatibility with C, can tap into its ecosystem, but you are no longer stuck with outdated tooling

D gives you faster iteration, clearer diagnostics, and a generally smoother experience, even if it doesn't go as far as Rust in terms of safety

I wish more languages would follow this strategy, ImportC is great, let's you port things one step at a time, if required/needed

Let's be honest: who wants to write or generate C bindings? And who wants to risk porting robust/tested/maintained C code incorrectly?