General Information
Tutorials
Reference Manuals
Libraries
Translation Tasks
Tools
Administration
|
LIDO - Reference ManualOutdated ConstructsThe following constructs are still supported to achieve compatibility with previous LIDO versions. Their use is strongly discouraged.
TerminalsIn previous versions of LIDO terminal symbols could have attributes, at most one synthesized and several inherited. They were associated explicitly by specifications of the form TERM Identifier: Sym: int;
Attributes of terminals could be used in attribute notations
or Identifier.Sym CONSTITUENT Identifier.SymIf the above constructs occur in a specification a new nonterminal symbol that has the specified attributes is introduced by LIGA, as well as a production that derives to the terminal.
Terminal symbols could be element of a Idents LISTOF IdentifierThis facility is NOT allowed anymore. It is indicated by an error message, and has to be transformed explicitly.
Keywords
The key word
The key word NONTERM Stmt: code: PTGNode; NONTERM Stmt COMPUTE ... END;
PragmasThe pragma notations are substituted by simpler notations: Calling a function the name of which is composed from a string and the rule name, e.g. LIGAPragma (RuleFct, "PTG", ...)is now achieved by RuleFct ("PTG", ...)See see Predefined Entities. A pattern for the sequence of right-hand side attributes, e.g LIGAPragma (RhsAttrs, Ptg)is now written RHS.PtgHence a combination of both features above, like SYMBOL Reproduce COMPUTE SYNT.Ptg = LIGAPragma (RuleFct, "PTG", LIGAPragma (RhsAttrs, Ptg)); END;is now written SYMBOL Reproduce COMPUTE SYNT.Ptg = RuleFct ("PTG", RHS.Ptg); END:See see Attributes. Computations were specified to be executed while the input is being read and the tree is being built using a pragma LIGAPragma (BottomUp, printf("early output\n"));Now the keyword BOTTOMUP is added to the computation:
printf("early output\n") BOTTOMUP;See see Computations.
|