Re: Scaffold, plugins and language independence



On Mon, 2004-02-09 at 18:46 -0500, John (J5) Palmieri wrote:
> On Mon, 2004-02-09 at 17:46, Mikoyan wrote:
> > On Mon, 2004-02-09 at 15:51 -0500, John (J5) Palmieri wrote:
> > > On Mon, 2004-02-09 at 14:51, Bart Van Rompaey wrote:
> > > > On Mon, 2004-02-09 at 13:13, Christian Leutloff wrote:

 [ snip  ]

> > I do not pretend to have *the knowlegde*, so I may be wrong with I'm
> > saying here. But GModule is only usable for C and C++ (using export C)
> > plugins. I think GModule and GInterfaces are indeed easier for the
> > plugin writer if the plugin writer is a C/C++ developer.
> 
> Python is tied closely to C.  It is described as a C glue language. 
> Basically what would have to happen is that a GModule would need to be
> created that embeds python and exposes an API for obtaining references
> to other Scaffold elements (i.e. the ValueContainer API).  Since Glib
> and GTK are mostly wrapped all that is needed is to wrap the few
> Scaffold interfaces.  The wrappers take care of marshaling/demarshaling
> the Glib types.  If other plugins need to interact with the python
> plugins it will do so through established interfaces (not sure if
> GObject introspection will work).  I still need to investigate pyGTK's
> support GObject Interfaces but since the drag and drop interfaces are
> supported I wouldn't see why it would be a problem with our plugin
> system.

Interesting. Certainly worth to take a look at. Once :-)

 [ snip ]

> > But it is a fact that Corba/Bonobo from python is quite easy. Actually,
> > i think it's even beautiful. (think: automatic stub and skell generation
> > at runtime when loading the idl, sigh, do I sound biased?). I don't see
> > why it shouldn't be used.
> 
> Easy to use.  Corba C marshaling code I have heard is a pain in the
> butt.

True. But python does everything for you, a CORBA::sequence<> in python
is just a standard list. In C you have to convert a GSList or something
to a CORBA_sequence. While not really hard, it is no fun. In Python no
convertions are required. Corba/Bonobo from python is really easy :-)
(runtime stub/skell generation, implicit convertions, and all the joys
of python).

> > Even in C things like BonoboListener and BonoboEventsource, a possible
> > system for communciation between components, cannot be called hard. But
> > as I said, GModule would fit beter here, I guess.
> 
> I always said Bonobo myself but I really don't see any great loss.
>   If it turns out we want it it is easy enough to add.  At least now we
> start with the simpler solution and get things moving.

Sure, that's great. Hope to see Scaffold maturing soon :-)

Regards,

	Mikoyan





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]