GFA BASIC (as of version 2.0, the most popular one) was, by the standards of its time, a very modern programming language. It did without line numbers, one line was equivalent to one command, and the IDE, to greatly simplify maintenance of long listings, even allowed for code folding. It had a reasonable range of structured programming commands (procedures with local variables and parameter passing by value or reference, loop constructs, etc.). It wasn't possible though to create structures or other agglomerated data types, and modularization was only rudimentary, making GFA BASIC best suited for small and medium-sized projects.
On the upside, the interpreter was compact and reasonably fast. It was shipped with a runtime which could be distributed freely with your own programs. Later, a compiler was available, too, which increased execution speed by another factor of roughly 2. GFA BASIC integrated neatly into GEM and TOS, the Atari ST's operating system, providing menus, dialog boxes, and mouse control (see WIMP interface).
Although the source code was usually stored in a tokenized version to save room on disk, pieces of code could also be saved in ASCII form, and as such made it possible to set up reusable libraries. The tokenized source files were a benefit in other ways too—for instance, GFA BASIC allowed users to include binary data in their BASIC code via an "INLINE" statement, and could even be integrated with the GFA Assembler to allow users to develop machine code programs inside INLINE statements in order to accelerate particular areas of a program. It also meant that the BASIC interpreter (and later the compiler) didn't need to tokenise a program when it was loaded, which would have been a significant load-time overhead for some of the larger GFA BASIC programs that were written.
The editor also won much acclaim, by virtue of being fast, comfortable and stable. One of its nicest features was the option to "collapse" a procedure with a single keystroke ("code folding"), showing only its header line with the parameters, thereby leaving more room on the desktop.
In a time before scanners and online help, some editions of the GFA manual came printed black on red paper, to avoid successful photocopying and bootlegging.
GFA Basic was widely used to quickly create editors by game developers. For example, Éric Chahi wrote a game editor in GFA basic to create his game Another World, including scene design and game scripting; only the game engine (polygon rendering and music) was done in assembler. This editor was used to make all ports of the game, including console ones and the collector edition for Windows released in 2006.