Transaction Application Language
   HOME

TheInfoList



OR:

Transaction Application Language or TAL (originally "Tandem Application Language") is a block-structured, procedural language optimized for use on Tandem hardware. TAL resembles a cross between C and
Pascal Pascal, Pascal's or PASCAL may refer to: People and fictional characters * Pascal (given name), including a list of people with the name * Pascal (surname), including a list of people and fictional characters with the name ** Blaise Pascal, Fren ...
. It was the original
system programming language A system programming language is a programming language used for system programming; such languages are designed for writing system software, which usually requires different development approaches when compared with application software. Edsger D ...
for the Tandem CISC machines, which had no assembler. The design concept of TAL, an evolution of
Hewlett Packard The Hewlett-Packard Company, commonly shortened to Hewlett-Packard ( ) or HP, was an American multinational information technology company headquartered in Palo Alto, California. HP developed and provided a wide variety of hardware components ...
's
SPL SPL may refer to: Association football * Saudi Professional League * Scottish Premier League * SportPesa Premier League, Kenya * Singapore Premier League * RoboCup Standard Platform League, matches between autonomous robots Computing Program ...
, 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 Pascal, Pascal's or PASCAL may refer to: People and fictional characters * Pascal (given name), including a list of people with the name * Pascal (surname), including a list of people and fictional characters with the name ** Blaise Pascal, Fren ...
, 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 An operating system (OS) is system software that manages computer hardware, software resources, and provides common services for computer programs. Time-sharing operating systems schedule tasks for efficient use of the system and may also in ...
was written in TAL. Recently much of it has 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 accelerated/re-compiled into Native RISC Applications. In the current migration from RISC to Intel Itanium 2 TAL and pTAL has been replaced with epTAL, again - compilers allow TAL and pTAL code to be accelerated/re-compiled into native Itanium Applications.


Further reading


TAL Programmer's Guide
{{compu-lang-stub Systems programming languages