Re: GInterfaces and API Stability
- Date: Wed, 14 Nov 2007 08:54:53 +0200
- From: "Kalle Vahlman" <kalle.vahlman@xxxxxxxxx>
- Subject: Re: GInterfaces and API Stability
2007/11/14, Alp Toker <alp@xxxxxxxxxx>:
> Matthias Clasen wrote:
> > Well, I have certainly considered C ABI compatibility to be the main deciding
> > factor when making such decisions. I'd say if C# interfaces are inflexible like
> > that then mapping GObject interfaces directly to C# interfaces was probably
> > wrong.
>
> This is totally missing the point. GObject interfaces exist to formalise
> a pattern of design by contract. Even if the C compiler doesn't catch
> and report incomplete interface implementations, that doesn't make it
> correct to ship code that breaks the rules.
>
> Your argument is analogous to claiming that it's OK to change property
> and signal names and parameters in an ABI-stable release because the C
> compiler won't notice that anything has broken.
No, it would be analogous to *adding* new properties and signals
(while maintaining ABI compatibility).
Matthias is right IMO, if you need to limit the additions of
GInterface methods for C#, it should be done by the binding. Of
course, if this is a more general problem, *then* it might be
approperiate to refrain from adding interface methods in stable
series. But it doesn't seem to be so.
--
Kalle Vahlman, zuh@xxxxxx
Powered by http://movial.fi
Interesting stuff at http://syslog.movial.fi
_______________________________________________
gtk-devel-list mailing list
gtk-devel-list@xxxxxxxxx
http://mail.gnome.org/mailman/listinfo/gtk-devel-list