This article deals with programming languages used in the Amiga line of computers, running the AmigaOS operating system and its derivatives AROS and MorphOS. It is a split of the main article Amiga software. See also related articles Amiga productivity software, Amiga music software, Amiga Internet and communications software and Amiga support and maintenance software for other information regarding software that runs on Amiga.

History

Many games and software, especially in the early years of the Amiga were written to directly access the hardware instead of using the operating system for graphics and input. Consequently, games could achieve much faster and smoother game-play, but at the cost of compatibility with newer Amiga models.

Amiga programming languages

Cross-platform libraries and programming facilities

Several cross-platform libraries and facilities are available for Amiga: MUI and ReAction are Amiga standard Object Oriented systems for building graphical interfaces. SDL libraries are widely used in all modern Amiga systems Cairo support is built into AmigaOS 4.1 and MorphOS 3.0 Anti-Grain Geometry CLib2 is a portable ISO C (1994) runtime library for the Amiga. Allegro Library has been ported to AmigaOS 4 and MorphOS . an Amiga port of wxWidgets is being worked on wxWidgets-AOS. Gallium3D is now part of AROS Icaros Desktop Live Distro. OpenAL free software cross-platform audio API, designed for efficient rendering of multichannel three-dimensional positional audio, is available for MorphOS and any AmigaOS version 3 and later revisions. AROS and MorphOS support FreeType library in various projects, included its version release of Origyn Web Browser. FLTK "Fast, Light Toolkit" version for AmigaOS 4.0 is almost complete and it offers all the functionality of the official 1.1.6 version, including the standard and plastic scheme.

Amiga programming languages

For many years Amiga lacked a complete integrated development environment (IDE). This changed in 2005–2006 when Cubic IDE was created, based on the modular text editor GoldED.

Amiga programming languages

Brief list of languages available on Amiga

Assemblers: ASM-One Macro Assembler, Devpac Assembler, Metacomco Macro Assembler, SEKA Assembler

Basic dialects: AmigaBASIC from Microsoft, ABasic from Commodore (developed by Metacomco), AC Basic Compiler, GFA BASIC, HiSoft Basic, AMOS BASIC, Blitz BASIC, PureBasic

C-compilers: Aztec C, DICE C, GNU gcc, VBCC, Lattice C, SAS/C, Storm C, HiSoft C++

PASCAL: Amiga Pascal, Kick-Pascal, High Speed Pascal, Free Pascal

Other languages: Forth (JForth), FORTRAN, Amiga Logo, Oberon, Perl 5, Ruby, Amiga E, FALSE, PortablE, Python (AmigaPython), REBOL, ARexx, Scheme (SCM, Gambit, UMB Scheme, SIOD), GNU C++, Modula-2, Benchmark Modula 2, Eiffel, Java (JAmiga), Draco, and ML (Caml Light).

Descriptions of some languages

ABasiC was developed by MetaComCo and was bundled with AmigaOS 1.0 and 1.1.

AmigaOS 1.2 and 1.3 came bundled with AmigaBASIC (and a complete manual), which other than also being a BASIC dialect, was not related to ABasic. AmigaBASIC was the only programming language (and the only tool) made by Microsoft for the Amiga computer. Its best feature was the lack of numbering lines of code, which was the first attempt in 1985/1986 to create a new approach in BASIC programming. Microsoft then added this feature to all its development language tools. As AmigaBASIC was bundled with so many Amigas it was one of the most common used language in the early years.

Because Commodore wanted to save money, an update was never made for AmigaBasic. Due to its vast number of known bugs and limitations it was immediately discarded by professional developers in favour of other programming languages such as GFA BASIC, Aztec C, Lattice C, and then AMOS. These bugs and limitations included: crashes on newer processors and AmigaOS versions newer than 1.3 when using subroutines (gosub) and sound the editor being written for NTSC and so not using the full screen on PAL screens (the TV standard in Europe) commercially released BASIC's provided better IDE's and better (faster) performance

SEKA assembler was a popular tool among game and demo programmers in the early years of the Amiga. Later Devpac and AsmOne became popular assemblers. SEKA, DevPac and AsmOne all were IDE's and included editor, assembler, linker and debugger.