Re: Scaffold, plugins and language independence

Mikoyan <[email protected]>
Newsgroups gmane.comp.gnome.devtools
Message-ID <[email protected]>
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
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.