GFA BASIC

From Wikipedia, the free encyclopedia

GFA BASIC is a dialect of the BASIC programming language, by Frank Ostrowski. The first version was completed in 1986. In the mid and late 80's, it proved very popular for the Atari ST homecomputer range (since the ST BASIC shipped with them turned out to be pretty useless). Later, ports for the Commodore Amiga, DOS and Windows were marketed. Although theoretically still available today, it has been superseded by a number of other programming languages.

Screenshot of a GFA BASIC program running at medium resolution under the WinSTOn emulator
Enlarge
Screenshot of a GFA BASIC program running at medium resolution under the WinSTOn emulator

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 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 the programmer to include binary data in their BASIC code via an "INLINE" statement, and could even be integrated with the GFA Assembler to allow the programmer 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 have to tokenise the 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, showing only its header line with the parameters, thereby leaving more room on the desktop.

Screenshot of the GFA BASIC editor under the WinSTOn emulator
Enlarge
Screenshot of the GFA BASIC editor under the WinSTOn emulator

[edit] Trivia

In a time before scanners and online help, the GFA manual came printed black on red paper, to avoid successfully photocopying and bootlegging it.

The name is derived from the company ("GFA Systemtechnik GmbH"), which distributed the software. GFA is an acronym for "Gesellschaft für Automatisierung" i.e. "Society for Automatization".

[edit] External links

In other languages