The BASIC Guide to GAMBAS: All You Need To Know

Matthew Hughes 03-03-2015

If you owned a computer in the 80s, you almost certainly knew BASIC. Each microcomputer came with their own spin on the language, and it wasn’t uncommon to while away a Saturday afternoon copying code from a magazine line by line. The end product would almost always be some kind of game, or an interesting visual effect.


It inspired an entire generation of coders. But BASIC died around the same time the Commodore 64 did, and it wasn’t really replaced. As Windows came on to the scene, it was no longer required to write code in order to use a computer. Even if you wanted to, Windows didn’t really come with a BASIC-like programming language rolled in.

But a handful of people are trying to revive it with a programming language called GAMBAS – Gambas Almost Means Basic, which is available for Linux and FreeBSD. Here’s what you need to know.


So, let’s start off with a bit of history.

Back in the 1980s, Microsoft was a shade of what it is right now. Few people had computers at home, and those who did tended to have ones made by Amstrad, Atari, and Commodore; the giants of the era.

These didn’t really come with operating systems as we now know them, but rather a minimalist approach to running code from tapes and jumbo-sized floppy disks. They also came with interpreters for a simple, human-readable programming language called BASIC. This allowed programmers of all abilities to make games and applications, and freely distribute them. In many respects, BASIC kickstarted the hobbyist developer market, and can be regarded as a spiritual ancestor to the modern day App Store.


But, then the computer market changed.

Atari, Amstrad and Commodore all went out of business, or pivoted from making hardware, to exclusively software. The computer market transformed from consisting of multiple, smaller players, to just two; Apple and Microsoft. A casualty of this transformation was BASIC.


GAMBAS is a spiritual throwback to this era. But it comes with some key differences.


Firstly, syntactically (meaning, the grammar and structure of the language), it differs significantly to ‘old-school’ BASIC, adopting a similar structure to that of Microsoft’s Visual Basic language. If you’ve used this, GAMBAS will be incredibly familiar to you. If not, you’ll probably have a bit of learning to do.

Secondly, GAMBAS uses an object-oriented approach to programming, where the code is logically organized in ‘real-world’ terms. This is incredibly unusual, given the BASIC languages of yesteryear used a more procedural style, where code is organized in steps to be followed sequentially.

Finally, GAMBAS is more than just a language. It also comes with an IDE (Integrated Development Environment), as well as a toolkit for making rudimentary user environments. It even supports QT, which is the engine behind a dizzying array of Linux applications, as well as SDL, which is the gold-standard of computer graphics engines.



Surprisingly, GAMBAS also comes with a CGI engine, allowing you to make websites. I wouldn’t recommend this though, largely due to it being exceptionally slow, and GAMBAS lacking support common developer tools, including the likes of MongoDB How a MongoDB Database Can Better Organize Your Data MongoDB (from "humongous") is a cross-platform document-oriented database used as an alternative to MySQL. But what does that mean? Read More , which is used by a variety of web applications to store data.

How Can I Get It?

Well, this is simple. GAMBAS is currently available for Linux and FreeBSD, and can be downloaded from the repositories of your chosen distro. If you’re using Ubuntu, run sudo apt-get install gambas3. This will then install over 100 megabytes of data.


If you’re on Windows, you can get it running with a bit of wrestling with Cygwin. It’s probably easier to use a VM, though.


Then, it’s just a matter of diving in, and getting your feet wet. A good place to start is with one of GAMBAS’s many templates, which make it easy for you to start coding without the laborious step of finding libraries and linking them to your project.

Where Can I Learn About It?

GAMBAS Codecademy - Hands Down The Easiest Way To Code Codecademy is a new website slash interactive programming tutorial that walks you through the basics of JavaScript. While it hasn't been around very long, the site has already been generating a lot of buzz on... Read More is very much a niche language.

As a result, there’s not the same amount of learning material available for it, as there are for other languages. CodeAcademy haven’t (and almost certainly never will) written a GAMBAS course, and there are only two books about the language on


With this respect, your options for learning this language are very limited.

