Names
To define a name you can use let. This function takes two arguments and creates new named values. A simple example is [let '[x:10] '[* 2 x]].
Notice how both arguments are data (prefixed with a quote). This is because MISC has no special forms, if the arguments are not quoted then they will be evaluated before the let. MISC also provides letrec which allows names to reference themselves.
To make a name explicit it can be prefixed by a dollar sign. By default numbers are data, to use a number as a name it can be written explicitly like $2.