Gambas is a free development environment based on a Basic interpreter with object extensions, like Visual Basic (but it is NOT a clone !).
With Gambas, you can quickly design your program GUI, access MySQL or PostgreSQL databases, pilot KDE applications with DCOP, translate your program into many languages, create network applications easily, and so on...
This project aims at making a graphical development environment based on a Basic interpreter, so that we have a language like Visual Basic under Linux.
The phenomenal quantity of bugs and inconsistencies that makes Visual Basic so delightful persuaded me to start this project.
It seems that Microsoft is aware of the poor quality of its language, as VB .Net is not backward compatible with older versions of Visual Basic. I think they have thrown away the Visual Basic interpreter source code, and that VB .Net is just a .Net runtime compiler whose syntax looks like the Visual Basic one. Well, it's just my own opinion...
I want to clear up any misunderstanding immediately. Gambas does not try to be compatible with Visual Basic, and will never be. I'm convinced that its syntax and internals are far better than the one's of its proprietary cousin.
I took from Visual Basic what I found useful : the Basic language, the development environment, and the easiness to quickly make programs with user interfaces.
But I dislike the very bad level of common Visual Basic programmers, often due to bad pratices imposed by the bugs and strangeness of this language. So I will try to make Gambas as coherent, logical and reliable as possible, and I hope that Gambas programmers will make effort in return !
At the moment, I'm looking for programming help. The kernel of Gambas is now stabilized, if not well documented. There is a component example to help people learning how to write components.
I hope other people will join me to help to increase the possibilities of the language. There is so much to do !
Gambas is made up of the following programs :
· A compiler.
· An interpreter.
· An archiver.
· A graphical user interface component.
· A development environment.
The development environment is written with Gambas itself, so that I can show the abilities of the language. And it is very useful for debugging !
Product's homepage
What's New in This Release: [ read full changelog ]
[DEVELOPMENT ENVIRONMENT]:
· NEW: Add support for Finnish language.
· NEW: Support for the Romanian language.
· NEW: Romanian translation made by Florin Iacob.
· NEW: Czech translation updated by Radek Fryšták and Josef Kubíček.
· NEW: Add desktop and icon files.
· NEW: Swedish translation updated.
[INTERPRETER]:
· BUG: File.SetExt() now works correctly with files whose name begins with a dot.
· BUG: Fix a memory leak that can lead to a crash in enumeration management.
· BUG: The Stat.Perm[] property correctly returns execution permissions now.
[COMPILER]:
· BUG: Correctly read long constants whose value is the lower possible Long value.
· BUG: Define the LLONG_MAX constant if it is not defined.
[GB.DB.FORM]:
· NEW: New Czech translation made by Radek Fryšták and Josef Kubíček.
[GB.DB.ODBC]:
· BUG: Table existence should be checked correctly now.
[GB.DB.SQLITE3]:
· BUG: Detect integer primary key whatever the case used to write "integer".
[GB.FORM]:
· NEW: New Czech translation made by Radek Fryšták and Josef Kubíček.
[GB.FORM.DIALOG]:
· NEW: New Czech translation made by Radek Fryšták and Josef Kubíček.
· [GB.FORM.MDI]
· NEW: New Czech translation made by Radek Fryšták and Josef Kubíček.
· [GB.GTK]
· BUG: Cursor is correctly updated with the value of Application.Busy now.
· BUG: Stop Event now works during the Close event of a modal form.
· BUG: Fix a memory leak that leads to a crash in the TextArea.Paste() method.
· BUG: Fix Label automatic resize.
· BUG: Settings the text of a transparent Label or TextLabel having no text works correctly now.
· BUG: SpinBox Value property should always be accurate now.
· BUG: TextBox.Selection.Length now returns the correct value.
· BUG: Calling Menu.Children.Clear() or deleting a menu during a Menu Show event should not crash anymore.
· BUG: A parent menu does not raise the Click event anymore.
· BUG: GridView correctly receives the focus now.
· BUG: Draw.Ellipse() now correctly draws a pie when filling is enabled.
· BUG: Fix ComboBox.Add() when the position argument is specified.
· BUG: Fix ListBox.Add() when the position argument is specified.
· BUG: MoveScaled works correctly for positions and sizes that are not a multiple of Desktop.Scale.
· BUG: Key[] does not print GTK+ warning anymore when getting a null string as argument.
· BUG: Mouse.Blank cursor works as expected now.
· BUG: Relative font sizes are correctly interpreted in rich text now.
· [GB.NET.CURL]
· NEW: Asynchronous FtpClient and HttpClient objects are now automatically kept alive until their operation is finished.
· [GB.QT4]
· BUG: MoveScaled works correctly for positions and sizes that are not a multiple of Desktop.Scale.