This is where the shell gets interesting.
Variables add a level of generality to the environment.
User defined variables are fairly straightforward. The shell will then attempt to execute the command and return an error message. This is another way to say that one variable can be set equal to another variable which contains another, etcetera. This is because the assignment is terminated by white space, unless the appropriate quotation characters enclose the string value. This is because VAR2 is assigned the value of VAR1 before VAR1 has been given a value.