Prev Up Next
Go backward to 2.3 Generic Specifications
Go up to 2 Input Syntax
Go forward to 2.5 Specification Libraries

2.4 Architectural Specifications

This section is taken from Note M-4.

  ARCH-SPEC-DEFN   ::= arch spec ARCH-SPEC-NAME = ARCH-SPEC
  ARCH-SPEC        ::= BASIC-ARCH-SPEC
                     | ARCH-SPEC-NAME
  BASIC-ARCH-SPEC  ::= unit/units UNIT-DECL-DEFN,...,UNIT-DECL-DEFN RESULT-UNIT

  UNIT-DECL-DEFN   ::= UNIT-DECL
                     | UNIT-DEFN

  UNIT-DECL        ::= UNIT-NAME : UNIT-IMPORT UNIT-SPEC
                     | UNIT-NAME : UNIT-SPEC
  UNIT-IMPORT      ::= use UNIT-TERM,...,UNIT-TERM within
  UNIT-SPEC-DEFN   ::= unit-spec UNIT-SPEC-NAME = UNIT-SPEC
  UNIT-SPEC        ::= UNIT-SPEC-NAME
                     | SPEC
                     | SPEC*...*SPEC -> SPEC
!                    | arch spec ARCH-SPEC
  UNIT-DEFN        ::= UNIT-NAME = UNIT-EXPRESSION

  RESULT-UNIT      ::= result UNIT-EXPRESSION
  UNIT-EXPRESSION  ::= lambda UNIT-BINDING;...;UNIT-BINDING . UNIT-TERM
                     | UNIT-TERM
  UNIT-BINDING     ::= UNIT-NAME : UNIT-SPEC
  UNIT-TERM        ::= UNIT-NAME ( FIT-ARG-UNIT,...,FIT-ARG-UNIT )
                     | UNIT-TERM RESTRICTION
                     | UNIT-TERM RENAMING
                     | UNIT-TERM and...and UNIT-TERM
                     | UNIT-TERM where UNIT-DEFN,...,UNIT-DEFN
  FIT-ARG-UNIT     ::= UNIT-TERM
!                    | UNIT-TERM fit SYMB-MAP,..,SYMB-MAP

! ARCH-SPEC-NAME   ::= SIMPLE-ID
! UNIT-SPEC-NAME   ::= SIMPLE-ID
! UNIT-NAME        ::= SIMPLE-ID

CoFI Document: CASL/SyntaxIssues --Version 0.99-- 17 February 1998.
Comments to cofi-language@brics.dk

Prev Up Next