Re: Scaffold, plugins and language independence
- From: Bart Van Rompaey <bart perfectpc be>
- To: Christian Leutloff <leutloff sundancer oche de>
- Cc: Gnome Dev Tools List <gnome-devtools gnome org>
- Subject: Re: Scaffold, plugins and language independence
- Date: Mon, 09 Feb 2004 20:51:21 +0100
On Mon, 2004-02-09 at 13:13, Christian Leutloff wrote:
> Hello,
>
[cut some earlier postings]
>
> Regarding the language independent execution of plug-ins it is worth to
> have a look of the technology used by mono/.NET. E.G. using the type
> system developed for .NET languages it is possible to directly call
> functions written in different languages. The usage of the same type
> primitives eleminates the need of marshalling and re-marshalling the
> variables.
>
> Bye
> Christian
If you stick to the .NET platform, you can indeed "interoperate" between
different languages (interoperate = use/inherit classes written in
another language, in fact all languages are compiled to the same ilasm,
so you work with only one language), given that you have a .NET compiler
for the language (more precise: one that follows the common language
specifications). When you look at Mono, there are only a few such
compilers so far.
Now look at what Scaffold is intended for: support software development,
mainly for Gnome and Gtk. We're talking about glib c, c++, python, java,
c#, ... then. For most of these languages, there is no .NET compiler for
Mono (not yet). So although .NET looks promising, it's not really
usefull as interoperating tool/medium in Scaffold I think.
I'm not sure if GModule/wrapping can provide a solution here either:
could all those languages be wrapped? If one wants to support all of
them, meaning development support in the form of tools (build, cvs,
debugging, syntax highlighting, intellisense, ...), I think the easiest
way is writing the language specific parts in their own language (by
means of plugins). Java and C# have both their API classes to reflect on
the intermediate languages files (class/dll/exe), using these
functionality is the easiest way to get the necessary information needed
for some tools (in special: class/method browser, intellisense, ... ).
So I thought communication between plugins in those different languages
and the "core" could be done using Corba/Bonobo, since all those
languages have libraries for this. The core can be further developed in
glib c, and can keep using gdl, gnomebuild, ... . This way, you can
provide the largest possible freedom to the plugin writer too.
These are just my thoughts of a Gnome IDE, don't know if you agree. Any
comments on this?
Bart.
--
Bart Van Rompaey <bart perfectpc be>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]