www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 2041] New: Spec implies relationship between interfaces and COM objects

reply d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=2041

           Summary: Spec implies relationship between interfaces and COM
                    objects
           Product: D
           Version: 2.012
          Platform: PC
               URL: http://digitalmars.com/d/2.0/interface.html
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: www.digitalmars.com
        AssignedTo: bugzilla digitalmars.com
        ReportedBy: jlquinn optonline.net


The following bit of text about interfaces:

  Interfaces correspond to the interface exposed by operating system objects,
like COM/OLE/ActiveX for Win32.

implies that there is some kind of connection between an interface and Win32
COM objects.  Is this the intention?  If so, what does that mean on Linux and
other Unixen platforms?  What exactly does it mean on Win32 in this case?  Is
there an active tie into those objects?

  If not, this should be more clearly reworded to indicate it is just an
analogy.  A better analogy would probably be to Java interfaces, as D
interfaces appear to be very similar if I'm not mistaken.


-- 
Apr 26 2008
next sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=2041


smjg iname.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |smjg iname.com





It isn't just an analogy.  By intention, it's talking about compatibility in
the ABI between D interfaces and COM, which is a quite different concept from
that of having the same overall meaning as in some other programming language.

Hence you can use D interfaces to interact with Windows COM objects, and even
to create COM objects of your own.  See the "Com Interfaces" section further
down that page.

The statement I'm not sure about is "It derives from the interface
std.c.windows.com.IUnknown."  It seems that win32.unknwn.IUnknown should work
just as well.

I myself am not familiar with COM enough to know how to try it out, but hope
this helps.


-- 
Nov 23 2008
prev sibling next sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=2041






I think the only misleading part about it is that it says "interfaces
correspond to the interface exposed by operating system objects."  That, to me,
implies that they are primarily meant for use with operating system
interaction.  That's pretty far from the truth.  It should say something like
"D also has support for interfaces which correspond to COM/OLE/ActiveX objects
on Windows."


-- 
Nov 23 2008
prev sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=2041


bugzilla digitalmars.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED





Fixed dmd 1.038 amd 2.022


-- 
Dec 25 2008