Gambas 2 1.9.46a reviewDownload
Gambas is, before all, a Basic language with object extensions
Gambas is, before all, a Basic language with object extensions. A program written with Gambas is a set of files.
Each file describes a class, in terms of object programming. The class files are compiled, then executed by an interpreter. From this point of view, it is very inspired by Java.
The development environment is written with Gambas itself, so that I can show the abilities of the language. Gambas 2 is very useful for debugging !
Here are some key features of "Gambas":
A Gambas project is stored under one directory. The archiver transforms the project directory structure in one sole executable file.
Compiling a project only requires the compilation of the modified classes. Every external reference of a class is solved dynamically at the execution time.
Gambas has a component architecture that allows to extend the language. Anyone can write components as shared libraries that dynamically add new native classes to the interpreter. The component architecture is documented in the Wiki encyclopaedia.
By default, the Gambas interpreter is a text-only program. The component architecture is used for writing the graphical user interface part of the language.
As the graphical user interface is implemented as a component, Gambas will be able to be independent of any toolkit ! You will be able to write a program, and choose the toolkit later : GTK+, Qt, etc.
I have decided to start implementing the graphical user interface with the Qt toolkit, as it is easier for me. Later, I will write a GTK+ component that will have almost the same interface as the Qt component. I think GTK+ 2.0 will have enough features to be as powerful as Qt 3.0
Any window or dialog box can be used like a control. You cannot do such a thing with Visual Basic without using ActiveX (bless you ! I know, I'm a bit allergic too).
Gambas projects are easily translatable, in any language. Well, to be honest, I'm not sure for Arabic, Japanese and Chinese...
Gambas 2 1.9.46a keywords