New features in version 0.17 ============================ `README.new' (this) file has been renamed to `HISTORY'. GRP parser ---------- New PortDef rule has been inserted into the parser. Alternate version of this rule is: PortDef:= . This means that we can define ports in header section of the program part using type of the port (`INPORT', `OUTPORT', `INOUTPORT') only without definition of the port. If we use port definition, it can be simplier because the rule of TypeList has been changed. New rule is: TypeList:= . TypeList:= TypeList PortDef. (It is in header section of the program part.) This rule allows us to define any port without type definition because the list of data types of the port can be empty. Remember that you can omit these informations from the GRP file without any syntactical problem, but they are required for grp2c code generator. Support of graphical blocks is intruduced. `ProgParam' rule has been removed and some of the rules has been changed. Changed rules are: ProgItemType:= "SEQ". ProgItemType:= "CAI". ProgItemType:= "CAO". ProgItemType:= "CAIALT". ProgItemType:= "IFB". ProgItemType:= "IFE". ProgItemType:= "SWITCHB". ProgItemType:= "SWITCHE". ProgItemType:= "LOOPB". ProgItemType:= "LOOPE". ProgItemType:= "GRAPHIC". ProgItemType:= "DUMMYB". ProgItemType:= "DUMMYE". ParamsOfProgItem:= ConnList PortParamList ItemsListOfGraph. As you see, a new type of program item has been introduced: GRAPHIC. This block is a collection of other program items. It has an item collection (see README.data) which must be a complete program item chain with DUMMYB and DUMMYE items. Other change is that order of parameters of the block has been fixed. New rules have been used to describe these parameters: ConnList:= Connection. ConnList:= ConnList Connection. PortParamList:= . PortParamList:= PortParamList PortParam. ItemListOfGraph:= ProcPgroupList. Connection list must not be empty but list of ports can be. Last kind of the parameters are new. This parameter can be a complete (or empty, of course) list of program items. It means that items can be nested. Nesting levels are not restricted and items can be inserted into any kind of the items, but parser stops with error an message if it finds nested items in other type than GRAPHIC. Mar 4, 1996.