Programs: an Overview
A Program is a simple request to do something or to calculate something. It is much
like a command, but there are two important differences. Programs always return values, and those values may be used by other programs or by commands. Also,
programs accept only mandatory arguments. Optional arguments are not allowed in programs.
For example, if a program called MyProg accepts two expression arguments, then the program statement, say, MyProg(3,4) might appear in the following context:
Let newvalue be MyProg(3,4);
The effect of this command would be temporarily to assign to the variable
newvalue:
On the other hand, it is also possible for other programs to have program
statements for their actual arguments. For example, the statement MyProg(2,MyProg(3,4)) makes sense if value[ MyProg(3,4) ] is of expression type.