doc • home

Web site home page

Gambas is a free development environment and a full powerful development platform based on a Basic interpreter with object extensions, as easy as Visual Basic™.
Read the Introduction then this presentation for more information.


Gambas 3.16.0 has been released.

This is a huge release, with more than a thousand of changes, optimizations and bug fixes.

Here are some of the main features:

  • GTK+3 and QT5 components now support Wayland.

  • GTK+3, QT4 and QT5 new web browser components using the same interface.

  • GTK+3 component is now on a par with QT5 component, allowing the development environment to run with GTK+3!

  • IDE compressed files are not stored in the project anymore. They are generated when the executable is made. Projects are automatically converted at opening.

  • Array access is now about 15% faster.

  • Add binary search methods to the array classes.

  • Date localization support has been redesigned, so that complex formats of languages like Chinese are supported. The new design should be backward-compatible with the old ones on western languages.

  • Compiler is now faster by using all the CPU cores.

  • Scripter has been redesigned, cleaned-up, enhanced and optimized.

  • Label, TextLabel, MovieBox, Frame and Separator controls are now written in Gambas.

  • A lot of new stock icons were added and updated.

  • The ODBC database driver works far better.

  • zstd compression format support.

  • aarch64 architecture support.

See the Release Notes for all the details.


Release of Gambas 3.15.2

This release provides important bug fixes since the release of Gambas 3.15.1.

See the Release Notes for the details.


Release of Gambas 3.15.1

This release provides important bug fixes since the release of Gambas 3.15.0.

See the Release Notes for the details.


Gambas 3.15.0 has been released.

This release provides the following main features and fixes:

  • A new unit test system made by Christof Thalhofer and Tobias Boege.

  • A new diff mode in the IDE code editor.

  • The ability to save and restore custom IDE layouts.

  • Enhanced support for dark themes.

  • Many fixes in the packager.

  • A new trace mode in the interpreter.

  • A new OPEN NULL syntax for opening a null stream.

  • A new PEEK instruction.

  • A new WAIT NEXT instruction.

  • The &= operator is now hundreds of times faster.

  • New special methods that allow any object to be serialized.

  • A new faster gb.web.gui component that replaces gb.web.form.

  • A new gb.poppler component that replaces gb.pdf.

See the Release Notes for all the details.


Release of Gambas 3.14.3

This release fixes an important regression in static arrays that were incorrectly read-only, and a lot of small other bugs here and there.

See the Release Notes for the details.


Release of Gambas 3.14.2

This release mainly includes a fix of the Message class that disturbs a lot of people.

See the Release Notes for the two other fixes.


Release of Gambas 3.14.1 (still Gambas π)

This release provides important last-minute fixes since the release of Gambas 3.14.0.

See the Release Notes for the details.


Gambas 3.14.0, as known as Gambas π, has been released.

This release brings the main following features:

  • The IDE can now print a source code file.

  • A 16 pixels size version of the Gambas font in medium and bold versions.

  • Support for immutable (read-only) arrays.

  • PROPERTY...USE... is a new shortcut syntax for defining properties.

  • Uncaught errors raised from an event handler can be ignored now.

  • The compiler emits column position on errors and warnings if possible.

  • Message boxes are not native anymore.

  • Web applications based on gb.web or gb.web.form now correctly handle the Accept-Language HTTP header.

As usual, there is a bunch of bug fixes. See the Release Notes for all the details.


Gambas 3.13.0 has been released.

This release fixes some disturbing bugs in Gambas 3.12, and add the following features:

  • JIT compilation is now done in background, speeding up program start.

  • The IDE now supports automatic translation tools.

  • File.RealPath() is a new method that canonicalizes a path, removing all its symbolic links.

  • Array.SortUsing() is a new method that sorts an array using an order defined by another array.

  • Array.Shuffle() is a new method that randomly shuffles the contents of an array.

  • TimeBox is a new control to enter durations.

See the Release Notes for all the details.


The playground is back.

Due to efforts from Matt Collins the Gambas playground is back, running on Gambas.One.


Gambas 3.12.2 has been released.

This release includes other important bug fixes of the 3.12.0. Especially the following:

  • Debugging application using gb.web.form works again.

  • The Debug instruction does not break the JIT compiler anymore.

See the Release Notes for the details.


Gambas 3.12.1 has been released.

This release includes all last-minute fixes made since the 3.12.0 release.

See the Release Notes for the details.


A french article about Gambas 3.12

I have written an article about the release of Gambas 3.12 for the french Linux new website

You can read it here.

An english translation may be done in the coming days.


Gambas 3.12.0 has been released.

The main feature of this release is the new Just-In-Time compiler, that replaces the old one based on a deprecated version of LLVM. This new JIT compiler translates the Gambas bytecode into C code at runtime, and uses the gcc or clang compiler to translate the C code into shared libraries.

The other important features are the following:

  • Local variables can now be declared anywhere in the function body.

  • FOR and FOR EACH syntax now can declare their loop variables.

  • String can now be accessed with the array syntax.

  • String searching is a lot faster for common cases.

  • The ScrollView, PictureBox and SpinBox controls are now implemented in Gambas.

  • Scrolling of scrollable controls is now smoothly animated.

  • Control animations and shadows can now be globally disabled.

  • FreeBSD and other BSD variants should now have no problem to compile Gambas.

  • The PowerPC64 and ARM64 architecture are now supported.

See the Release Notes for all the details.

Previous news...