Reference articles on history, science, culture and more
Encyclopedia

Transaction Application Language

Procedural computer language also known as TAL

Transaction Application Language or TAL (originally "Tandem Application Language") is a block-structured, procedural language optimized for use on Tandem (and later HP NonStop) hardware. TAL resembles a cross between C and Pascal. It was the original system programming language for the Tandem Computers CISC machines, which had no assembler.

The design concept of TAL, an evolution of Hewlett-Packard's SPL, was intimately associated and optimized with a microprogrammed CISC instruction set. Each TAL statement could easily compile into a sequence of instructions that manipulated data on a transient floating register stack. The register stack itself floated at the crest of the program's memory allocation and call stack.

The language itself has the appearance of ALGOL or Pascal, with BEGIN and END statements. However, its semantics are far more like C. It does not permit indefinite levels of procedure nesting, it does not pass complex structured arguments by value, and it does not strictly type most variable references. Programming techniques are much like C using pointers to structures, occasional overlays, deliberate string handling and casts when appropriate.

Available datatypes include 8-bit, 16-bit, 32-bit and (introduced later) 64-bit integers. Microcode level support was available for null terminated character strings. However, this is not commonly used.

Originally the Tandem NonStop operating system was written in TAL. Much of it has since been rewritten in C and TAL has been deprecated for new development.

In the migration from CISC to RISC, TAL was updated/replaced with pTAL, compilers allowed TAL to be re-compiled into Native RISC Applications. Later, the epTAL compiler was introduced for Itanium processors.

Watch videos about Transaction Application LanguageExplainers and documentaries on YouTube (opens in a new tab)

Sources and credits

This article is adapted from the Wikipedia article Transaction Application Language, written by its contributors and licensed under CC BY-SA 4.0. Fathomly has changed the layout, removed citation markers, navigation and maintenance notices, and adjusted punctuation. This adapted version is shared under the same license. For references, see the original article.

Fathomly is not affiliated with or endorsed by the Wikimedia Foundation. Spotted a problem? Tell us.