
electrical scale ("e-18">): "a", ->;
electrical scale ("e-15">): "f", ->;
electrical scale ("e-12">): "p", ->;
electrical scale ("e-9">):  "n", ->;
electrical scale ("e-6">):  "u", ->;
electrical scale ("e-3">):  "m", ->;
electrical scale ("e+3">):  "k", ->;
electrical scale ("e+3">):  "K", ->;
electrical scale ("e+6">):  "M", ->;
electrical scale ("e+9">):  "G", ->;
electrical scale ("e+12">): "T", ->;
electrical scale ("e+15">): "P", ->;
electrical scale ("e+18">): "E".

exponent ("e"+sign+digs>):
   "e", sign option (sign>), number (digs>).

sign option ("-">): "-", ->;
sign option ("+">): "+", ->;
sign option ("+">): "".

number (numb>):
   !0123456789!+ (numb>).

%TEX 
\subsection{ boolean denotations }
%
boolean denotation ("True">): true symbol, ->;
boolean denotation ("False">): false symbol.

%TEX
\subsection{ string denotations }
%
string denotation (quote+s 1+s 2+quote>):
   quote, string chars (s 1>), more string chars (s 2>), layout.

more string chars (quote+quote+s 1+s 2>):
   quote image, ->, string chars (s 1>), more string chars (s 2>);
more string chars ("">):
   quote.

quote image: quote, quote.

string chars (s>):
   ^!\n"!* (s>).

%TEX
\subsection{ identifiers }
%
name (quote+name+quote>):
   identifier (name>), layout,
      uppercase (>name,key>),excludes (>key,>RESERVED).

%TEX
\subsection{ definition of reserved words and symbols }
%

RESERVED::"R".

reserved :
   add to ( >"DIV",>RESERVED,>empty),
   add to ( >"MOD",>RESERVED,>empty),
   add to ( >"ITOF",>RESERVED,>empty),
   add to ( >"BASETYPE",>RESERVED,>empty),
   add to ( >"WHERE",>RESERVED,>empty),
   add to ( >"TYPE",>RESERVED,>empty),
   add to ( >"BOOL",>RESERVED,>empty),
   add to ( >"END",>RESERVED,>empty),
   add to ( >"ENDWHERE", >RESERVED, >empty),
   add to ( >"APPSET",>RESERVED,>empty),
   add to ( >"ATOM",>RESERVED,>empty),
   add to ( >"DEF",>RESERVED,>empty),
   add to ( >"MAC",>RESERVED,>empty),
   add to ( >"INT",>RESERVED,>empty),
   add to ( >"FLOAT",>RESERVED,>empty),
   add to ( >"STRING",>RESERVED,>empty),
   add to ( >"TRUE",>RESERVED,>empty),
   add to ( >"FALSE",>RESERVED,>empty).

appset symbol:			keyword (>"APPSET"), layout.
base type symbol:		keyword (>"BASETYPE"), layout.
type symbol:			keyword (>"TYPE"), layout.
atom symbol:			keyword (>"ATOM"), layout.
where symbol:			keyword (>"WHERE"), layout.
end where symbol:		keyword (>"END"), layout,
 					keyword (>"WHERE"),layout.
def symbol:		    	keyword (>"DEF"), layout.
mac symbol:		     	keyword (>"MAC"), layout.
int symbol:	     		keyword (>"INT"), layout.
itof symbol:	     		keyword (>"ITOF"), layout.
float symbol:			keyword (>"FLOAT"), layout.
bool symbol:			keyword (>"BOOL"), layout.
string symbol:			keyword (>"STRING"), layout.
div symbol:	    		keyword (>"DIV"), layout.
mod symbol:	    		keyword (>"MOD"), layout.
true symbol:			keyword (>"TRUE"), layout.
false symbol:			keyword (>"FALSE"), layout.

%TEX
\subsection{ definitions of punctuation symbols }
%

sigma symbol:			"$", layout.
lambda symbol:			"%", layout.
binding symbol:			".", layout.
semicolon symbol:		";", layout.
comma symbol:			",", layout.
equals symbol:			"=", layout.
