In case it's not clear COM already included the dynamic binary
computability too. You register the methods you provide with COM when you
object us loaded, and you get passed the packed arguments to decode the
method message and unpack the arguments.

As far as I am aware the CLR did not change the mechanism by which this
happens, so the same ability to avoid the fragile base class problem is
provided to C++ programmer by COM as the CLR provides to C#.

All C# does us hide the COM registration and method dispatch boilerplate
from the programmer. (Of course it also provides other stuff like LINQ, but
that wasn't the bit we were discussing).

Keean.
 On 14 Jul 2015 7:24 am, "Keean Schupke" <[email protected]> wrote:

> That's confusing two different features, I did not say C++ was the same
> language as C#, I said the CLR repackaged functionality already available
> to C++ programmers for dynamic runtime loading in a way that hides the
> boilerplate of COM classes from the programmer, by building it into the
> classes.
>
> I did not say C# has no other features. Personally I like LINQ.
>
> Keean.
> On 14 Jul 2015 7:19 am, "David Jeske" <[email protected]> wrote:
>
>>
>> On Jul 13, 2015 7:29 PM, "Keean Schupke" <[email protected]> wrote:
>> > So what about all the COM components I have written in C++?
>>
>> They say nothing about the binary upgradability of the C++ class model.
>>
>> I didn't include COM in the discussion because it makes no provisions for
>> either instance fields or parametrics - both of which are central to to
>> value of Swift.
>>
>> _______________________________________________
>> bitc-dev mailing list
>> [email protected]
>> http://www.coyotos.org/mailman/listinfo/bitc-dev
>>
>>
_______________________________________________
bitc-dev mailing list
[email protected]
http://www.coyotos.org/mailman/listinfo/bitc-dev

Reply via email to