DCL had its roots in IAS, TOPS-20, and RT-11 and was implemented as a standard across most of Digital's operating systems, notably RSX-11 and RSTS/E, but took its most powerful form in VAX/VMS (later OpenVMS).
DCL includes IF-THEN-ELSE, access to all the Record Management Services (RMS) file types including stream, indexed, and sequential, but lacks a DO-WHILE or other looping construct, requiring users to make do with IF and GOTO-label statements instead.
The command line must start with a verb and is then followed by up to 8 parameters (arguments) and/or qualifiers (switches in Unix terminology) which begin with a '/' character.
Some implementations such as OpenVMS and RSX used a minimum uniqueness scheme in allowing commands to be shortened.
All DCL verbs in a script are preceded with a $ symbol; other lines are considered to be input to the previous command.
For example, to use the TYPE command to print a paragraph onto the screen, one might use a script similar to: It is possible to build arrays in DCL that are referenced through translated symbols.
The following is a list of DCL commands for common computing tasks that are supported by the OpenVMS command-line interface.