ARCH-SPEC-DEFN ::= arch spec ARCH-SPEC-NAME = ARCH-SPEC end/ ARCH-SPEC ::= BASIC-ARCH-SPEC | ARCH-SPEC-NAME BASIC-ARCH-SPEC ::= unit/units UNIT-DECL-DEFN ;...; UNIT-DECL-DEFN ;/ result UNIT-EXPRESSION ;/ UNIT-DECL-DEFN ::= UNIT-DECL | UNIT-DEFN UNIT-DECL ::= UNIT-NAME : UNIT-SPEC given UNIT-TERM ,..., UNIT-TERM | UNIT-NAME : UNIT-SPEC UNIT-DEFN ::= UNIT-NAME = UNIT-EXPRESSION UNIT-SPEC-DEFN ::= unit spec UNIT-SPEC-NAME = UNIT-SPEC end/ UNIT-SPEC ::= UNIT-SPEC-NAME | SPEC | SPEC *...* SPEC -> SPEC | arch spec ARCH-SPEC UNIT-EXPRESSION ::= lambda UNIT-BINDING ;...; UNIT-BINDING "." UNIT-TERM | UNIT-TERM UNIT-BINDING ::= UNIT-NAME : UNIT-SPEC UNIT-TERM ::= UNIT-TERM RENAMING | UNIT-TERM RESTRICTION | UNIT-TERM and...and UNIT-TERM | local UNIT-DEFN ;...; UNIT-DEFN ;/ within UNIT-TERM | UNIT-NAME [ FIT-ARG-UNIT ]...[ FIT-ARG-UNIT ] | UNIT-NAME FIT-ARG-UNIT ::= UNIT-TERM | UNIT-TERM fit SYMB-MAP-ITEMS ,..., SYMB-MAP-ITEMS ARCH-SPEC-NAME ::= SIMPLE-ID UNIT-SPEC-NAME ::= SIMPLE-ID UNIT-NAME ::= SIMPLE-ID