D/BUS IDL compiler ...

Michael Meeks michael@ximian.com
Wed, 10 Mar 2004 10:57:20 +0000


On Tue, 2004-03-09 at 17:51 -0500, Havoc Pennington wrote:
> I guess this is obvious, just the way recursive types are done.

	We need a recursive type system anyway IMNSHO. It should really
simplify the code, (and hopefully chop out the extra 'N' special cases
for arrays).

	Wrt. sequence<struct> foo - it's important as you say that you transmit
the type information only once; rather than per element of (eg. an
array). It seems to me though - that there are 2 opposing requirements:

	a) compiled languages - using IDL:
		these guys want efficient marshalling, and don't care
	   about structure element names on the wire since.

	b) scripting languages
		these guys have to have the structure element names to
	   build their map stuff.

	I guess, the only sensible way to do this is to:

		a) marshal with a non-verbose plain type description of
		   the arguments as presently done interspersed with the
		   data.

		b) provide the verbose information via introspection.

	Thus making both sides of the world happy ( I think ).

	Anyhow - I'm intrigued by this 'yet another standard' for XML
introspection of stuff inspired by D/COP (I assume)[1]. Is the XML
specified somewhere ? and/or where can I read up on this ?

	Sadly - my D/BUS hacking is stalled to some extent, I need to write a
well thought out reply/rework based on Havoc's comments on the IDL
compiler I think.

	HTH,

		Michael.

[1] - It seems curious not to use your own type/marshalling system to
represent it's own types - but some curious extra XML format - creating
more work, requiring a potentially error-prone/buggy XML parser etc. -
this is not an approach I would recommend designing into something new.
-- 
 michael@ximian.com  <><, Pseudo Engineer, itinerant idiot