*** Welcome to piglix ***

Action! (programming language)

Action!
Action! editor
Action! editor
Original author(s) Clinton Parker
Developer(s) Optimized Systems Software
Last release
v3.6 / 1983; 34 years ago (1983)
Platform Atari 8-bit family
Size 16K bank-switched cartridge

Action! is a procedural programming language similar to ALGOL 68 which is part of a development environment containing an integrated editor, compiler, and debugger for the Atari 8-bit family of computers. It was created by Clinton Parker, who had previously developed the Micro SPL language with Henry Baker, and released on cartridge by Optimized Systems Software in 1983. Action! was used to develop at least two commercial products—the Homepak productivity suite and Games Computers Play client program—and numerous programs in ANALOG Computing and Antic magazines. The language was never ported to other systems.

Action! is a one-pass compiler, which compiles the source code entirely in memory or from a file. Constructs were designed to map cleanly to 6502 opcodes, to provide high performance without needing complex optimizations in the compiler. For example, local variables are assigned fixed addresses in memory, instead of being allocated on the stack. This enables tight code for the 6502, but precludes the use of recursion.

The 6502 assembly language source code for Action! was made available under the GNU General Public License by the author in 2015.

Action! consists of the editor, the compiler, a monitor for testing code and switching between the editor and compiler, and the run-time library. The run-time library is stored in the cartridge itself. To distribute standalone applications requires a separate run-time package which was sold by OSS as the Action! Toolkit.

Unlike the integrated Atari BASIC and Atari Assembler Editor environments, the Action! editor is full-screen, so it does not use line numbers. It features a full-screen, scrolling display capable of displaying two windows, as well as block operations and global search and replace.


...
Wikipedia

...