Proposal: An Xfce C++ language binding for GTK+

Jeff Franks jcf at tpg.com.au
Sat Oct 9 01:49:31 CEST 2004


Jasper Huijsmans wrote:

> Jeff Franks wrote:
>
>> Proposal: An Xfce C++ language binding for GTK+
>> From: Jeff Franks.
>> ========================================
>>
> First of all, I don't even know C++, so I may be biased and/or 
> prejudiced. But, to be honest, I just don't see this. Let me try to 
> explain.
>
> Our 'development platform' consists  basically of some libs with a few 
> functions specific to Xfce. Our real development platform is Gtk, 
> which is what you have wrapped already.
>
> Xfce is a collection of smallish utilities that try to work together 
> to provide a good desktop experience. Everything is now written in C, 
> because, AFAIK, that is what Olivier prefers.
>
> Ok, now where does GFC come into this?
>
> IMHO, it does not make sense to split our main development platform 
> between a C++ and a C framework. We're just not big enough. Even GNOME 
> doesn't do that.
>
> That leaves two possibilities for GFC: either to be used to write 
> 3rd-party applications or to switch Xfce development over completely 
> to C++. 3rd-party development is basically non-existant, so that 
> doesn't help you, nor would it give you any advantage over what you 
> have now.

Yes it would. GFC would be exposed to 10000 plus potential users and 
automatically get packaged into the most popular Linux distributions.

>
> Switching over to C++ could be done; could be gradual too, one module 
> at the time. I guess that mainly depends on personal preference and 
> real or perceived advantages. Personally I don't think that will buy 
> us much, but like I said that may be because I'd have to learn C++ first.

KDE and GNOME continue to raise the bar so you have to think of the 
future. Xfce needs to evolve and improve if it is to remian a viable 
alternaive.

>
>
> Your making a very cool offer, I really appreciate that. I just don't 
> really see how it would fit in our development activities. Do you have 
> ideas on this yourself?
>
I'm a C++ programmer so I don't see any conflict because there is a 
valid subset of C++ that is compatible with the C language. I think some 
things are better written in C and others in C++ (or some other 
langauge) but both can happily coexist in the same program. Owen Taylor 
recently said when discussing GTK+ language bindings that he thought 
libraries were better written in C and applications written using one of 
the bindings.

If GFC was to be integrated into Xfce, initially it should only be as a 
langauge binding intended for Xfce users. This could be its testing 
ground. If at some point in the future the feedback from users was good 
and it was decided to give C++ a try, one module at a time could be 
written in C++ and tested.  If this was the case, the point is Xfce 
would have control over its own C++ bindings for GLib/GTK and these 
could be developed in any direction desirable. If this wasn't the case 
then Xfce would have a C++ development platform for GLib/GTK to offer 
its users and Xfce would be written in C. Either way Xfce would be in 
the same league as KDE and GNOME: desktop environments that offer a 
development platform.

Out of interest, Blackbox is written in C++ and its a very lightweight 
fast desktop environment (not as good as Xfce though). Many people seem 
to think C++ is bigger and slower than it really is. Java and C# are big 
languages too and their origins are rooted in the same OOP techniques as 
early C++.

With my proposal Xfce gets a dedicated programmer and a C++ language 
binding with a stable source code base ready to go. With five years 
development behind GFC, Xfce wouldn't have the programmers with time to 
accomplish the same. GFC is a good, light weight C++ application 
framework for GTK+. I know that. The trouble is that not enough 
programmers know that and without increased exposure my motivation will 
start to wane.

Regards,
Jeff Franks.






More information about the Xfce4-dev mailing list