Issue 479: DII and DSI are useless with current Any (cxx_revision) Source: (, ) Nature: Uncategorized Severity: Summary: Summary: Cannot use DII to invoke an operation that expects or returns a complex user-defined type. Any needs to provide member functions for composing Any"s containing arbitrary user-defined values Resolution: Fixed by Portability submission Revised Text: Actions taken: January 22, 1997: received issue January 2, 1998: closed issue Discussion: End of Annotations:===== From michi@foxtail.dstc.edu.au Wed Jan 22 14:33:36 1997 Received: from piglet.dstc.edu.au by amethyst.omg.org (5.4R2.01/1.34) id AA04160; Wed, 22 Jan 1997 14:33:36 -0500 Received: from foxtail.dstc.edu.au (michi@foxtail.dstc.edu.au [130.102.176.14]) by piglet.dstc.edu.au (8.8.5/8.8.5) with ESMTP id FAA02266 for ; Thu, 23 Jan 1997 05:30:19 +1000 (EST) Received: from localhost (michi@localhost) by foxtail.dstc.edu.au (8.8.5/8.8.4) with SMTP id FAA16790 for ; Thu, 23 Jan 1997 05:30:18 +1000 (EST) X-Authentication-Warning: foxtail.dstc.edu.au: michi owned process doing -bs Date: Thu, 23 Jan 1997 05:30:18 +1000 (EST) From: Michi Henning To: cxx_revision@omg.org Subject: DII and DSI are useless with current Any Message-Id: Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII The DII and DSI are quite useless with the functionality available for type Any. In particular, I cannot use the DII to invoke an operation that expects or returns a complex user-defined type. Even though I can use the IR to find out what the type structure of each parameter is, I cannot portably create an Any containing a complex value - the void * accessor requires me to have knowledge of the C++ representation of sequences, unions, arrays, etc. I think type Any needs to provide member functions for composing and decomposing Any's containing arbitrary user-defined values. Michi. -- Michi Henning +61 7 33654310 DSTC Pty Ltd +61 7 33654311 (fax) University of Qld 4072 michi@dstc.edu.au AUSTRALIA http://www.dstc.edu.au/BDU/staff/michi-henning.html From juergen@omg.org Wed Jan 22 16:14:33 1997 Received: from rune.omg.org by amethyst.omg.org (5.4R2.01/1.34) id AA05749; Wed, 22 Jan 1997 16:14:33 -0500 Message-Id: <2.2.32.19970122214119.009f3e08@amethyst.omg.org> X-Sender: juergen@amethyst.omg.org X-Mailer: Windows Eudora Pro Version 2.2 (32) Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Date: Wed, 22 Jan 1997 16:41:19 -0500 To: issues, cxx_revision From: Juergen Boldt Subject: issues479/480 ^his is issue # 479 DII and DSI are useless with current Any Cannot use DII to invoke an operation that expects or returns a complex user-defined type. Any needs to provide member functions for composing Any's containing arbitrary user-defined values +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ From janssen@parc.xerox.com Wed Jan 22 16:47:11 1997 Received: from alpha.Xerox.COM by amethyst.omg.org (5.4R2.01/1.34) id AA06222; Wed, 22 Jan 1997 16:47:11 -0500 Received: from holmes.parc.xerox.com ([13.1.100.162]) by alpha.xerox.com with SMTP id <15163(2)>; Wed, 22 Jan 1997 13:43:54 PST Received: by holmes.parc.xerox.com id <16186>; Wed, 22 Jan 1997 13:43:36 PST Received: from Messages.7.15.N.CUILIB.3.45.SNAP.NOT.LINKED.holmes.parc.xerox.com.sun4.41 via MS.5.6.holmes.parc.xerox.com.sun4_41; Wed, 22 Jan 1997 13:43:36 -0800 (PST) Message-Id: <0mtcc8YB0KGWQjttRZ@holmes.parc.xerox.com> Date: Wed, 22 Jan 1997 13:43:36 PST Sender: Bill Janssen From: Bill Janssen To: cxx_revision@omg.org, Michi Henning Subject: Re: DII and DSI are useless with current Any In-Reply-To: References: Excerpts from local.omg: 22-Jan-97 DII and DSI are useless wit.. Michi Henning@dstc.edu.a (820*) > The DII and DSI are quite useless with the functionality available for type > Any. In particular, I cannot use the DII to invoke an operation that > expects or returns a complex user-defined type. That certainly doesn't make them useless. `Any' was never intended for anything but the basic types, originally. I think the real problem is that the DII & DSI mechanisms are badly defined, and over-specified in a particularly clumsy way. The so-called `portable stub API' in the Visigenics Java mapping submission is an example of how the DII should be done (for that kind of language). The DII and DSI portions should be re-defined in terms of functionality (*not* IDL or PIDL), and then each language mapping should specify how that functionality is achieved in terms of that language's mechanisms. Bill From michi@foxtail.dstc.edu.au Wed Jan 22 17:07:43 1997 Received: from piglet.dstc.edu.au by amethyst.omg.org (5.4R2.01/1.34) id AA06483; Wed, 22 Jan 1997 17:07:43 -0500 Received: from foxtail.dstc.edu.au (michi@foxtail.dstc.edu.au [130.102.176.14]) by piglet.dstc.edu.au (8.8.5/8.8.5) with ESMTP id IAA04724; Thu, 23 Jan 1997 08:04:26 +1000 (EST) Received: from localhost (michi@localhost) by foxtail.dstc.edu.au (8.8.5/8.8.4) with SMTP id IAA21949; Thu, 23 Jan 1997 08:04:26 +1000 (EST) X-Authentication-Warning: foxtail.dstc.edu.au: michi owned process doing -bs Date: Thu, 23 Jan 1997 08:04:26 +1000 (EST) From: Michi Henning To: Bill Janssen Cc: cxx_revision@omg.org Subject: Re: DII and DSI are useless with current Any In-Reply-To: <0mtcc8YB0KGWQjttRZ@holmes.parc.xerox.com> Message-Id: Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII On Wed, 22 Jan 1997, Bill Janssen wrote: > Excerpts from local.omg: 22-Jan-97 DII and DSI are useless wit.. Michi > Henning@dstc.edu.a (820*) > > > The DII and DSI are quite useless with the functionality available for > type > > Any. In particular, I cannot use the DII to invoke an operation that > > expects or returns a complex user-defined type. > > That certainly doesn't make them useless. `Any' was never intended for > anything but the basic types, originally. OK - not completely useless, but useless for user-defined types (at least in the C++ mapping) in combination with the DII/DSI. Michi. -- Michi Henning +61 7 33654310 DSTC Pty Ltd +61 7 33654311 (fax) University of Qld 4072 michi@dstc.edu.au AUSTRALIA http://www.dstc.edu.au/BDU/staff/michi-henning.html From vinoski@iona.com Thu Jan 23 04:59:08 1997 Received: from operation.dublin.iona.ie by amethyst.omg.org (5.4R2.01/1.34) id AA12346; Thu, 23 Jan 1997 04:59:08 -0500 Received: from boston.iona.ie ([207.60.244.2]) by dublin.iona.ie (8.7.5/jm-1.01) with ESMTP id KAA28863; Thu, 23 Jan 1997 10:02:11 GMT Received: from ingrid.dublin.iona.ie (ingrid.dublin.iona.ie [193.120.221.165]) by boston.iona.ie (8.7.5/8.6-jm) with SMTP id EAA02085; Thu, 23 Jan 1997 04:55:39 -0500 (EST) Message-Id: <3.0.32.19970123095534.006d56c0@mail.boston.iona.ie> X-Sender: vinoski@mail.boston.iona.ie X-Mailer: Windows Eudora Pro Version 3.0 (32) Date: Thu, 23 Jan 1997 09:55:35 +0000 To: Michi Henning From: Steve Vinoski Subject: Re: DII and DSI are useless with current Any Cc: cxx_revision@omg.org Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" At 05:30 AM 1/23/97 +1000, Michi Henning wrote: >I think type Any needs to provide member functions for composing and >decomposing Any's containing arbitrary user-defined values. This functionality will very likely be defined in the joint Portability Enhancement submission. --steve From curtis@omg.org Sat Jan 25 09:34:48 1997 Received: from ppp4.expersoft.com by amethyst.omg.org (5.4R2.01/1.34) id AA14664; Sat, 25 Jan 1997 09:34:48 -0500 Message-Id: <3.0.32.19970124230541.0069f600@192.67.184.65> X-Sender: curtis@192.67.184.65 X-Mailer: Windows Eudora Pro Version 3.0 (32) Date: Sat, 25 Jan 1997 09:30:43 -0800 To: Bill Janssen , cxx_revision@omg.org, Michi Henning From: David Curtis Subject: Re: DII and DSI are useless with current Any Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" At 01:43 PM 1/22/97 PST, Bill Janssen wrote: >Excerpts from local.omg: 22-Jan-97 DII and DSI are useless wit.. Michi >Henning@dstc.edu.a (820*) > >> The DII and DSI are quite useless with the functionality available for type >> Any. In particular, I cannot use the DII to invoke an operation that >> expects or returns a complex user-defined type. > >That certainly doesn't make them useless. `Any' was never intended for >anything but the basic types, originally. I have to (respectfully) disagree. 'Any' was intended to be able to express *any* IDL type (hence the name, no?). If it was only for basic types, you could never make a DII invocation of an operation with a struct parameter. Without a portable way of building and interpreting complex Anys in static languages, they are of questionable utility. For a demonstration of this principle, try building a portable CORBA bridge in a static language. It can't be done. David From jon@sems.com Mon Jan 27 17:50:13 1997 Received: from ns.sems.com by amethyst.omg.org (5.4R2.01/1.34) id AA07281; Mon, 27 Jan 1997 17:50:13 -0500 Received: from vaccine-bb.netlabs.com by proxy.netlabs.com (4.1/SMI-4.1) id AA18732; Mon, 27 Jan 97 13:38:20 PST Received: from clamp.netlabs.com by vaccine-bb.netlabs.com (4.1/SMI-4.1) id AA25472; Mon, 27 Jan 97 14:46:27 PST Received: from clamp by clamp.netlabs.com (SMI-8.6/SMI-SVR4) id OAA17569; Mon, 27 Jan 1997 14:46:31 -0800 Sender: jon@sems.com Message-Id: <32ED3046.D50@sems.com> Date: Mon, 27 Jan 1997 14:46:30 -0800 From: Jonathan Biggar Organization: Seagate Enterprise Management Software X-Mailer: Mozilla 3.0 (X11; I; SunOS 5.5.1 sun4m) Mime-Version: 1.0 To: Michi Henning Cc: Bill Janssen , cxx_revision@omg.org Subject: Re: DII and DSI are useless with current Any References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Michi Henning wrote: > OK - not completely useless, but useless for user-defined types (at least > in the C++ mapping) in combination with the DII/DSI. Actually, to completely clarify, Any is currently problematical for any datatype for which you don't have IDL compiler-generated static definitions. The C++ binding defines Any inserters and extractors for each IDL-compiled structured data type, but if it is a type not compiled into your client or server, you are out of luck. Jon