Gambas Documentation
Application Repository
Code Snippets
Compilation & Installation
Components
Controls pictures
Deprecated components
Developer Documentation
Development Environment Documentation
Documents
About The Best Formula In The World
Architecture details
Benchmarks
Books
By Reference Argument Passing
Compatibility between versions
Creating And Using Libraries
Database Datatype Mapping
Database Request Quoting
Date & time management
Dates and calendars
DBus and Gambas
Differences Between Shell And Exec
Differences From Visual Basic
Distributions & Operating Systems
Drag & Drop
DrawingArea Internal Behaviour
External functions datatype mapping
Frequently Asked Questions
Gambas Farm Server Protocol
Gambas Mailing List Netiquette
Gambas Markdown Syntax
Gambas Naming Conventions
Gambas Object Model
Gambas Scripting
Gambas Server Pages
Gambas Unit Testing
Gambas Wiki Markup Syntax
Getting Started With Gambas
Hall Of Fame
Image Management In Gambas
Including Help Comments in Source Code
Interpreter limits
Introduction
Just In Time Compiler
Just In Time Compiler (old version)
License
Localisation and Internationalization
Mailing Lists & Forums
Naming Conventions
Network Programming
ODBC Component Documentation
PCRE Pattern Syntax
Porting from Gambas 2 to Gambas 3
Previous News
Project Directory Structure
Release Notes
Reporting a problem, a bug or a crash
Rich Text Syntax
Screenshots
Text highlighting definition file syntax
The Program has stopped unexpectedly by raising signal #11
Variable Naming Convention
WebPage Syntax
Web site home page
What Is Gambas?
Window & Form Management
Window Activation & Deactivation
Window Life Cycle
XML APIs
Error Messages
Gambas Playground
How To's
Language Index
Language Overviews
Last Changes
Lexicon
README
Search the wiki
To Do
Topics
Tutorials
Wiki License
Wiki Manual

Web site home page

GAMBAS is a free development environment and a full powerful object-oriented
language and development platform based on a Basic interpreter with optional
just-in-time compilation, as easy as Visual Basic™ was.

Read the Introduction then this presentation for more information.

Feb162024

Gambas 3.19.0 has been released.

As usual, there are a thousand of changes in this release.

The main features are:
  • Huge interpreter optimizations, making it faster than Python, Perl and Java interpreters in all benchmarks!

  • Support for the russian e2k architecture.

  • Many enhancements to the IDE image editor.

  • The IDE can generate AppImage packages.

  • The IDE project tree filter is a lot faster.

  • A global shortcut to LinkedIn, following KDE merge request #1731.

  • Support for computed GOTO and GOSUB.

  • New Dec and Base$ functions for converting integers in any base.

  • The database component now can retrieve the contents of a newly inserted record, provided that the database driver supports it.

  • The gb.desktop component now uses the freedesktop portal by default if present.

  • A new default icon theme named gambas-thin.

  • Better Wayland support in GUI components.

  • A new syntax highlighter component based on definition files: gb.highlight.

  • Wayland support to the gb.media and gb.media.form components.

  • Support for the dict:// protocol in the gb.net.curl component.

See the Release Notes for all the details.

Sep212023

Release of Gambas 3.18.4

This release includes some more or less important bug fixes made since the 3.18.3 release.

Binary packages are available for Ubuntu on the Gambas stable PPA.

See the Release Notes for the details.

Sep152023

Gambas now can generate AppImage executables

For example, download GameOfLife-1.0.0-x86_64.AppImage, an AppImage generated from the GameOfLife example.

Creating AppImage from the IDE relies on the appimage-builder tool and on apt. So you usually can create them only on Ubuntu or Debian and its other derivatives. But the resulting AppImage should run anywhere!

Please report any problem!

Aug042023

Gambas now compiles and runs on e2k architectures.

The Elbrus 2000, E2K (Russian: Эльбрус 2000) is a Russian 512-bit wide VLIW microprocessor developed by Moscow Center of SPARC Technologies (MCST) and fabricated by TSMC.

Jul072023

Release of Gambas 3.18.3

