On Sunday, 23 February 2014 at 21:06:03 UTC, Frustrated wrote:
Why does your WindowsGui violate the iGui contract?

It doesn't. It simply that one can't specify dependencies in D

if (iGui is WindowsGui) then iButton is WindowsButton;

It's not very hard logic but people are not even trying.

I understand what you intend your code to do, but that is still breaking the contract which you setup. iGui takes an iButton because you defined it that way, to only handle specific types of iButton is a breach of contract. The language lets you break contracts, but it should not help you do so.

Reply via email to