TAL(ID:2552/tal001)Tandem systems languageTransaction Application Language. Molloy: "a proprietary block-structured systems programming language, derived from Algol-60" Algol 60 dialect serving as a primary system programming language on Tandem computers (Contrary to common statements on the Net, Tandem only started with a proprietary stack-based architecture with no assembler, then ported to MIPS architecture, before being acquired by HP) Related languages
References: Both our original language, pTAL, and the language of the translation we produce, C++, use a combination of value and pointer parameters. To check pointer parameters, the Do component creates an instance of the domain type then passes a pointer to it. The Verify component checks the value, then fills in a new value that is in turn checked by the Do component upon return. Languages that implement value/result parameters would check values similarly. If the profile has a result type, the Verify component returns a procedure result value, which is checked by the Do component. The pTAL language contains a mechanism for optionally passing parameters; the maximum number of parameters is known and any parameter may be either present or absent. This feature differs significantly from the C language "va_list" model in which the maximum number of parameters is not known. The AITG checks all combinations of presence and absence for the first four parameters* and selected combinations beyond that. A similar strategy might check for various lengths of parameter lists, assuming heuristics about how long the parameter list might be. |