Community
Participate
Working Groups
The QVT 1.0 FTF added the following at the end of 8.4.4. "The alternative '==' and '!=' notations can only be used if the source file pre-declares the intention of using them by means of a directive placed before entering the library of the transformation definitions. The syntax of this directive should be a comment having the following form: -- directive: use-traditional-comparison-syntax, or // directive: use-traditional-comparison-sysntax. This declaration makes illegal the usage of the corresponding OCL-like syntax ('=' and '<>') within the compilation unit." Consequently: An ordinary QVTo source module may use "=" and "<>" but not "==" or "!=" A QVTo source annotated with the 'traditional' directive may use "==" and "!=" but not "=" or "<>". Eclipse QVTo appears to ignore the directive and allow "=", "<>", "!=" but not "==". Suggest implement the specification, thereby discouraging these confusing Java-isms. To avoid a backward compatibility problem, allow the wrong spellings with warnings. Implementation-wise, it makes sense to always parse all forms so that the resolution is in the semantics without requiring a mode-dependent lexer/parser.