On 2012-08-16 14:58:22 +0000, "R Grocott" <rgrocottbugzi...@gmail.com> said:

http://michelf.ca/blog/2009/some-ideas-for-dynamic-vtables-in-d/

The above blog post, written in 2009, proposes a system for solving the Fragile ABI Problem in D. Just wondering whether anything like this is a planned feature for druntime.

I wrote this post. I'd still like to have a non-fragile ABI. But there's probably a tradeoff to make: if you want absolute performance, a non-fragile ABI will get in your way. If you're writing a GUI toolkit, performance probably isn't going to be your biggest concern, but if you're writing a game it might.

So I think this problem would be worth solving in a way that allows the designer of a class to choose.


It would be nice if D could sidestep this issue. It's frustrating that C is currently the only real option for developing native libraries without worrying about their ABI.

It's frustrating indeed.

The D/Objective-C proof of concept I developed is interesting in this regard: extern(Objective-C) classes have a non-fragile ABI (for methods, and for fields too if I add support for Apple's modern runtime). So basically you have fragile and non-fragile objects living together, using two distinct class hierarchies. The extern(Objective-C) hierarchy being the non-fragile one, but slightly slower too.


--
Michel Fortin
michel.for...@michelf.ca
http://michelf.ca/

Reply via email to