A SPECX command is made up of a number of words separated by hyphens (-). The command interpreter checks the command for a match with those stored in the command array. A match is defined to occur when the individual ``words" in the input string each match the first characters of the corresponding words in a complete command. Thus C-F, CL, CLOSE etc all match the command CLOSE-FILE. If more than one match is found the interpreter returns the message `AMBIGUOUS' and awaits further (fresh) input. Note that commands may be typed in upper or lower case -- all inputs are converted to upper case before being processed.
The minimum matching procedure allows the existence of command names which would otherwise be a valid abbreviation of another command name. That is, an exact match is over-riding. For example, we have commands PRINT (a variable or string) and PRINT-SPECTRUM-HEADER. The command string PRINT would invoke the former, while PRINT-S would invoke the latter. PRIN would get the ``ambiguous" response, as before.
The commands are accessed by a hash table in order to speed decoding. Only complete command names are hashed - abbreviations have to be decoded by a much more complex process. In practice this means that the complete command name will be decoded many (perhaps 100) times faster than an abbreviation, and thus the use of complete command names within command files is encouraged (this also aids documentation enormously). I would guess that the response is fast enough however that it is generally better at interactive level to type as little as possible and let the minimum matching facility get the right command for you.
A SHOW-COMMANDS command is provided to help you find your way around. It uses the command interpreter to find all matches of the word or string provided, but including those where the matching word of the command is not the first word. Thus to find all commands where any word begins with the string `PLOT' type PLOT in response to the prompt. Commands are generally named so as to include a useful key-word to make use of this facility more productive. There is also a standard HELP command which uses the VAX VMS librarian utilities to scan a special help file.
There is a symbol definition facility, which allows you to define multi-word commands similar to the supplied commands, which carry out some sequence of operations. Once defined these symbols can be used interchangeably with the existing commands, according to the same minimum matching procedure. Define a new symbol using the := command; show existing symbols with the SHOW-SYMBOLS command (see the next section for more details).