Adriano, you are arguing that you are right and the rest of the world is wrong. 

COM is designed so any language can use it, but C++ can use either as explicit 
vectors of method pointer OR as a pure virtual interface.  Either works, but 
using it as a C++ mechanism is very simple and powerful.

You may have noticed few defenders of your interface.  Most have argued that it 
is ugly, hard to use, and very unlikely to meet its goals for mapping into 
native objects in multiple languages.  These are legimate criticisms that you 
have not answered.




> On Aug 11, 2014, at 8:02 AM, Adriano dos Santos Fernandes 
> <adrian...@gmail.com> wrote:
> 
>> On 11/08/2014 07:54, Dimitry Sibiryakov wrote:
>> 11.08.2014 12:47, Adriano dos Santos Fernandes wrote:
>>> The hack approach dependent on compilers details is the one we use
>>> currently.
>>   Currently used pure abstract classes are exactly like in COM. And "The 
>> Component Object 
>> Model specifies a *programming-language-independent _binary standard_ for 
>> object 
>> implementations* (i.e., it specifies what the implementation of the objects 
>> has to look 
>> like). Any object conforming to this standard is a legitimate Windows 
>> Object, no matter 
>> what language is used to implement it." http://www.objs.com/x3h7/ole2.htm
>>   To make current interface completely compatible with MS COM (Delphi/FPC 
>> IInterface) it 
>> is enough to add a single method - QueryInterface. All this was already 
>> discussed years ago.
> And who says C++ compilers vendors needs to:
> 1) implement vtable-compatible layout in Windows
> 2) implement vtable-compatible layout in non-Windows
> 
> ?
> 
> Sure Microsoft thinks they dominate the Worlds, but...
> 
> The current approach of guessing the C++ vtable is compatible between
> compilers (be it or not about COM classes) is a hack at least for
> non-Windows platforms who may use different and non-standard ABIs.
> 
> 
> Adriano
> 
> 
> ------------------------------------------------------------------------------
> Firebird-Devel mailing list, web interface at 
> https://lists.sourceforge.net/lists/listinfo/firebird-devel

------------------------------------------------------------------------------
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to