Appendix A of Data General's 1982 revision of its
DG/L Language Reference Manual (093-00229-01) describes DG/L as based on the ALGOL 60 programming language, but gives "data types, operations and statements that ALGOL 60 lacks". Specific differences are:
ALGOL 60 features unsupported in DG/L Extensions Some of the extensions to the ALGOL 60 standard introduced in DG/L or carried over from Data General's previous ALGOL implementation of 1971:
String operations • –
substring • – position of a substring • – length of a string • – sets the current length of a string; e.g. • –
concatenation operator • String arithmetic (e.g. ) • Type conversion (boolean, integer, real, pointer, bit) •
Octal numbers and some special symbols enclosed in brackets to represent ASCII characters
Input and output • Fully formatted output, unformatted input, and output for all supported data types • Full interface to Data General's
RDOS,
AOS and AOS/VS system calls • Cache
memory management (with
virtual memory option). • Interface to CLRE and INFOS II databases
Other extensions • Conditional compiling of sections of code, using • End-of-line comments using the character and • Expanded
do,
for, and
if syntax (e.g. ) • Types: , , 16-bit and 32-bit integers, 32-bit and 64-bit reals and arbitrary precision arithmetic • Literals (e.g. ) • Global data •
Error trapping • External procedures and data • Cluster declaration in a manner very similar to
Pascal units (allows a cluster of procedures and data in a separate compiled source). • Pointer ( symbol and variables of all types • Exclusive OR operator () • Multitasking ==References==