Mini-Language for amf.spec

Mini-language is an interpreted language for application
configurations.  A mini-language script is interpreted into
a datastructure; list datastructure, to be precise.

The mini-language by itself is helpless like a month-old
baby.  It has only these predefined instructions:

 - load 
 - func
 - use

The mini-language is extensible.  By itself it is nothing,
but a tool to build your own mini-language.

A script is a list of instructions.  (I also sometimes call
them 'statement'.)  An instruction is a word and optional
parameters.  There are two kinds of parameters: a single
value or a list.  One instruction may have 0 or more
single-value parameters and 0 or 1 list parameter.

A list parameter is by itself a list of instructions, which
might have their own parameters in exactly the same manner,
recursively.

If an instruction has a list parameter, it is always the
last parameter.  So the logical structure of an instruction
is:

<instruction> = <name> <value>* <list>?

<name> is a word
<value> is a word
<list> is <instruction>+



