[omniORB] Flick CORBA IDL compiler

Sai-Lai Lo S.Lo@orl.co.uk
09 Oct 1998 20:05:57 +0100


>>>>> Brent Fulgham writes:

> Has anyone tried to optimize omniidl2's code generation to make it a bit
> more efficient when generating the stubs/skeleton implementation of the
> IDL?  I'm working on a project consisting of approximately 50 or 60
> separate IDL "methods".  We are seeing ~50K of IDL code expanding
> to over 1 Meg of *SK.cc code.

> For every interface that gets "compiled" by omniidl2, we get a new
> proxy class, helper class, skeleton class, superclass, proxy factory
> class, lifecycle skeleton class, lifecycle wrapper, lifecycle proxy,
> any-packing operator, marshall, unmarshall, and dispatch code.   A lot of
> implementation code which differs only by a small type parameter in
> isn't being factored or virtualized, it just gets duplicated for each
> interface.

> I don't know what the efficiency of Flick is in terms of producing "small"
> code, but it might have a few ideas about how to reduce the expansion we are
> seeing in omniidl2.

> Any comments greatly appreciated.

This is a good point. There is definitely scope of factoring out common
code into shared units. Not difficult to do, just a bit tedious. I think
when we work on the stubs to support POA we'll clean-up and compact the
stubs as well. 

Sai-Lai


-- 
Dr. Sai-Lai Lo                          |       Research Scientist
                                        |
E-mail:         S.Lo@orl.co.uk          |       Olivetti & Oracle Research Lab
                                        |       24a Trumpington Street
Tel:            +44 223 343000          |       Cambridge CB2 1QA
Fax:            +44 223 313542          |       ENGLAND