On 12/14/18 2:33 PM, Sjoerd Nijboer wrote:
Is there any overhead on the generated interface? Or overhead the compiler can't trivially optimise away.


Yes, any overheads that would normally be associated with a P/Invoke call will be present here.

Do you have any recocmendations about mixing coe like, don't use strings for now or try to minimize switching from D to C# and vice-versa.


Strings are fine. But definitely try to minimize switching as there is some pretty significant overheads on the D side with module constructors. And "switching" can happen in some pretty well hidden places, for example, appending to a range is switch.

Do you have plans to incorportae this as a VisualD project .csproj project since it's already intended to be microsoft oriented? (It would seem like a good fit to me.) That way you could even take away the mixin code and the "running the main method" code.


I do not since I wouldn't know where to start, but it's possible.

Does it work with LDC or only with DMD? How about GCC on linux?

It works with anything that can output a shared library and C interfaces. :)

--
Adam Wilson
IRC: EllipticBit
import quiet.dlang.dev;

Reply via email to