[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[CoFI] CASL Concrete Syntax



CONCRETE SYNTAX

  For full details of the current concrete syntax proposal, see:
  http://www.brics.dk/Projects/CoFI/Documents/CASL/SyntaxIssues-v0.99

  For illustrative examples in display format see:
  http://www.brics.dk/Projects/CoFI/Documents/CASL/SyntaxExamples-v0.99

  The same examples in input syntax have been parsed using ASF+SDF, see:
  http://www.brics.dk/Projects/CoFI/Documents/CASL/SyntaxExamples-v0.99/ASF+SDF

The changes made since the last version (18 Dec 97) are as follows.

Datatype declarations:
     E.g. List ::= nil | cons(hd:?Elem; tl:?List);
          Pair ::= pair(left:Elem1; right:Elem2);
          Int  ::= 0 | sorts Neg, Pos

Operation and predicate declarations:
     These are now listed separately: ops ... preds ...

Predicate declarations:
     E.g. __<__ : Nat * Nat

Qualified symbols:
     E.g. (op __+__ : Nat*Nat->Nat)

Isomorphisms:
     E.g. sorts s = t = u

Existential equations:
     Input as TERM =e= TERM, displayed with the e over the =

Precedence in terms and mixfix notation:
     Annotations indicating varoius rules for omitting grouping
     parentheses will be provided (uniformly for all the CASL family
     of languages).

Structured specifications:
     The keyword `use' has been removed from unions.

Architectural specifications 
     Syntax has been added, following Note M-4; examples are pending.

Peter

----   --------------------------------------------
\  /  | Peter D. Mosses - mailto:pdmosses@brics.dk |
CoFI  | Common Framework Initiative  - Coordinator |
/  \  | WWW URL: http://www.brics.dk/Projects/CoFI |
----   --------------------------------------------

PS  A message with Subject: [CoFI] Language Design - Proposed Changes
    was sent to the same mailing list a short time ago, but may arrive
    later than this one, depending on the e-mail transport.  It
    provides an overview of the language design changes that have
    recently been proposed.