MUMPS Syntax - Whitespace

Whitespace

In MUMPS syntax, some spaces are significant; they are not merely whitespace. Spaces are used as explicit separators between different syntax elements. For example, a space (called ls in the formal MUMPS standard) separates a tag on a line from the commands that make up that line. Another example is the single space that separates a command from the arguments of that command. If the argument is empty, the command is considered to be "argumentless". This means this a context in which a pair of spaces has a different syntactic significance than a single space. One space separates the command from its argument, and the second space separates this command from the next command. However, extra spaces may always be added between commands for clarity because in this context the second and more spaces are not syntactically significant, up to the line length limit in an implementation. The end-of-line characters are syntactically significant, as they mark the end of line scope for IF, ELSE, and FOR commands. In contrast to other languages, carriage returns and linefeeds are not the same as white space; they are terminators of a line. Where some languages have a requirement to put semicolons at the end of commands, MUMPS uses the space or line-terminator to end the command. Note also, that other languages have larger ways of grouping commands, such as statements. MUMPS does not have these, only the line scope. Unlike FORTRAN and some other languages which have fixed length lines, there is no explicit way to extend or continue a line. Lines have variable length up to the limit of the implementation.

Read more about this topic:  MUMPS Syntax