A good first step is the documentation, which is freely available on the GAMBAS Wiki. Failing that, check out A Beginners Guide to GAMBAS [No Longer Available], by John Rittenhouse. This can be read online.

After that, try looking for open-source projects written in the language, and see if you can get a feel for the language from that. Great places to start include BitBucket Love GitHub? 4 Reasons Why You Should Host Your Code On BitBucket You have to think about where you intend to store your code. It's likely you've have heard of GitHub. That's not surprising. GitHub is used by individuals and enterprises to host code, collaborate on documentation... Read More , and its more popular cousin, Github What Is Git & Why You Should Use Version Control If You’re a Developer As web developers, a lot of the time we tend to work on local development sites then just upload everything when we’re done. This is fine when it’s just you and the changes are small,... Read More ..

Is It Worth Learning?

If you’re planning on learning a programming language in order to advance your career, GAMBAS shouldn’t be that language. In the real world, hardly anybody uses it as their working language. It just isn’t practical, on so many levels.

Unlike a significant proportion of mainstream programming languages, code written with GAMBAS cannot easily be ported to Windows or OS X. Furthermore, if you decided to learn GAMBAS with an expectation of there being an active, expansive developer community to learn from, you’ll be sorely disappointed.

It’s also immensely impractical. One of the core strengths of Python, for example, is the wealth of libraries available for it, which allow you to do anything from manipulate HTML, to build your own web servers. There’s nothing really like that for GAMBAS.

I can’t even recommend it as a teaching language Which Programming Language Should You Learn For Software Development? When starting on the path of programming, it’s important you invest your time wisely in choosing to learn something that will both benefit you in the immediate future with visible results on your platform of... Read More . Python and Ruby are both cleaner, less opaque and are actually used. There’s also a massive amount of learning material surrounding these languages, unlike GAMBAS, which is relatively limited in that regard.

So, who should learn GAMBAS? Well, if your eyes go misty whenever you think of the hours you spent copying code from magazines in the 80s, you might get a kick out of it.

But everyone else? Just learn Python.

Photo Credits: Commodore Amiga 500 (Quagmire) 

Affiliate Disclosure: By buying the products we recommend, you help keep the site alive. Read more.

Whatsapp Pinterest

Leave a Reply

Your email address will not be published. Required fields are marked *

  1. Sujit Vasanth
    April 30, 2016 at 6:34 pm

    I personally love gambas - it is a wonderfully written language that just "works". It is visual BASIC but better. I think more and more people will realize its power for hobyist programmers.

    And one of those commodore 64 programmers as a child and the vic 20 before that! (both in machine language and basic)

    Linux is just better for arduino and pi programming and windoews has some way to catch up.

    you can see a video about GAMBAS and raspberry pie here

  2. Cale Benton Yates III
    April 3, 2015 at 4:27 pm

    Thank you, Matthew.

  3. Cale Benton Yates III
    April 3, 2015 at 3:17 pm

    No, I'm just a user who's tried to keep up with the original language. I was diagnosed with Parkinson's Disease in October of 2003, so doing much of anything technical is difficult now. Still, I do what I can.

    • Matthew Hughes
      April 3, 2015 at 3:34 pm

      I'm really sorry to hear about that. :(

  4. Cale Benton Yates III
    March 7, 2015 at 12:05 pm

    Please take a look at the current status of True BASIC on their website at, Matthew. I think you will be pleasantly surprised at what is going on with True BASIC there.

    • Matthew Hughes
      March 31, 2015 at 7:59 pm

      Interesting. You a TrueBasic dev?

  5. Tinkicker
    March 4, 2015 at 12:43 pm

    Yep, eyes got a bit misty there... Me, RUN magazine, my trusty Commodore 64 (and later, the C128), and a Saturday afternoon.
    It sure was laborious and frustrating, but it was geek kid cutting edge.
    We won't get I to the Timex /Sinclair 1000 I had before that... :D

    • Matthew Hughes
      March 4, 2015 at 1:39 pm

      It's kind of sad we'll never have anything like that again, isn't it?

  6. Adrian
    March 3, 2015 at 8:37 pm

    I remember the uninitiated laughing at the "pokes" and "peeks" in my C64 code. Those were the good old days.