REXX is rather flexible with formatting instructions.

Instructions do not have to begin in a particular column. You can use as much or as little indentation as desired.

Instructions can be typed in uppercase, lowercase, or a combination of both. REXX always "sees" everything as uppercase anyway when it analyzes your instructions, except for anything that you've enclosed in quotes (ie, literal string).

REXX is rather liberal with blank space. You can separate the parts of an instruction by as many or few blank spaces as desired. REXX always regards several, adjacent space characters as just one space anyway, except when those spaces are found within a literal string. When it sees a concatenation operator, REXX ignores all blank spaces around that operator, and sees the two adjacent pieces of the instruction as being directly adjacent to each other.

Usually, a single REXX instruction is placed upon one line. But, you can put more than one instruction upon a line. You simply place a semicolon between the instructions. For example, here we put 3 instructions upon the same line:

/* This script inputs your name and prints it out */
SAY 'Type your name'; PARSE PULL name; SAY 'Your name is' name
If you want an instruction to span more than one line, you must put a comma (,) at the end of the line to indicate that the instruction continues upon the next line. But you can't split a literal string across more than one line, unless you split the string into 2 separate strings joined by a concatenation operator followed by a comma.

The instructions in a REXX script are typically executed in the order that they appear in the text file. (ie, The first instruction, at the top of the file, is executed first. Then, the next instruction below it is executed. Etc). Instructions do not have to be numbered or otherwise labeled (but they can be labeled for the purposes of jumping from one instruction to another via the SIGNAL keyword.