[Gambas-user] Gambas Future or what kind of Gambas we want.

Benoît Minisini gambas at ...1...
Fri Nov 1 21:10:05 CET 2013


Le 01/11/2013 11:33, François Gallo a écrit :
>
> Le 01/11/2013 11:15, Fabien Bodard a écrit :
>> After long talk with many gambas developpers, after years of joy on the use
>> of this language, I want to talk about its future... its persistance.
>>
>>
>> Benoit for me is a little bit like our Linus. He have done something for
>> itself and it's today one of the better tool ever see. (Umm ... ;-))
>>
>> Now, for me one thing lock down Gambas... why can't it be more known ?
>> Because it is close to Linux world. Theire is no possibility to use it
>> natively on other system ... this problem what explicitely exposed by RMS
>> in the past in a mail sended to us. Yes in his request he wanted us to make
>> the interpreter generate a cil code for interpreter like java/.net or
>> parrot. Well today we know java isn't a sure way, and we can do things too
>> without.
>>
>> I have a request to Benoit, and i know it's time is precious and like mine
>> rare. I want him to concentrate on make it's code portable... separate
>> specific linux part to allow all our friend that want to help to port
>> gambas to stars to make theire job.
>>
>> By doing this, most people can participate on compiler/interpreter code, by
>> having Gambas on other system we can have more component maker/maintainer.
>> At the end Benoit can take hollidays and come take a Cognac at home .   :-)
>>
>> I know this is a huge job as he/we need to take the time to mark all part
>> of the code that is hard linked on Linux system, and then choose a way to
>> separate it to symplify the maintainment
>>
>> Same thing for the toolkits but it's at a first time not the subject of
>> today.
>>
>> Now we have hands that can help... but it can't be done if the code is not
>> structured for.
>>
>> So for the Undred time ... Benoit ... Please, let us helping you.
>>
>>
>>
>>
>> To all, the gambas user/dev, this exchange is for you so even if it take
>> thouthen of mail, please give us your impress and your ideas, your support.
>>
>>
>>
>> Please, don't look at the spelling fault, it will take to many time to you
>>     ;-)
>>
>>
>>
>
> Fabien's right!
>
> i worked on gambas' portability (OS X and *BSD) and i can say
> we need a new structure of code to make a good portability
> but mainly a proper maintenance.
>
> Gambas is too linked to Linux. I can understand Benoit isn't
> interesting to spend time in the developing to port Gambas,
> but Benoit MUST review its code.
>
> At the moment, Gambas is not coded to port properly on
> others OS.
> a lot of routines is too linked to Linux (i say it again).
>
> Add new components and features is great, but it is
> preferable to focus time to make it better.
>
> i hope a work will be done in the gambas code to have
> a "modular code". Separate X11 in a single code is
> better for us, developers who wants to work on
> portability of Gambas!
>
> in this manner, each developer can works on a code
> for OS X, for Windows and so on ...
> X11 for OS X is ugly.
> X11 for Windows is ugly.
> Use translated X11 routines are ugly.
>
> Benoit, we don't ask you to port Gambas to OS X & Windows,
> just to re-structure code of Gambas so that we can works
> efficiently!
>
> While this change will not be applied,
> i would not be motivated to work on any Gambas port again...
>

To port Gambas on non-X11 systems, the problems are the following:

1) The interpreter relies on some kernel features that are not exactly 
implemented in the Windows kernel, especially the fork() system call. 
The Cygwin emulation layer is too slow.

2) I don't care about Windows. Doing the port is a big job. I started to 
did it on Windows XP + Cygwin years ago. It worked, but there was the 
fork() system call emulation that was slow.

3) There is X11 code in gb.gtk, gb.qt4 and gb.desktop.

4) For gb.gtk: as GTK+ 2 is deprecated, gb.gtk should be ported to GTK+ 
3. This implies removing all the X11 specific code.

5) For gb.qt4: the X11 specific code is there to workaround some 
problems, but should not exist theoritically.

6) For gb.desktop: the desktop routines relies on the X11 window manager 
protocols and freedesktop.org standards. A lot of things cannot be 
ported, but some things can.

7) Many components are interfaces to libraries that do not necessarily 
exist on other systems. It could be a problem.

I think there is not a lot of thing to do to port the interpreter, the 
compiler and the other tools, as I already did that on Windows.

As for the X11 stuff, of course you're right. It must be encapsulated 
somewhere so that it can be easily replaced. I already planned to do 
that, but never had the time.

At the moment, I'm busy with fixing Gambas packager as soon as possible, 
so that a Gambas 3.5.1 could be released.

-- 
Benoît Minisini




More information about the User mailing list