T A S K : Implement Class Dictionary semantics checker

There are three subtasks which form this project:
a)Checking that every alternative of a parameterized alternation class has to use all its formal parameters in the same order ...
b) Checking inheritance cycles ...
c) Checking that all alternatives are defined as either construction classes or alternation classes that will eventually be defined by construction classes ...

_________________________________________________________________________________________

S T R A T E G Y :

_________________________________________________________________________________________
a) The purpose of this traversal is to check the order of arguments in parametrized classes. Suppose we have the following:
A(S,T) : C(S,T) | D(S,T)
but
A(S,T) : C(S,T) | D(T,S)
is illigal
  • The implementation strategy is the follwing. We are going to traverse down to ParamClassName and read the parametes into java Vector. Then compare the order of Vector contents on left side of alternation statement with right one.
  • b) We are going to do depth first search to check inheritance cycles.

    ________________________________________________________________________________________

    H I S T O R Y :

    _______________________________________________________________________________________ Feb 20 part a
    Modified DemJava.cd to its simple version without behavior and visitors. Added Alternation Checking visitor called AltCheckVisitor and transportation visitor called ParamTransport. Feb 21 part a
    Created Varray.java file which initializes 2 java vectors and compares the size of 2 vectors and the order of elements in each. Feb 25