## PARSE Statement

**parses matrix elements as statements**
**PARSE** * matrices
<***(**matrix-names**)**>**;**

The inputs to the PARSE statement are as follows:
*matrices*
- are character matrices containing IML module statements.

- (
*matrix-names*)
- are character matrices whose elements are the names of
character matrices containing IML module statements.

Use the PARSE statement to parse the elements of a
character matrix containing IML module statements.
For example, the following statement parses the
elements (rows) of matrix **A** as lines of code:
parse a;

You can parse several matrices with one PARSE statement
either by listing all of their names in the statement
or by first creating a character matrix, say **N**,
containing their names as elements and then parsing **N**.
Each element of **N** is the name of
a matrix containing IML module statements.
In this case, enclose **N** in parentheses
in the PARSE statement to indicate the indirect
references to the elements of **N**.
For example, the statements

a={"start mod1;",
"x={1 2 3};",
"print x;",
"finish;"};
parse a;
run mod1;

produce the result
NOTE: Module MOD1 defined.
X
1 2 3

Alternatively, you can use the following
statements to obtain the same result:
a={"start mod1;",
"x={1 2 3};",
"print x;",
"finish;"};
c={a};
parse (c);
run mod1;

Copyright © 1999 by SAS Institute Inc., Cary, NC, USA. All rights reserved.