This release includes important bug fixes made since the 3.18.2 release.

Binary packages are available for Ubuntu on the Gambas stable PPA.

See the Release Notes for the details.

Apr142023

Release of Gambas 3.18.2

This release includes important bug fixes made since the 3.18.1 release.

Binary packages are available for Ubuntu on the Gambas stable PPA.

See the Release Notes for the details.

Feb262023

Release of Gambas 3.18.1

This release includes important bug fixes made since the 3.18.0 release.

Binary packages are available for Ubuntu on the Gambas stable PPA.

See the Release Notes for the details.

Jan132023

Gambas 3.18.0 has been released.

Happy new year! Here is a new release of Gambas.

There are almost one thousand of changes in this release since the 3.17.3 version.

The main features of this release are:
  • Many interpreter optimizations making it faster.

  • The debugger interface was moved to the left panel of the IDE.

  • A project browser was added to the IDE that allows to browse the project data files.

  • A DBus browser was added to the IDE.

  • Bool@(), Byte@()... functions can be the target of an affectation now.

  • Integer arithmetic and conversion now raise an error if overflow is detected. This can be disabled at runtime for backward-compatibility.

  • Properties can be write-only now.

  • The database component now allows to define connection options specific to the underlying database server.

  • The FileView control view modes have been redesigned and file preview has been enhanced.

  • Many stock icons have been added.

  • gb.hash is a new component that implements the Md5(), Sha1(), Sha256() and Sha512() functions, thanks to BusyBox.

  • Many enhancements and fixes to the Web application development component.

See the Release Notes for all the details.

Jul222022

Release of Gambas 3.17.3

This release fixes may bugs detected since the 3.17.2 release.

Binary packages are available for Ubuntu on the Gambas stable PPA.

See the Release Notes for the details.

Apr132022

Release of Gambas 3.17.2

This release fixes a blocking regression in the IDE form editor introduced in 3.17.1, and a few other minor bugs.

Binary packages are available for Ubuntu on the Gambas stable PPA.

See the Release Notes for the details.

Apr062022

Release of Gambas 3.17.1

This release includes important bug fixes made since the 3.17.0 release, and a few new features.

Binary packages are available for Ubuntu on the Gambas stable PPA.

See the Release Notes for the details.

Mar092022

Gambas 3.17.0 has been released.

This is a huge release again, with more than 1,200 changes, optimizations and bug fixes.

The main features of this release are:
  • A new lightweight HTML viewer component, gb.form.htmlview, based on the litehtml library.

  • Namespace support for exported symbols.

  • Support for static variables local to a function.

  • The IDE now can debug a process that run on another computer through ssh.

  • The debugger now can stop each time the value of an expression changes.

  • The profiler can now profile the code of the components loaded by the project.

  • Serialization now does not duplicate objects anymore, and so deal with any complex object structures even with circular dependencies.

  • Shr, Shl, Asr, Asl, Lsl, Lsr, Rol and Ror can now be used as operators.

  • Text highlighting has been redesigned to support different color names by file types.

  • Support for right-to-left language in GUI controls has been enhanced.

  • The new gb.gtk3.opengl component bring the GLArea OpenGL control to the GTK+3 component.

  • The gb.web.gui component has been enhanced with a tree control, keyboard events, global shortcuts and better focus management.

See the Release Notes for all the details.

Sep152021

Release of Gambas 3.16.3

This release fixes the bugs detected since the release of Gambas 3.16.2.

Binary packages are available for Ubuntu on the Gambas stable PPA.

See the Release Notes for the details.

Jul142021

Release of Gambas 3.16.2

This release fixes many bugs detected since the release of Gambas 3.16.1.

Binary packages are available for Ubuntu on the Gambas stable PPA.

See the Release Notes for the details.


May282021

Release of Gambas 3.16.1

This release fixes most of the bugs detected since the release of Gambas 3.16.0.

Binary packages are available for Ubuntu on the Gambas stable PPA.

See the Release Notes for the details.

Apr202021

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.

Sep172020

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.

Jul312020

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.

Jul062020

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.

Jan232020

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.

Nov192019

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.


Previous news...