I'm not sure the language needs inheritance just for interop .. With
both windows 8 Store Apps and COM+ you can use C to call interface
based components .  In general it should not be hard to write a
generic thunking layer for  the language to map a class  to a trait
and provide a reference to an instance  (or even a C struct  with
functions )  . Note often  GC marshaling constraints often require a
custom interop anyway.

So what are you going to interop with ?
Java ,  C# or the dynamic languages  are a pain due to the GC
basically forcing a copy or COM / CORBA approach
C  ,Asm  no issue
C++ , can use a C wrapper  , while you can map a C++ class to a class
in many languages you cant if there are templates . If your using a GC
 you need to copy or use as an immutable object

The biggest issue with interop is templates/generics  ,which are
common  in C++ these days , so your almost forced to write a  wrapper
anyway  ( or use a special run time to compile both )  .

Ben

On Sun, Jan 6, 2013 at 7:25 AM, Jonathan S. Shapiro <[email protected]> wrote:
> I've raised this before, and it was controversial for a lot of good reasons.
> At a pragmatic level, I think BitC needs a single inheritance mechanism in
> order to inter-operate with other languages. Inheritance is not ideal for a
> lot of reasons, but inter-operation is imperative in a successful language.
> That's a necessary and sufficient reason to incorporate it.
_______________________________________________
bitc-dev mailing list
[email protected]
http://www.coyotos.org/mailman/listinfo/bitc-dev

Reply via email to