Site Menu Project Specification Implementation Recommendations Reference Needs Updating Work in Progress Wastebasket Wiki Manual |
Non TerminalsEBNF.NonTerminals HistoryHide minor edits - Show changes to output 2015-10-09 18:57
by -
Changed line 1396 from:
ABS | LENGTH | EXISTS to:
ABS | LENGTH | EXISTS | SUBSET | READ | READNEW | WRITE | WRITEF | Changed line 1406 from:
( COUNT | VALUE ) bindingDifferentiator1? to:
( COUNT | VALUE | SEEK ) bindingDifferentiator1? 2015-10-09 18:54
by -
Changed line 599 from:
localAliases := to:
localAliases := privateAliases ; 2015-10-09 18:51
by -
Changed line 72 from:
!!!!!#3.2 to:
!!!!!#3.2 More Import/Re-Export Libraries \ Changed lines 543-545 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#privateImport]] !!!!!#31 Private Import \ %silver% [-[[SyntaxDiagrams.NonTerminals#privateImport|syntax diagram]]%%-] Changed lines 547-548 from:
to:
privateImport := IMPORT importLib ( ',' moreImportLibs | ALIAS privateAliases )? Changed lines 552-554 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#importLib]] !!!!!#31.1 Import Library \ %silver% [-[[SyntaxDiagrams.NonTerminals#importLib|syntax diagram]]%%-] Changed lines 556-561 from:
declaration := CONST ( Ident '=' constExpression ';' )+ | TYPE ( typeDeclaration ';' )+ | VAR ( variableDeclaration ';' )+ | procedureHeader ';' block Ident ';' to:
importLib := Ident ; @] [[#moreImportLibs]] !!!!!#31.2 More Import Libraries \ %silver% [-[[SyntaxDiagrams.NonTerminals#moreImportLibs|syntax diagram]]%%-] [@ moreImportLibs := identList ; @] [[#privateAliases]] !!!!!#31.3 Private Aliases \ %silver% [-[[SyntaxDiagrams.NonTerminals#privateAliases|syntax diagram]]%%-] [@ privateAliases := identList | '*' ; @] [[#block]] !!!!!#32 Block \ %silver% [-[[SyntaxDiagrams.NonTerminals#block|syntax diagram]]%%-] [@ block := declaration* ( BEGIN statementSequence )? END ; @] [[#declaration]] !!!!!#33 Declaration \ %silver% [-[[SyntaxDiagrams.NonTerminals#declaration|syntax diagram]]%%-] [@ declaration := CONST ( Ident '=' constExpression ';' )+ | TYPE ( typeDeclaration ';' )+ | VAR ( variableDeclaration ';' )+ | ALIAS localAliases FOR origin ';' procedureHeader ';' block Ident ';' ; @] [[#localAliases]] !!!!!#33.1 Local Aliases \ %silver% [-[[SyntaxDiagrams.NonTerminals#localAliases|syntax diagram]]%%-] [@ localAliases := identList | '*' ; @] [[#origin]] !!!!!#33.2 Origin \ %silver% [-[[SyntaxDiagrams.NonTerminals#origin|syntax diagram]]%%-] [@ origin := ( Ident '.' )+ '*' ; 2015-10-09 18:42
by -
Changed line 29 from:
( to:
( import ';' )* definition* Changed lines 52-54 from:
[[# !!!!!#3 Import %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#import]] !!!!!#3 Import \ %silver% [-[[SyntaxDiagrams.NonTerminals#import|syntax diagram]]%%-] Changed lines 56-57 from:
to:
import := IMPORT impexLib ( ',' moreImpexLibs | ALIAS unqualifiedAliases )? | libGenDirective Changed lines 62-64 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#impexLib]] !!!!!#3.1 Import/Re-Export Library \ %silver% [-[[SyntaxDiagrams.NonTerminals#impexLib|syntax diagram]]%%-] Changed lines 66-67 from:
to:
impexLib := Ident reExport? Changed lines 71-73 from:
[[# !!!!!#4 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#moreImpexLibs]] !!!!!#3.2 MOre Import/Re-Export Libraries \ %silver% [-[[SyntaxDiagrams.NonTerminals#moreImpexLibs|syntax diagram]]%%-] Changed lines 75-79 from:
template := Ident ; placeholder := Ident to:
moreImpexLibs := impexLib ( ',' impexLib )* ; Changed lines 80-82 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#reExport]] !!!!!#3.3 Re-Export Tag \ %silver% [-[[SyntaxDiagrams.NonTerminals#reExport|syntax diagram]]%%-] Changed lines 84-86 from:
to:
reExport := '+' ; Changed lines 87-89 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#unqualifiedAliases]] !!!!!#3.4 Unqualified Aliases \ %silver% [-[[SyntaxDiagrams.NonTerminals#unqualifiedAliases|syntax diagram]]%%-] Changed lines 91-95 from:
IMPORT ( identifiersToImport | importAll ) | IMPORT modulesToImport to:
unqualifiedAliases := identList ; Changed lines 94-96 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#libGenDirective]] !!!!!#4 Library Generation Directive \ %silver% [-[[SyntaxDiagrams.NonTerminals#libGenDirective|syntax diagram]]%%-] Changed lines 98-100 from:
to:
libGenDirective := GENLIB libIdent FROM template FOR templateParamList END ; Changed lines 103-105 from:
[[# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#libIdent]][[#template]][[#placeholder]] !!!!!#4.1 Library Identifier, Template, Placeholder \ %silver% [-[[SyntaxDiagrams.NonTerminals#libIdent|syntax diagram]]%%-] Changed lines 107-111 from:
to:
libIdent := Ident ; template := Ident ; placeholder := Ident ; Changed lines 114-116 from:
[[# %silver% to:
[[#replacement]] !!!!!#4.2 Replacement \ %silver% [-[[SyntaxDiagrams.NonTerminals#replacement|syntax diagram]]%%-] Changed lines 118-119 from:
to:
replacement := NumberLiteral | StringLiteral | ChevronText Deleted lines 120-121:
modulesToImport := identifiersToImport ; Changed lines 123-125 from:
[[# !!!!!#5 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#identList]] !!!!!#5 Identifier List \ %silver% [-[[SyntaxDiagrams.NonTerminals#identList|syntax diagram]]%%-] Changed lines 127-129 from:
to:
identList := Ident ( ',' Ident )* ; Changed lines 132-134 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#definition]] !!!!!#6 Definition \ %silver% [-[[SyntaxDiagrams.NonTerminals#definition|syntax diagram]]%%-] Changed lines 136-141 from:
to:
definition := CONST ( constDefinition ';' )+ | TYPE ( typeDefinition ';' )+ | VAR ( identList '=' typeIdent ';' )+ | procedureHeader ';' ; Changed lines 144-146 from:
[[# !!!!!#6 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#typeIdent]] !!!!!#6.1 Type Identifier \ %silver% [-[[SyntaxDiagrams.NonTerminals#typeIdent|syntax diagram]]%%-] Changed lines 148-150 from:
to:
typeIdent := qualident ; Changed lines 151-153 from:
[[# !!!!!#7 Definition \ %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#constDefinition]] !!!!!#7 Constant Definition \ %silver% [-[[SyntaxDiagrams.NonTerminals#constDefinition|syntax diagram]]%%-] Changed lines 155-159 from:
VAR ( identList '=' typeIdent ';' )+ | procedureHeader ';' to:
constDefinition := ( '[' propertyToBindTo ']' | restrictedExport )? Ident '=' constExpression Changed lines 161-163 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#constExpression]] !!!!!#7.1 Constant Expression \ %silver% [-[[SyntaxDiagrams.NonTerminals#constExpression|syntax diagram]]%%-] Changed lines 165-168 from:
Ident '=' constExpression to:
constExpression := expression ; Changed lines 168-170 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#restrictedExport]] !!!!!#7.2 Restricted Export \ %silver% [-[[SyntaxDiagrams.NonTerminals#restrictedExport|syntax diagram]]%%-] Changed line 172 from:
to:
restrictedExport := '*' ; Changed lines 175-177 from:
[[# !!!!!#8 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#typeDefinition]] !!!!!#8 Type Definition \ %silver% [-[[SyntaxDiagrams.NonTerminals#typeDefinition|syntax diagram]]%%-] Changed lines 179-181 from:
to:
typeDefinition := restrictedExport? Ident '=' ( type | OPAQUE ) ; Changed lines 184-186 from:
[[# !!!!!#9 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#qualident]] !!!!!#9 Qualified Identifier \ %silver% [-[[SyntaxDiagrams.NonTerminals#qualident|syntax diagram]]%%-] Changed lines 188-189 from:
to:
qualident := Ident ( '.' Ident )* Changed lines 193-195 from:
[[# !!!!!#10 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#type]] !!!!!#10 Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#type|syntax diagram]]%%-] Changed lines 197-199 from:
to:
type := derivedType | equivType | subrangeType | enumType | setType | arrayType | recordType | pointerType | coroutineType | procedureType ; Changed lines 203-205 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#derivedType]] !!!!!#10.1 Derived Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#derivedType|syntax diagram]]%%-] Changed lines 207-210 from:
arrayType | recordType | pointerType | coroutineType | procedureType to:
derivedType := typeIdent ; Changed lines 210-212 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#equivType]] !!!!!#10.2 Equivalence Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#equivType|syntax diagram]]%%-] Changed lines 214-216 from:
to:
equivType := ALIAS OF typeIdent | CONST dynamicTypeIdent ; Changed lines 219-221 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#dynamicTypeIdent]] !!!!!#10.3 Dynamic Type Identifier \ %silver% [-[[SyntaxDiagrams.NonTerminals#dynamicTypeIdent|syntax diagram]]%%-] Changed lines 223-225 from:
to:
dynamicTypeIdent := typeIdent ; Changed lines 226-228 from:
[[# !!!!!#11 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#subrangeType]] !!!!!#11 Subrange Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#subrangeType|syntax diagram]]%%-] Changed lines 230-232 from:
to:
subrangeType := range OF ordinalOrScalarType ; Changed lines 235-237 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#range]] !!!!!#11.1 Range \ %silver% [-[[SyntaxDiagrams.NonTerminals#range|syntax diagram]]%%-] Changed lines 239-240 from:
to:
range := '[' greaterThan? constExpression '..' lessThan? constExpression ']' Changed lines 244-246 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#greaterThan]] !!!!!#11.2 Greater Than \ %silver% [-[[SyntaxDiagrams.NonTerminals#greaterThan|syntax diagram]]%%-] Changed lines 248-250 from:
to:
greaterThan := '>' ; Changed lines 251-253 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#lessThan]] !!!!!#11.3 Less Than \ %silver% [-[[SyntaxDiagrams.NonTerminals#lessThan|syntax diagram]]%%-] Changed line 255 from:
to:
lessThan := '<' ; Changed lines 258-260 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#ordinalOrScalarType]] !!!!!#11.4 Ordinal Or Scalar Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#ordinalOrScalarType|syntax diagram]]%%-] Changed line 262 from:
to:
ordinalOrScalarType := typeIdent ; Changed lines 265-267 from:
[[# !!!!!#12 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#enumType]] !!!!!#12 Enumeration Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#enumType|syntax diagram]]%%-] Changed lines 269-271 from:
to:
enumType := '(' ( '+' enumTypeToExtend )? identList ')' ; Changed lines 274-276 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#enumTypeToExtend]] !!!!!#12.1 Enumeration Type To Extend \ %silver% [-[[SyntaxDiagrams.NonTerminals#enumTypeToExtend|syntax diagram]]%%-] Changed lines 278-280 from:
to:
enumTypeToExtend := typeIdent ; Changed lines 281-283 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#enumTypeIdent]] !!!!!#12.2 Enumeration Type Identifier \ %silver% [-[[SyntaxDiagrams.NonTerminals#enumTypeIdent|syntax diagram]]%%-] Changed line 285 from:
to:
enumTypeIdent := typeIdent ; Changed line 289 from:
!!!!!# to:
!!!!!#13 Set Type \ Changed line 298 from:
!!!!!# to:
!!!!!#14 Array Type \ Changed line 307 from:
!!!!!# to:
!!!!!#14.1 Value Count \ Changed line 314 from:
!!!!!# to:
!!!!!#15 Record Type \ Changed line 323 from:
!!!!!# to:
!!!!!#15.1 Field List \ Changed line 332 from:
!!!!!# to:
!!!!!#15.2 Record Type To Extend \ Changed line 339 from:
!!!!!# to:
!!!!!#16 Pointer Type \ Changed line 348 from:
!!!!!# to:
!!!!!#17 Coroutine Type \ Changed line 357 from:
!!!!!# to:
!!!!!#17.1 Associated Procedure Type \ Changed line 364 from:
!!!!!# to:
!!!!!#18 Procedure Type \ Changed line 373 from:
!!!!!# to:
!!!!!#18.1 Formal Type \ Changed line 382 from:
!!!!!# to:
!!!!!#19 Simple Formal Type \ Changed line 391 from:
!!!!!# to:
!!!!!#19.1 Casting Formal Type \ Changed line 400 from:
!!!!!# to:
!!!!!#19.2 Address Type Identifier \ Changed line 409 from:
!!!!!# to:
!!!!!#20 Attributed Formal Type \ Changed line 418 from:
!!!!!# to:
!!!!!#21 Simple Variadic Formal Type \ Changed line 427 from:
!!!!!# to:
!!!!!#21.1 Required Number Of Arguments \ Changed line 436 from:
!!!!!# to:
!!!!!#21.2 Argument List Terminator \ Changed line 445 from:
!!!!!# to:
!!!!!#21.3 Constant Qualified Identifier \ Changed line 452 from:
!!!!!# to:
!!!!!#22 Variadic Formal Type \ Changed line 463 from:
!!!!!# to:
!!!!!#23 Non-Variadic Formal Type \ Changed line 472 from:
!!!!!# to:
!!!!!#24 Procedure Header \ Changed line 482 from:
!!!!!# to:
!!!!!#25 Procedure Signature \ Changed line 491 from:
!!!!!# to:
!!!!!#26 Formal Parameters \ Changed line 501 from:
!!!!!# to:
!!!!!#27 Attributed Formal Parameters \ Changed line 511 from:
!!!!!# to:
!!!!!#28 Variadic Formal Parameters \ Changed line 522 from:
!!!!!# to:
!!!!!#29 Non-Variadic Formal Parameters \ Changed line 534 from:
!!!!!# to:
!!!!!#30 Implementation Or Program Module \ Changed line 539 from:
( to:
( privateImport ';' )* block moduleIdent '.' 2015-10-04 05:47
by -
Changed line 29 from:
(importList ';')* definition* to:
( importList ';' )* definition* 2015-10-04 05:46
by -
Changed line 156 from:
VAR ( to:
VAR ( identList '=' typeIdent ';' )+ | Changed lines 194-196 from:
[[# !!!!!#10 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#identList]] !!!!!#10 Identifier List \ %silver% [-[[SyntaxDiagrams.NonTerminals#identList|syntax diagram]]%%-] Changed lines 198-200 from:
; to:
identList := Ident ( ',' Ident )* ; Changed lines 203-205 from:
[[# !!!!!#11 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#type]] !!!!!#11 Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#type|syntax diagram]]%%-] Changed lines 207-209 from:
to:
type := derivedType | equivType | subrangeType | enumType | setType | arrayType | recordType | pointerType | coroutineType | procedureType ; Changed lines 213-215 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#derivedType]] !!!!!#11.1 Derived Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#derivedType|syntax diagram]]%%-] Changed lines 217-219 from:
to:
derivedType := typeIdent ; Changed lines 220-222 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#equivType]] !!!!!#11.2 Equivalence Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#equivType|syntax diagram]]%%-] Changed lines 224-226 from:
to:
equivType := ALIAS OF typeIdent | CONST dynamicTypeIdent ; Changed lines 229-231 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#dynamicTypeIdent]] !!!!!#11.3 Dynamic Type Identifier \ %silver% [-[[SyntaxDiagrams.NonTerminals#dynamicTypeIdent|syntax diagram]]%%-] Changed line 233 from:
to:
dynamicTypeIdent := typeIdent ; Changed lines 236-238 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#subrangeType]] !!!!!#12 Subrange Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#subrangeType|syntax diagram]]%%-] Changed lines 240-242 from:
arrayType | recordType | pointerType | coroutineType | procedureType to:
subrangeType := range OF ordinalOrScalarType Changed lines 245-247 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#range]] !!!!!#12.1 Range \ %silver% [-[[SyntaxDiagrams.NonTerminals#range|syntax diagram]]%%-] Changed lines 249-251 from:
to:
range := '[' greaterThan? constExpression '..' lessThan? constExpression ']' ; Changed lines 254-256 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#greaterThan]] !!!!!#12.2 Greater Than \ %silver% [-[[SyntaxDiagrams.NonTerminals#greaterThan|syntax diagram]]%%-] Changed lines 258-260 from:
to:
greaterThan := '>' ; Changed lines 261-263 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#lessThan]] !!!!!#12.3 Less Than \ %silver% [-[[SyntaxDiagrams.NonTerminals#lessThan|syntax diagram]]%%-] Changed lines 265-267 from:
to:
lessThan := '<' ; Changed lines 268-269 from:
[[# to:
[[#ordinalOrScalarType]] !!!!!#12.4 Ordinal Or Scalar Type \ Deleted lines 271-272:
Changed line 276 from:
!!!!!# to:
!!!!!#13 Enumeration Type \ Changed line 285 from:
!!!!!# to:
!!!!!#13.1 Enumeration Type To Extend \ Changed line 292 from:
!!!!!# to:
!!!!!#14 Set Type \ Changed line 301 from:
!!!!!# to:
!!!!!#15 Array Type \ Changed line 310 from:
!!!!!# to:
!!!!!#15.1 Value Count \ Changed line 317 from:
!!!!!# to:
!!!!!#16 Record Type \ Changed line 326 from:
!!!!!# to:
!!!!!#16.1 Field List \ Changed line 335 from:
!!!!!# to:
!!!!!#16.2 Record Type To Extend \ Changed line 342 from:
!!!!!# to:
!!!!!#17 Pointer Type \ Changed line 351 from:
!!!!!# to:
!!!!!#18 Coroutine Type \ Changed line 360 from:
!!!!!# to:
!!!!!#18.1 Associated Procedure Type \ Changed line 367 from:
!!!!!# to:
!!!!!#19 Procedure Type \ Changed line 376 from:
!!!!!# to:
!!!!!#19.1 Formal Type \ Changed line 385 from:
!!!!!# to:
!!!!!#20 Simple Formal Type \ Changed line 394 from:
!!!!!# to:
!!!!!#20.1 Casting Formal Type \ Changed line 403 from:
!!!!!# to:
!!!!!#20.2 Address Type Identifier \ Changed line 412 from:
!!!!!# to:
!!!!!#21 Attributed Formal Type \ Changed line 421 from:
!!!!!# to:
!!!!!#22 Simple Variadic Formal Type \ Changed line 430 from:
!!!!!# to:
!!!!!#22.1 Required Number Of Arguments \ Changed line 439 from:
!!!!!# to:
!!!!!#22.2 Argument List Terminator \ Changed line 448 from:
!!!!!# to:
!!!!!#22.3 Constant Qualified Identifier \ Changed line 455 from:
!!!!!# to:
!!!!!#23 Variadic Formal Type \ Changed line 466 from:
!!!!!# to:
!!!!!#24 Non-Variadic Formal Type \ Changed line 475 from:
!!!!!# to:
!!!!!#25 Procedure Header \ Changed line 485 from:
!!!!!# to:
!!!!!#26 Procedure Signature \ Changed line 494 from:
!!!!!# to:
!!!!!#27 Formal Parameters \ Changed line 504 from:
!!!!!# to:
!!!!!#28 Attributed Formal Parameters \ Changed line 514 from:
!!!!!# to:
!!!!!#29 Variadic Formal Parameters \ Changed line 525 from:
!!!!!# to:
!!!!!#30 Non-Variadic Formal Parameters \ Changed line 537 from:
!!!!!# to:
!!!!!#31 Implementation Or Program Module \ Changed line 547 from:
!!!!!# to:
!!!!!#32 Block \ Changed line 556 from:
!!!!!# to:
!!!!!#33 Declaration \ Changed line 568 from:
!!!!!# to:
!!!!!#34 Type Declaration \ Changed line 577 from:
!!!!!# to:
!!!!!#34.1 Indeterminate Record Type \ Changed line 586 from:
!!!!!# to:
!!!!!#34.2 Indeterminate Field \ Changed line 595 from:
!!!!!# to:
!!!!!#34.3 Discriminant Field Identifier \ Added lines 599-607:
@] [[#variableDeclaration]] !!!!!#35 Variable Declaration \ %silver% [-[[SyntaxDiagrams.NonTerminals#variableDeclaration|syntax diagram]]%%-] [@ variableDeclaration := identList ':' ( ( ARRAY valueCount OF )? typeIdent | subrangeType ) ; 2015-10-04 05:34
by -
Changed lines 937-938 from:
NumberLiteral | StringLiteral | structuredValue | designatorOrFuncCall | '(' expression ')' to:
NumberLiteral | StringLiteral | structuredValue | designatorOrFuncCall | '(' expression ')' Changed line 947 from:
designator to:
designator ( '(' expressionList? ')' )? 2015-10-04 05:33
by -
Changed line 937 from:
NumberLiteral | StringLiteral | structuredValue | to:
NumberLiteral | StringLiteral | structuredValue | designatorOrFuncCall | '(' expression ')' Changed lines 941-943 from:
[[# !!!!!#54.1 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#designatorOrFuncCall]] !!!!!#54.1 Designator Or Function Call \ %silver% [-[[SyntaxDiagrams.NonTerminals#designatorOrFuncCall|syntax diagram]]%%-] Changed line 945 from:
to:
designatorOrFuncCall := 2015-10-04 05:20
by -
Changed line 862 from:
to:
term ( operL2 term )* | '-' simpleFactor 2015-09-28 07:22
by -
Changed lines 257-258 from:
ALIAS OF typeIdent | to:
ALIAS OF typeIdent | CONST dynamicTypeIdent 2015-09-28 07:21
by -
Changed lines 240-241 from:
recordType | pointerType | coroutineType | procedureType to:
derivedType | equivType | subrangeType | enumType | setType | arrayType | recordType | pointerType | coroutineType | procedureType Changed lines 245-247 from:
[[# !!!!!#13.1 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#derivedType]] !!!!!#13.1 Derived Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#derivedType|syntax diagram]]%%-] Changed lines 249-253 from:
CONST dynamicTypeIdent | range OF ordinalOrScalarType to:
derivedType := typeIdent ; Changed lines 252-254 from:
[[# %silver% to:
[[#equivType]] !!!!!#13.2 Equivalence Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#equivType|syntax diagram]]%%-] Changed lines 256-258 from:
ordinalOrScalarType := to:
equivType := ALIAS OF typeIdent | CONST dynamicTypeIdent ; Changed lines 262-264 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#subrangeType]] !!!!!#13.3 Subrange Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#subrangeType|syntax diagram]]%%-] Changed lines 266-267 from:
to:
subrangeType := range OF ordinalOrScalarType Changed lines 271-273 from:
[[# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#dynamicTypeIdent]][[#ordinalOrScalarType]] !!!!!#13.4 Dynamic Type Identifier, Ordinal Or Scalar Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#ordinalOrScalarType|syntax diagram]]%%-] Changed lines 275-277 from:
to:
dynamicTypeIdent := typeIdent ; ordinalOrScalarType := typeIdent ; Changed lines 280-282 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#enumType]] !!!!!#14 Enumeration Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#enumType|syntax diagram]]%%-] Changed lines 284-285 from:
to:
enumType := '(' ( '+' enumTypeToExtend )? identList ')' Changed lines 289-291 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#enumTypeToExtend]] !!!!!#14.1 Enumeration Type To Extend \ %silver% [-[[SyntaxDiagrams.NonTerminals#enumTypeToExtend|syntax diagram]]%%-] Changed lines 293-295 from:
to:
enumTypeToExtend := typeIdent ; Changed lines 296-298 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#setType]] !!!!!#15 Set Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#setType|syntax diagram]]%%-] Changed lines 300-302 from:
to:
setType := SET OF enumTypeIdent ; Changed lines 305-307 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#arrayType]] !!!!!#16 Array Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#arrayType|syntax diagram]]%%-] Changed lines 309-310 from:
to:
arrayType := ARRAY lessThan? valueCount ( ',' valueCount )* OF typeIdent Changed lines 314-316 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#valueCount]] !!!!!#16.1 Value Count \ %silver% [-[[SyntaxDiagrams.NonTerminals#valueCount|syntax diagram]]%%-] Changed lines 318-320 from:
to:
valueCount := constExpression ; Changed lines 321-323 from:
[[# !!!!!#17 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#recordType]] !!!!!#17 Record Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#recordType|syntax diagram]]%%-] Changed lines 325-327 from:
to:
recordType := RECORD ( '(' recTypeToExtend ')' )? fieldList ( ';' fieldList )* ) ; Changed lines 330-332 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#fieldList]] !!!!!#17.1 Field List \ %silver% [-[[SyntaxDiagrams.NonTerminals#fieldList|syntax diagram]]%%-] Changed lines 334-335 from:
to:
fieldList : restrictedExport? variableDeclaration ( '=' constExpression )? Changed lines 339-341 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#recTypeToExtend]] !!!!!#17.2 Record Type To Extend \ %silver% [-[[SyntaxDiagrams.NonTerminals#recTypeToExtend|syntax diagram]]%%-] Changed lines 343-345 from:
to:
recTypeToExtend := typeIdent ; Changed lines 346-348 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#pointerType]] !!!!!#18 Pointer Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#pointerType|syntax diagram]]%%-] Changed lines 350-352 from:
to:
pointerType := POINTER TO CONST? typeIdent ; Changed lines 355-357 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#coroutineType]] !!!!!#19 Coroutine Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#coroutineType|syntax diagram]]%%-] Changed lines 359-360 from:
to:
coroutineType := COROUTINE '(' assocProcType ')' Changed lines 364-366 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#assocProcType]] !!!!!#19.1 Associated Procedure Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#assocProcType|syntax diagram]]%%-] Changed lines 368-370 from:
simpleFormalType | attributedFormalType | variadicFormalType to:
assocProcType : typeIdent ; Changed lines 371-373 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#procedureType]] !!!!!#20 Procedure Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#procedureType|syntax diagram]]%%-] Changed lines 375-376 from:
to:
procedureType := PROCEDURE ( formalType ( ',' formalType )* )? ( ':' returnedType )? Changed lines 380-382 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#formalType]] !!!!!#20.1 Formal Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#formalType|syntax diagram]]%%-] Changed lines 384-385 from:
to:
formalType := simpleFormalType | attributedFormalType | variadicFormalType Changed lines 389-391 from:
[[# !!!!!#21 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#simpleFormalType]] !!!!!#21 Simple Formal Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#simpleFormalType|syntax diagram]]%%-] Changed lines 393-394 from:
( to:
simpleFormalType := ( ARRAY OF )? typeIdent | castingFormalType Changed lines 398-400 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#castingFormalType]] !!!!!#21.1 Casting Formal Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#castingFormalType|syntax diagram]]%%-] Changed lines 402-403 from:
to:
castingFormalType := CAST ( ARRAY OF OCTET | addressTypeIdent ) Changed lines 407-409 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#addressTypeIdent]] !!!!!#21.2 Address Type Identifier \ %silver% [-[[SyntaxDiagrams.NonTerminals#addressTypeIdent|syntax diagram]]%%-] Changed lines 411-412 from:
to:
addressTypeIdent := ( UNSAFE '.' )? ADDRESS Changed lines 416-418 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#attributedFormalType]] !!!!!#22 Attributed Formal Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#attributedFormalType|syntax diagram]]%%-] Changed lines 420-421 from:
to:
attributedFormalType := ( CONST | NEW | VAR ) ( simpleFormalType | simpleVariadicFormalType ) Changed lines 425-427 from:
[[# !!!!!#23 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#simpleVariadicFormalType]] !!!!!#23 Simple Variadic Formal Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#simpleVariadicFormalType|syntax diagram]]%%-] Changed lines 429-430 from:
to:
simpleVariadicFormalType := ARGLIST reqNumOfArgs? OF simpleFormalType terminator? Changed lines 434-436 from:
[[# !!!!!#23. %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#reqNumOfArgs]] !!!!!#23.1 Required Number Of Arguments \ %silver% [-[[SyntaxDiagrams.NonTerminals#reqNumOfArgs|syntax diagram]]%%-] Changed lines 438-440 from:
to:
reqNumOfArgs := greaterThan? constExpression ; Changed lines 443-445 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#terminator]] !!!!!#23.2 Argument List Terminator \ %silver% [-[[SyntaxDiagrams.NonTerminals#terminator|syntax diagram]]%%-] Changed lines 447-450 from:
( '{' nonVariadicFormalType ( ';' nonVariadicFormalType )* '}' | simpleFormalType ) terminator? to:
terminator := '|' constQualident Changed lines 452-454 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#constQualident]] !!!!!#23.3 Constant Qualified Identifier \ %silver% [-[[SyntaxDiagrams.NonTerminals#constQualident|syntax diagram]]%%-] Changed lines 456-458 from:
to:
constQualident := qualident ; Changed lines 459-461 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#variadicFormalType]] !!!!!#24 Variadic Formal Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#variadicFormalType|syntax diagram]]%%-] Changed lines 463-465 from:
to:
variadicFormalType := ARGLIST reqNumOfArgs? OF ( '{' nonVariadicFormalType ( ';' nonVariadicFormalType )* '}' | simpleFormalType ) terminator? Changed lines 470-472 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#nonVariadicFormalType]] !!!!!#25 Non-Variadic Formal Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#nonVariadicFormalType|syntax diagram]]%%-] Changed lines 474-475 from:
to:
nonVariadicFormalType := ( CONST | NEW | VAR )? simpleFormalType Changed lines 479-481 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#procedureHeader]] !!!!!#26 Procedure Header \ %silver% [-[[SyntaxDiagrams.NonTerminals#procedureHeader|syntax diagram]]%%-] Changed lines 483-485 from:
to:
procedureHeader := PROCEDURE ( '[' ( entityToBindTo | COROUTINE ) ']' | restrictedExport )? procedureSignature Changed lines 489-491 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#procedureSignature]] !!!!!#27 Procedure Signature \ %silver% [-[[SyntaxDiagrams.NonTerminals#procedureSignature|syntax diagram]]%%-] Changed lines 493-495 from:
to:
procedureSignature := Ident ( '(' formalParams ( ';' formalParams )* ')' )? ( ':' returnedType )? Changed lines 498-500 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#formalParams]] !!!!!#28 Formal Parameters \ %silver% [-[[SyntaxDiagrams.NonTerminals#formalParams|syntax diagram]]%%-] Changed lines 502-505 from:
simpleFormalType ) terminator? to:
formalParams := identList ':' ( simpleFormalType | variadicFormalParams ) | attributedFormalParams Changed lines 508-510 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#attributedFormalParams]] !!!!!#29 Attributed Formal Parameters \ %silver% [-[[SyntaxDiagrams.NonTerminals#attributedFormalParams|syntax diagram]]%%-] Changed lines 512-513 from:
( CONST | NEW | VAR ) to:
attributedFormalParams := ( CONST | NEW | VAR ) identList ':' ( simpleFormalType | simpleVariadicFormalType ) Changed lines 518-523 from:
[[# !!!! !!!!!#32 Implementation Or Program Module \ %silver% [-[[SyntaxDiagrams.NonTerminals#implOrPrgmModule to:
[[#variadicFormalParams]] !!!!!#30 Variadic Formal Parameters \ %silver% [-[[SyntaxDiagrams.NonTerminals#variadicFormalParams|syntax diagram]]%%-] Changed lines 522-524 from:
to:
variadicFormalParams := ARGLIST reqNumOfArgs? OF ( ( '{' nonVariadicFormalParams ( ';' nonVariadicFormalParams )* '}') | simpleFormalType ) terminator? Changed lines 529-531 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#nonVariadicFormalParams]] !!!!!#31 Non-Variadic Formal Parameters \ %silver% [-[[SyntaxDiagrams.NonTerminals#nonVariadicFormalParams|syntax diagram]]%%-] Changed lines 533-534 from:
to:
nonVariadicFormalParams := ( CONST | NEW | VAR )? identList ':' simpleFormalType Changed lines 538-540 from:
[[# !!!! %silver% to:
[[#ImplAndPrgmModuleSyntax]] !!!!Implementation And Program Module Syntax [[#implOrPrgmModule]] !!!!!#32 Implementation Or Program Module \ %silver% [-[[SyntaxDiagrams.NonTerminals#implOrPrgmModule|syntax diagram]]%%-] Changed lines 545-549 from:
TYPE ( typeDeclaration VAR ( variableDeclaration ';' )+ | procedureHeader ';' block Ident '; to:
implOrPrgmModule := IMPLEMENTATION? MODULE moduleIdent ';' ( importList ';' )* block moduleIdent '.' Changed lines 551-553 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#block]] !!!!!#33 Block \ %silver% [-[[SyntaxDiagrams.NonTerminals#block|syntax diagram]]%%-] Changed lines 555-556 from:
to:
block := declaration* ( BEGIN statementSequence )? END Changed lines 560-562 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#declaration]] !!!!!#34 Declaration \ %silver% [-[[SyntaxDiagrams.NonTerminals#declaration|syntax diagram]]%%-] Changed lines 564-565 from:
to:
declaration := CONST ( Ident '=' constExpression ';' )+ | TYPE ( typeDeclaration ';' )+ | VAR ( variableDeclaration ';' )+ | procedureHeader ';' block Ident ';' Changed lines 572-574 from:
[[# !!!!!#35 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#typeDeclaration]] !!!!!#35 Type Declaration \ %silver% [-[[SyntaxDiagrams.NonTerminals#typeDeclaration|syntax diagram]]%%-] Changed lines 576-577 from:
to:
typeDeclaration := Ident '=' ( type | indeterminateRecType ) Changed lines 581-583 from:
[[# !!!!!#35. %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#indeterminateRecType]] !!!!!#35.1 Indeterminate Record Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#indeterminateRecType|syntax diagram]]%%-] Changed lines 585-587 from:
to:
indeterminateRecType := '~' RECORD ( variableDeclaration ';' )+ indeterminateField END ; Changed lines 590-592 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#indeterminateField]] !!!!!#35.2 Indeterminate Field \ %silver% [-[[SyntaxDiagrams.NonTerminals#indeterminateField|syntax diagram]]%%-] Changed lines 594-595 from:
to:
indeterminateRecType := '~' Ident ':' ARRAY '~' discriminantFieldIdent OF typeIdent END Changed lines 599-601 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#discriminantFieldIdent]] !!!!!#35.3 Discriminant Field Identifier \ %silver% [-[[SyntaxDiagrams.NonTerminals#discriminantFieldIdent|syntax diagram]]%%-] Changed lines 603-606 from:
loopStatement | whileStatement | repeatStatement | forStatement | EXIT to:
discriminantFieldIdent := Ident ; Changed lines 606-608 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#statementSequence]] !!!!!#36 Statement Sequence \ %silver% [-[[SyntaxDiagrams.NonTerminals#statementSequence|syntax diagram]]%%-] Changed lines 610-613 from:
RETAIN designator | RELEASE designator to:
statementSequence := statement ( ';' statement )* Changed lines 615-617 from:
[[# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#statement]] !!!!!#37 Statement \ %silver% [-[[SyntaxDiagrams.NonTerminals#statement|syntax diagram]]%%-] Changed lines 619-621 from:
initValue := expression to:
statement := memMgtOperation | updateOrProcCall | ifStatement | caseStatement | loopStatement | whileStatement | repeatStatement | forStatement | EXIT ; Changed lines 625-627 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#memMgtOperation]] !!!!!#38 Memory Management Operation \ %silver% [-[[SyntaxDiagrams.NonTerminals#memMgtOperation|syntax diagram]]%%-] Changed lines 629-631 from:
designator ( to:
memMgtOperation := NEW designator ( OF initSize | := initValue )? | RETAIN designator | RELEASE designator Changed lines 636-638 from:
[[# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#initSize]][[#initValue]] !!!!!#38.1 Initialisation Size, Initialisation Value \ %silver% [-[[SyntaxDiagrams.NonTerminals#initSize|syntax diagram]]%%-] Changed lines 640-642 from:
to:
initSize := expression ; initValue := expression ; Changed lines 645-647 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#updateOrProcCall]] !!!!!#39 Update Or Procedure Call \ %silver% [-[[SyntaxDiagrams.NonTerminals#updateOrProcCall|syntax diagram]]%%-] Changed lines 649-650 from:
to:
updateOrProcCall := designator ( incOrDecSuffix | ':=' expression | '(' expressionList ')' )? | COPY designator ':=' expression Changed lines 655-657 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#incOrDecSuffix]] !!!!!#39.1 Increment Or Decrement Suffix \ %silver% [-[[SyntaxDiagrams.NonTerminals#incOrDecSuffix|syntax diagram]]%%-] Changed lines 659-663 from:
( ELSIF boolExpression THEN statementSequence )? ( ELSE statementSequence )? END to:
incOrDecSuffix := '++' | '--' Changed lines 664-666 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#returnStatement]] !!!!!#40 Return Or Yield Statement \ %silver% [-[[SyntaxDiagrams.NonTerminals#returnStatement|syntax diagram]]%%-] Changed lines 668-670 from:
to:
returnStatement := ( RETURN | YIELD ) expression? ; Changed lines 673-675 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#ifStatement]] !!!!!#41 IF Statement \ %silver% [-[[SyntaxDiagrams.NonTerminals#ifStatement|syntax diagram]]%%-] Changed lines 677-678 from:
to:
ifStatement := IF boolExpression THEN statementSequence ( ELSIF boolExpression THEN statementSequence )? ( ELSE statementSequence )? END Changed lines 685-687 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#boolExpression]] !!!!!#41.1 Boolean Expression \ %silver% [-[[SyntaxDiagrams.NonTerminals#boolExpression|syntax diagram]]%%-] Changed lines 689-691 from:
to:
boolExpression := expression ; Changed lines 692-694 from:
[[# !!!!!#42 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#caseStatement]] !!!!!#42 CASE Statement \ %silver% [-[[SyntaxDiagrams.NonTerminals#caseStatement|syntax diagram]]%%-] Changed lines 696-697 from:
to:
caseStatement := CASE expression OF ( '|' case )+ ( ELSE statementSequence )? END Changed lines 701-703 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#case]] !!!!!#42.1 Case \ %silver% [-[[SyntaxDiagrams.NonTerminals#case|syntax diagram]]%%-] Changed lines 705-706 from:
to:
case := caseLabels ( ',' caseLabels )* ':' statementSequence Changed lines 710-712 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#caseLabels]] !!!!!#42.2 Case Labels \ %silver% [-[[SyntaxDiagrams.NonTerminals#caseLabels|syntax diagram]]%%-] Changed lines 714-715 from:
to:
caseLabels := constExpression ( '..' constExpression )? Changed lines 719-721 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#loopStatement]] !!!!!#43 LOOP Statement \ %silver% [-[[SyntaxDiagrams.NonTerminals#loopStatement|syntax diagram]]%%-] Changed lines 723-724 from:
to:
loopStatement := LOOP statementSequence END Changed lines 728-730 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#whileStatement]] !!!!!#44 WHILE Statement \ %silver% [-[[SyntaxDiagrams.NonTerminals#whileStatement|syntax diagram]]%%-] Changed lines 732-733 from:
to:
whileStatement := WHILE boolExpression DO statementSequence END Changed lines 737-739 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#repeatStatement]] !!!!!#45 REPEAT Statement \ %silver% [-[[SyntaxDiagrams.NonTerminals#repeatStatement|syntax diagram]]%%-] Changed lines 741-743 from:
VALUE value ascOrDesc? to:
repeatStatement := REPEAT statementSequence UNTIL boolExpression Changed lines 746-748 from:
[[# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#forStatement]] !!!!!#46 FOR Statement \ %silver% [-[[SyntaxDiagrams.NonTerminals#forStatement|syntax diagram]]%%-] Changed lines 750-752 from:
value := Ident to:
forStatement := FOR forLoopVariants IN iterableExpr DO statementSequence END ; Changed lines 755-757 from:
[[# !!!!!#46. %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#forLoopVariants]] !!!!!#46.1 FOR Loop Variants \ %silver% [-[[SyntaxDiagrams.NonTerminals#forLoopVariants|syntax diagram]]%%-] Changed lines 759-760 from:
to:
forLoopVariants := accessor ascOrDesc? ( ',' value )? | VALUE value ascOrDesc? ; @] [[#accessor]][[#value]] !!!!!#46.2 Accessor, Value \ %silver% [-[[SyntaxDiagrams.NonTerminals#accessor|syntax diagram]]%%-] [@ accessor := Ident ; value := Ident ; @] [[#iterableExpr]] !!!!!#46.3 Iterable Expression \ %silver% [-[[SyntaxDiagrams.NonTerminals#iterableExpr|syntax diagram]]%%-] [@ iterableExpr := designator | '[' expression '..' expression ']' OF ordinalType 2015-09-28 03:31
by -
Changed line 257 from:
!!!!!#13.2 to:
!!!!!#13.2 Dynamic Type Identifier, Ordinal Or Scalar Type \ 2015-09-28 03:30
by -
Changed line 249 from:
to:
subType := Changed line 256 from:
[[# to:
[[#dynamicTypeIdent]][[#ordinalOrScalarType]] 2015-09-28 03:29
by -
Changed line 240 from:
typeIdent | to:
typeIdent | subType | enumType | setType | arrayType | Changed lines 245-247 from:
[[# !!!!!#13.1 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#subType]] !!!!!#13.1 Sub-Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#subType|syntax diagram]]%%-] Changed lines 251-252 from:
to:
CONST dynamicTypeIdent | range OF ordinalOrScalarType Added lines 260-261:
dynamicTypeIdent := typeIdent ; Deleted lines 262-263:
dynamicTypeIdent := typeIdent ; 2015-09-27 15:50
by -
Changed lines 606-607 from:
loopStatement | whileStatement | repeatStatement | forStatement ( RETURN | YIELD ) expression? to:
loopStatement | whileStatement | repeatStatement | forStatement | EXIT Changed lines 649-651 from:
[[# !!!!!#40 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#returnStatement]] !!!!!#40 Return Or Yield Statement \ %silver% [-[[SyntaxDiagrams.NonTerminals#returnStatement|syntax diagram]]%%-] Changed lines 653-657 from:
( ELSE statementSequence )? END to:
returnStatement := ( RETURN | YIELD ) expression? Changed lines 658-660 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#ifStatement]] !!!!!#41 IF Statement \ %silver% [-[[SyntaxDiagrams.NonTerminals#ifStatement|syntax diagram]]%%-] Changed lines 662-667 from:
to:
ifStatement := IF boolExpression THEN statementSequence ( ELSIF boolExpression THEN statementSequence )? ( ELSE statementSequence )? END ; Changed lines 670-672 from:
[[# !!!!!#41 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#boolExpression]] !!!!!#41.1 Boolean Expression \ %silver% [-[[SyntaxDiagrams.NonTerminals#boolExpression|syntax diagram]]%%-] Changed lines 674-676 from:
to:
boolExpression := expression ; Changed lines 677-679 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#caseStatement]] !!!!!#42 CASE Statement \ %silver% [-[[SyntaxDiagrams.NonTerminals#caseStatement|syntax diagram]]%%-] Changed lines 681-682 from:
to:
caseStatement := CASE expression OF ( '|' case )+ ( ELSE statementSequence )? END Changed lines 686-688 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#case]] !!!!!#42.1 Case \ %silver% [-[[SyntaxDiagrams.NonTerminals#case|syntax diagram]]%%-] Changed lines 690-691 from:
to:
case := caseLabels ( ',' caseLabels )* ':' statementSequence Changed lines 695-697 from:
[[# !!!!!#42 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#caseLabels]] !!!!!#42.2 Case Labels \ %silver% [-[[SyntaxDiagrams.NonTerminals#caseLabels|syntax diagram]]%%-] Changed lines 699-700 from:
to:
caseLabels := constExpression ( '..' constExpression )? Changed lines 704-706 from:
[[# !!!!!#43 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#loopStatement]] !!!!!#43 LOOP Statement \ %silver% [-[[SyntaxDiagrams.NonTerminals#loopStatement|syntax diagram]]%%-] Changed lines 708-709 from:
to:
loopStatement := LOOP statementSequence END Changed lines 713-715 from:
[[# !!!!!#44 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#whileStatement]] !!!!!#44 WHILE Statement \ %silver% [-[[SyntaxDiagrams.NonTerminals#whileStatement|syntax diagram]]%%-] Changed lines 717-718 from:
to:
whileStatement := WHILE boolExpression DO statementSequence END Changed lines 722-724 from:
[[# !!!!!#45 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#repeatStatement]] !!!!!#45 REPEAT Statement \ %silver% [-[[SyntaxDiagrams.NonTerminals#repeatStatement|syntax diagram]]%%-] Changed lines 726-727 from:
to:
repeatStatement := REPEAT statementSequence UNTIL boolExpression Changed lines 731-733 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#forStatement]] !!!!!#46 FOR Statement \ %silver% [-[[SyntaxDiagrams.NonTerminals#forStatement|syntax diagram]]%%-] Changed lines 735-737 from:
VALUE value ascOrDesc? to:
forStatement := FOR forLoopVariants IN iterableEntity DO statementSequence END Changed lines 740-742 from:
[[# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#forLoopVariants]] !!!!!#46.1 FOR Loop Variants \ %silver% [-[[SyntaxDiagrams.NonTerminals#forLoopVariants|syntax diagram]]%%-] Changed lines 744-746 from:
value := Ident to:
forLoopVariants := accessor ascOrDesc? ( ',' value )? | VALUE value ascOrDesc? ; Changed lines 750-752 from:
[[# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#accessor]][[#value]] !!!!!#46.2 Accessor, Value \ %silver% [-[[SyntaxDiagrams.NonTerminals#accessor|syntax diagram]]%%-] Changed lines 754-756 from:
to:
accessor := Ident ; value := Ident ; Changed lines 759-761 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#iterableEntity]] !!!!!#46.3 Iterable Entity \ %silver% [-[[SyntaxDiagrams.NonTerminals#iterableEntity|syntax diagram]]%%-] Changed lines 763-765 from:
to:
iterableEntity := designator | range OF ordinalType ; Changed lines 768-770 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#ascOrDesc]] !!!!!#46.4 Ascender Or Descender \ %silver% [-[[SyntaxDiagrams.NonTerminals#ascOrDesc|syntax diagram]]%%-] Changed line 772 from:
to:
ascOrDesc := incOrDecSuffix ; Changed lines 775-777 from:
[[# !!!!!#46 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#ordinalType]] !!!!!#46.5 Ordinal Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#ordinalType|syntax diagram]]%%-] Changed lines 779-781 from:
to:
ordinalType := typeIdent ; Changed lines 782-784 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#designator]] !!!!!#47 Designator \ %silver% [-[[SyntaxDiagrams.NonTerminals#designator|syntax diagram]]%%-] Changed lines 786-787 from:
to:
designator := qualident designatorTail? Changed lines 791-793 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#designatorTail]] !!!!!#47.1 Designator Tail \ %silver% [-[[SyntaxDiagrams.NonTerminals#designatorTail|syntax diagram]]%%-] Changed lines 795-796 from:
to:
designatorTail := ( ( '[' exprListOrSlice ']' | '^' ) ( '.' Ident )* )+ Changed lines 800-802 from:
[[# !!!!!#47 Expression List %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#exprListOrSlice]] !!!!!#47.2 Expression List Or Slice \ %silver% [-[[SyntaxDiagrams.NonTerminals#exprListOrSlice|syntax diagram]]%%-] Changed lines 804-805 from:
expression ( ',' expression )* to:
exprListOrSlice := expression ( ( ',' expression )* | '..' expression? ) Changed lines 809-811 from:
[[# !!!!!#48 Expression %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#expressionList]] !!!!!#48 Expression List \ %silver% [-[[SyntaxDiagrams.NonTerminals#expressionList|syntax diagram]]%%-] Changed lines 813-814 from:
to:
expressionList := expression ( ',' expression )* Changed lines 818-820 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#expression]] !!!!!#49 Expression \ %silver% [-[[SyntaxDiagrams.NonTerminals#expression|syntax diagram]]%%-] Changed lines 822-823 from:
to:
expression := simpleExpression ( operL1 simpleExpression )? Changed lines 827-829 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#operL1]] !!!!!#49.1 Level-1 Operator \ %silver% [-[[SyntaxDiagrams.NonTerminals#operL1|syntax diagram]]%%-] Changed lines 831-833 from:
to:
operL1 := '=' | '#' | '<' | '<=' | '>' | '>=' | IN | identityOp ; Changed lines 836-838 from:
[[# !!!!!#49 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#identityOp]] !!!!!#49.2 Identity Operator \ %silver% [-[[SyntaxDiagrams.NonTerminals#identityOp|syntax diagram]]%%-] Changed lines 840-842 from:
to:
identityOp := '==' ; Changed lines 843-845 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#simpleExpression]] !!!!!#50 Simple Expression \ %silver% [-[[SyntaxDiagrams.NonTerminals#simpleExpression|syntax diagram]]%%-] Changed lines 847-848 from:
'+' | '-' to:
simpleExpression := ( '+' | '-' )? term ( operL2 term )* Changed lines 852-854 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#operL2]] !!!!!#50.1 Level-2 Operator \ %silver% [-[[SyntaxDiagrams.NonTerminals#operL2|syntax diagram]]%%-] Changed lines 856-858 from:
to:
operL2 := '+' | '-' | OR | concatOp ; Changed lines 861-863 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#concatOp]] !!!!!#49.2 Concatenation Operator \ %silver% [-[[SyntaxDiagrams.NonTerminals#concatOp|syntax diagram]]%%-] Changed lines 865-867 from:
to:
concatOp := '&' ; Changed lines 868-870 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#term]] !!!!!#51 Term \ %silver% [-[[SyntaxDiagrams.NonTerminals#term|syntax diagram]]%%-] Changed lines 872-873 from:
to:
term := simpleTerm ( operL3 simpleTerm )* Changed lines 877-879 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#operL3]] !!!!!#51.1 Level-3 Operator \ %silver% [-[[SyntaxDiagrams.NonTerminals#operL3|syntax diagram]]%%-] Changed lines 881-883 from:
to:
operL3 := '*' | '/' | DIV | MOD | AND | setDiffOp ; Changed lines 886-888 from:
[[# !!!!!#51 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#setDiffOp]] !!!!!#51.2 Set Difference Operator \ %silver% [-[[SyntaxDiagrams.NonTerminals#setDiffOp|syntax diagram]]%%-] Changed lines 890-892 from:
to:
setDiffOp := '\' ; Changed lines 893-895 from:
[[# !!!!!#52 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#simpleTerm]] !!!!!#52 Simple Term \ %silver% [-[[SyntaxDiagrams.NonTerminals#simpleTerm|syntax diagram]]%%-] Changed lines 897-898 from:
to:
simpleTerm := NOT? factorOrTypeConv Changed lines 902-904 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#factor]] !!!!!#53 Factor \ %silver% [-[[SyntaxDiagrams.NonTerminals#factor|syntax diagram]]%%-] Changed lines 906-908 from:
to:
factor := simpleFactor ( typeConvOp typeIdent )? ; Changed lines 911-913 from:
[[# !!!!!#53 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#typeConvOp]] !!!!!#53.1 Type Conversion Operator \ %silver% [-[[SyntaxDiagrams.NonTerminals#typeConvOp|syntax diagram]]%%-] Changed lines 915-917 from:
to:
typeConvOp := '::' ; Changed lines 918-920 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#simpleFactor]] !!!!!#54 Simple Factor \ %silver% [-[[SyntaxDiagrams.NonTerminals#simpleFactor|syntax diagram]]%%-] Changed lines 922-923 from:
to:
simpleFactor := NumberLiteral | StringLiteral | structuredValue | functionCall | '(' expression ')' Changed lines 927-929 from:
[[# !!!!!#54 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#functionCall]] !!!!!#54.1 Function Call \ %silver% [-[[SyntaxDiagrams.NonTerminals#functionCall|syntax diagram]]%%-] Changed lines 931-932 from:
to:
functionCall := designator '(' expressionList? ')' Changed lines 936-938 from:
[[# !!!!!#54. %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#structuredValue]] !!!!!#54.2 Structured Value \ %silver% [-[[SyntaxDiagrams.NonTerminals#structuredValue|syntax diagram]]%%-] Changed lines 940-941 from:
to:
structuredValue := '{' valueComponent ( ',' valueComponent )* '}' Changed lines 945-947 from:
[[# !!!!!#54. %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#valueComponent]] !!!!!#54.3 Value Component \ %silver% [-[[SyntaxDiagrams.NonTerminals#valueComponent|syntax diagram]]%%-] [@ valueComponent := constExpression (( BY | '..' )? constExpression )? | runtimeExpression ; @] [[#runtimeExpression]] !!!!!#54.4 Runtime Expression \ 2015-09-27 09:10
by -
Changed line 320 from:
restrictedExport? to:
restrictedExport? variableDeclaration ( '=' constExpression )? 2015-09-24 14:40
by -
Changed lines 1309-1310 from:
'+' | '-' | '*' | '/' | '\' | '=' | '<' | '>' | '::' | IN | DIV | MOD | unaryMinus to:
'+' | '-' | '*' | '/' | '\' | '=' | '<' | '>' | '::' | IN | DIV | MOD | unaryMinus 2015-09-24 14:39
by -
Changed line 1300 from:
' to:
':' ( '++' | '--' ) Changed lines 1309-1310 from:
'+' | '-' | '*' | '/' | '\' | '=' | '<' | '>' | ' to:
'+' | '-' | '*' | '/' | '\' | '=' | '<' | '>' | '::' | IN | DIV | MOD | unaryMinus Changed line 1344 from:
' to:
':' '#' Changed line 1362 from:
' to:
':' ( ',' | '#' | '*' ) Changed line 1380 from:
' to:
':' ( ',' | '*' ) 2015-09-24 14:36
by -
Changed line 899 from:
simpleFactor ( to:
simpleFactor ( typeConvOp typeIdent )? Added lines 901-907:
@] [[#typeConvOp]] !!!!!#52.1 Type Conversion Operator \ %silver% [-[[SyntaxDiagrams.NonTerminals#typeConvOp|syntax diagram]]%%-] [@ typeConvOp := '::' ; 2015-09-24 14:30
by -
Changed line 601 from:
!!!!!# to:
!!!!!#37 Statement \ Changed line 612 from:
!!!!!# to:
!!!!!#38 Memory Management Operation \ Changed line 623 from:
!!!!!# to:
!!!!!#38.1 Initialisation Size, Initialisation Value \ Changed line 632 from:
!!!!!# to:
!!!!!#39 Update Or Procedure Call \ Changed line 642 from:
!!!!!# to:
!!!!!#39.1 Increment Or Decrement Suffix \ Changed line 651 from:
!!!!!# to:
!!!!!#40 IF Statement \ Changed line 663 from:
!!!!!# to:
!!!!!#40.1 Boolean Expression \ Changed line 670 from:
!!!!!# to:
!!!!!#41 CASE Statement \ Changed line 679 from:
!!!!!# to:
!!!!!#41.1 Case \ Changed line 688 from:
!!!!!# to:
!!!!!#41.2 Case Labels \ Changed line 697 from:
!!!!!# to:
!!!!!#42 LOOP Statement \ Changed line 706 from:
!!!!!# to:
!!!!!#43 WHILE Statement \ Changed line 715 from:
!!!!!# to:
!!!!!#44 REPEAT Statement \ Changed line 724 from:
!!!!!# to:
!!!!!#45 FOR Statement \ Changed line 733 from:
!!!!!# to:
!!!!!#45.1 FOR Loop Variants \ Changed line 743 from:
!!!!!# to:
!!!!!#45.2 Accessor, Value \ Changed line 752 from:
!!!!!# to:
!!!!!#45.3 Iterable Entity \ Changed line 761 from:
!!!!!# to:
!!!!!#45.4 Ascender Or Descender \ Changed line 768 from:
!!!!!# to:
!!!!!#45.5 Ordinal Type \ Changed line 775 from:
!!!!!# to:
!!!!!#46 Designator \ Changed line 784 from:
!!!!!# to:
!!!!!#46.1 Designator Tail \ Changed line 793 from:
!!!!!# to:
!!!!!#46.2 Expression List Or Slice \ Changed lines 801-803 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#expressionList]] !!!!!#47 Expression List \ %silver% [-[[SyntaxDiagrams.NonTerminals#expressionList|syntax diagram]]%%-] Changed lines 805-806 from:
to:
expressionList := expression ( ',' expression )* Changed lines 810-812 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#expression]] !!!!!#48 Expression \ %silver% [-[[SyntaxDiagrams.NonTerminals#expression|syntax diagram]]%%-] Changed lines 814-815 from:
to:
expression := simpleExpression ( operL1 simpleExpression )? Changed lines 819-821 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#operL1]] !!!!!#48.1 Level-1 Operator \ %silver% [-[[SyntaxDiagrams.NonTerminals#operL1|syntax diagram]]%%-] Changed lines 823-825 from:
to:
operL1 := '=' | '#' | '<' | '<=' | '>' | '>=' | IN | identityOp ; Changed lines 828-830 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#identityOp]] !!!!!#48.2 Identity Operator \ %silver% [-[[SyntaxDiagrams.NonTerminals#identityOp|syntax diagram]]%%-] Changed lines 832-834 from:
to:
identityOp := '==' ; Changed lines 835-837 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#simpleExpression]] !!!!!#49 Simple Expression \ %silver% [-[[SyntaxDiagrams.NonTerminals#simpleExpression|syntax diagram]]%%-] Changed lines 839-840 from:
'+' | '-' to:
simpleExpression := ( '+' | '-' )? term ( operL2 term )* Changed lines 844-846 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#operL2]] !!!!!#49.1 Level-2 Operator \ %silver% [-[[SyntaxDiagrams.NonTerminals#operL2|syntax diagram]]%%-] Changed lines 848-850 from:
to:
operL2 := '+' | '-' | OR | concatOp ; Changed lines 853-855 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#concatOp]] !!!!!#49.2 Concatenation Operator \ %silver% [-[[SyntaxDiagrams.NonTerminals#concatOp|syntax diagram]]%%-] Changed lines 857-859 from:
to:
concatOp := '&' ; Changed lines 860-862 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#term]] !!!!!#50 Term \ %silver% [-[[SyntaxDiagrams.NonTerminals#term|syntax diagram]]%%-] Changed lines 864-865 from:
to:
term := simpleTerm ( operL3 simpleTerm )* Changed lines 869-871 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#operL3]] !!!!!#50.1 Level-3 Operator \ %silver% [-[[SyntaxDiagrams.NonTerminals#operL3|syntax diagram]]%%-] Changed lines 873-875 from:
to:
operL3 := '*' | '/' | DIV | MOD | AND | setDiffOp ; Changed lines 878-880 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#setDiffOp]] !!!!!#50.2 Set Difference Operator \ %silver% [-[[SyntaxDiagrams.NonTerminals#setDiffOp|syntax diagram]]%%-] Changed lines 882-884 from:
to:
setDiffOp := '\' ; Changed lines 885-887 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#simpleTerm]] !!!!!#51 Simple Term \ %silver% [-[[SyntaxDiagrams.NonTerminals#simpleTerm|syntax diagram]]%%-] Changed lines 889-890 from:
to:
simpleTerm := NOT? factorOrTypeConv Changed line 895 from:
!!!!!# to:
!!!!!#52 \ Changed lines 899-900 from:
'(' expression ' to:
simpleFactor ( '::' typeIdent )? Changed lines 903-905 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#simpleFactor]] !!!!!#53 Simple Factor \ %silver% [-[[SyntaxDiagrams.NonTerminals#simpleFactor|syntax diagram]]%%-] Changed lines 907-908 from:
to:
simpleFactor := NumberLiteral | StringLiteral | structuredValue | functionCall | '(' expression ')' Changed lines 912-914 from:
[[# !!!!!#53 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#functionCall]] !!!!!#53.1 Function Call \ %silver% [-[[SyntaxDiagrams.NonTerminals#functionCall|syntax diagram]]%%-] Changed lines 916-917 from:
to:
functionCall := designator '(' expressionList? ')' 2015-09-24 14:22
by -
Changed line 551 from:
TYPE ( to:
TYPE ( typeDeclaration ';' )+ | Changed lines 557-559 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#typeDeclaration]] !!!!!#35 Type Declaration \ %silver% [-[[SyntaxDiagrams.NonTerminals#typeDeclaration|syntax diagram]]%%-] Changed lines 561-562 from:
to:
typeDeclaration := Ident '=' ( type | indeterminateRecType ) Changed line 567 from:
!!!!!#35 Indeterminate Record Type \ to:
!!!!!#35.1 Indeterminate Record Type \ Changed line 576 from:
!!!!!#35. to:
!!!!!#35.2 Indeterminate Field \ Changed line 585 from:
!!!!!#35. to:
!!!!!#35.3 Discriminant Field Identifier \ Changed line 636 from:
designator ( to:
designator ( incOrDecSuffix | ':=' expression | '(' expressionList ')' )? | 2015-09-24 10:39
by -
Changed line 580 from:
~ Ident ':' ARRAY ~ discriminantFieldIdent OF typeIdent END to:
'~' Ident ':' ARRAY '~' discriminantFieldIdent OF typeIdent END 2015-09-24 10:38
by -
Changed line 571 from:
'~' RECORD variableDeclaration to:
'~' RECORD ( variableDeclaration ';' )+ indeterminateField END Changed line 580 from:
Ident ':' ARRAY discriminantFieldIdent OF typeIdent END to:
~ Ident ':' ARRAY ~ discriminantFieldIdent OF typeIdent END 2015-09-24 10:10
by -
Changed lines 311-313 from:
RECORD '(' recTypeToExtend ')' to:
RECORD ( '(' recTypeToExtend ')' )? fieldList ( ';' fieldList )* ) 2015-09-24 10:08
by -
Changed lines 333-335 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#pointerType]] !!!!!#18 Pointer Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#pointerType|syntax diagram]]%%-] Changed lines 337-338 from:
to:
pointerType := POINTER TO CONST? typeIdent Changed lines 342-344 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#coroutineType]] !!!!!#19 Coroutine Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#coroutineType|syntax diagram]]%%-] Changed lines 346-348 from:
to:
coroutineType := COROUTINE '(' assocProcType ')' ; Changed lines 351-353 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#assocProcType]] !!!!!#19.1 Associated Procedure Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#assocProcType|syntax diagram]]%%-] Changed lines 355-357 from:
POINTER TO CONST? typeIdent to:
assocProcType : typeIdent ; Changed lines 358-360 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#procedureType]] !!!!!#20 Procedure Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#procedureType|syntax diagram]]%%-] Changed lines 362-363 from:
to:
procedureType := PROCEDURE ( formalType ( ',' formalType )* )? ( ':' returnedType )? Changed lines 367-369 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#formalType]] !!!!!#20.1 Formal Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#formalType|syntax diagram]]%%-] Changed lines 371-373 from:
to:
formalType := simpleFormalType | attributedFormalType | variadicFormalType ; Changed lines 376-378 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#simpleFormalType]] !!!!!#21 Simple Formal Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#simpleFormalType|syntax diagram]]%%-] Changed lines 380-381 from:
to:
simpleFormalType := ( ARRAY OF )? typeIdent | castingFormalType Changed lines 385-387 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#castingFormalType]] !!!!!#21.1 Casting Formal Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#castingFormalType|syntax diagram]]%%-] Changed lines 389-390 from:
to:
castingFormalType := CAST ( ARRAY OF OCTET | addressTypeIdent ) Changed lines 394-396 from:
[[# !!!!!#21 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#addressTypeIdent]] !!!!!#21.2 Address Type Identifier \ %silver% [-[[SyntaxDiagrams.NonTerminals#addressTypeIdent|syntax diagram]]%%-] Changed lines 398-399 from:
( to:
addressTypeIdent := ( UNSAFE '.' )? ADDRESS Changed lines 403-405 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#attributedFormalType]] !!!!!#22 Attributed Formal Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#attributedFormalType|syntax diagram]]%%-] Changed lines 407-408 from:
to:
attributedFormalType := ( CONST | NEW | VAR ) ( simpleFormalType | simpleVariadicFormalType ) Changed lines 412-414 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#simpleVariadicFormalType]] !!!!!#23 Simple Variadic Formal Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#simpleVariadicFormalType|syntax diagram]]%%-] Changed lines 416-417 from:
to:
simpleVariadicFormalType := ARGLIST reqNumOfArgs? OF simpleFormalType terminator? Changed lines 421-423 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#reqNumOfArgs]] !!!!!#23.1 Required Number Of Arguments \ %silver% [-[[SyntaxDiagrams.NonTerminals#reqNumOfArgs|syntax diagram]]%%-] Changed lines 425-426 from:
to:
reqNumOfArgs := greaterThan? constExpression Changed lines 430-432 from:
[[# !!!!!#23 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#terminator]] !!!!!#23.2 Argument List Terminator \ %silver% [-[[SyntaxDiagrams.NonTerminals#terminator|syntax diagram]]%%-] Changed lines 434-435 from:
to:
terminator := '|' constQualident Changed lines 439-441 from:
[[# !!!!!#23. %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#constQualident]] !!!!!#23.3 Constant Qualified Identifier \ %silver% [-[[SyntaxDiagrams.NonTerminals#constQualident|syntax diagram]]%%-] Changed lines 443-445 from:
to:
constQualident := qualident ; Changed lines 446-448 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#variadicFormalType]] !!!!!#24 Variadic Formal Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#variadicFormalType|syntax diagram]]%%-] Changed lines 450-451 from:
to:
variadicFormalType := ARGLIST reqNumOfArgs? OF ( '{' nonVariadicFormalType ( ';' nonVariadicFormalType )* '}' | simpleFormalType ) terminator? Changed lines 457-459 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#nonVariadicFormalType]] !!!!!#25 Non-Variadic Formal Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#nonVariadicFormalType|syntax diagram]]%%-] Changed lines 461-463 from:
to:
nonVariadicFormalType := ( CONST | NEW | VAR )? simpleFormalType ; Changed lines 466-468 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#procedureHeader]] !!!!!#26 Procedure Header \ %silver% [-[[SyntaxDiagrams.NonTerminals#procedureHeader|syntax diagram]]%%-] Changed lines 470-473 from:
simpleFormalType ) terminator? to:
procedureHeader := PROCEDURE ( '[' ( entityToBindTo | COROUTINE ) ']' | restrictedExport )? procedureSignature Changed lines 476-478 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#procedureSignature]] !!!!!#27 Procedure Signature \ %silver% [-[[SyntaxDiagrams.NonTerminals#procedureSignature|syntax diagram]]%%-] Changed lines 480-481 from:
to:
procedureSignature := Ident ( '(' formalParams ( ';' formalParams )* ')' )? ( ':' returnedType )? Changed lines 485-487 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#formalParams]] !!!!!#28 Formal Parameters \ %silver% [-[[SyntaxDiagrams.NonTerminals#formalParams|syntax diagram]]%%-] Changed lines 489-491 from:
procedureSignature to:
formalParams := identList ':' ( simpleFormalType | variadicFormalParams ) | attributedFormalParams Changed lines 495-497 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#attributedFormalParams]] !!!!!#29 Attributed Formal Parameters \ %silver% [-[[SyntaxDiagrams.NonTerminals#attributedFormalParams|syntax diagram]]%%-] Changed lines 499-500 from:
to:
attributedFormalParams := ( CONST | NEW | VAR ) identList ':' ( simpleFormalType | simpleVariadicFormalType ) Changed lines 505-507 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#variadicFormalParams]] !!!!!#30 Variadic Formal Parameters \ %silver% [-[[SyntaxDiagrams.NonTerminals#variadicFormalParams|syntax diagram]]%%-] Changed lines 509-511 from:
to:
variadicFormalParams := ARGLIST reqNumOfArgs? OF ( ( '{' nonVariadicFormalParams ( ';' nonVariadicFormalParams )* '}') | simpleFormalType ) terminator? Changed lines 516-518 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#nonVariadicFormalParams]] !!!!!#31 Non-Variadic Formal Parameters \ %silver% [-[[SyntaxDiagrams.NonTerminals#nonVariadicFormalParams|syntax diagram]]%%-] Changed lines 520-522 from:
( CONST | NEW | VAR ) identList ':' to:
nonVariadicFormalParams := ( CONST | NEW | VAR )? identList ':' simpleFormalType Changed lines 525-527 from:
[[# !!!! %silver% to:
[[#ImplAndPrgmModuleSyntax]] !!!!Implementation And Program Module Syntax [[#implOrPrgmModule]] !!!!!#32 Implementation Or Program Module \ %silver% [-[[SyntaxDiagrams.NonTerminals#implOrPrgmModule|syntax diagram]]%%-] Changed lines 532-535 from:
simpleFormalType ) terminator? to:
implOrPrgmModule := IMPLEMENTATION? MODULE moduleIdent ';' ( importList ';' )* block moduleIdent '.' Changed lines 538-540 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#block]] !!!!!#33 Block \ %silver% [-[[SyntaxDiagrams.NonTerminals#block|syntax diagram]]%%-] Changed lines 542-543 from:
to:
block := declaration* ( BEGIN statementSequence )? END Changed lines 547-552 from:
[[# !!!! !!!!!#32 Implementation Or Program Module \ %silver% [-[[SyntaxDiagrams.NonTerminals#implOrPrgmModule to:
[[#declaration]] !!!!!#34 Declaration \ %silver% [-[[SyntaxDiagrams.NonTerminals#declaration|syntax diagram]]%%-] Changed lines 551-553 from:
to:
declaration := CONST ( Ident '=' constExpression ';' )+ | TYPE ( Ident '=' typeDeclTail ';' )+ | VAR ( variableDeclaration ';' )+ | procedureHeader ';' block Ident ';' Changed lines 559-561 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#typeDeclTail]] !!!!!#34.1 Type Declaration Tail \ %silver% [-[[SyntaxDiagrams.NonTerminals#typeDeclTail|syntax diagram]]%%-] Changed lines 563-564 from:
to:
typeDeclTail := type | indeterminateRecType Changed lines 568-570 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#indeterminateRecType]] !!!!!#35 Indeterminate Record Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#indeterminateRecType|syntax diagram]]%%-] Changed lines 572-576 from:
TYPE ( Ident '=' typeDeclTail ';' )+ | VAR ( variableDeclaration ';' )+ | procedureHeader ';' block Ident ';' to:
indeterminateRecType := '~' RECORD variableDeclaration ( ';" variableDeclaration )* indeterminateField END Changed lines 577-579 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#indeterminateField]] !!!!!#35.1 Indeterminate Field \ %silver% [-[[SyntaxDiagrams.NonTerminals#indeterminateField|syntax diagram]]%%-] Changed lines 581-582 from:
to:
indeterminateRecType := Ident ':' ARRAY discriminantFieldIdent OF typeIdent END Changed lines 586-588 from:
[[# !!!!!#35 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#discriminantFieldIdent]] !!!!!#35.2 Discriminant Field Identifier \ %silver% [-[[SyntaxDiagrams.NonTerminals#discriminantFieldIdent|syntax diagram]]%%-] Changed lines 590-592 from:
to:
discriminantFieldIdent := Ident ; Changed lines 593-595 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#statementSequence]] !!!!!#36 Statement Sequence \ %silver% [-[[SyntaxDiagrams.NonTerminals#statementSequence|syntax diagram]]%%-] Changed lines 597-598 from:
to:
statementSequence := statement ( ';' statement )* Deleted lines 599-605:
[[#discriminantFieldIdent]] !!!!!#35.2 Discriminant Field Identifier \ %silver% [-[[SyntaxDiagrams.NonTerminals#discriminantFieldIdent|syntax diagram]]%%-] [@ discriminantFieldIdent := Ident ; 2015-09-24 10:06
by -
Changed lines 575-577 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#typeDeclTail]] !!!!!#34.1 Type Declaration Tail \ %silver% [-[[SyntaxDiagrams.NonTerminals#typeDeclTail|syntax diagram]]%%-] Changed lines 579-580 from:
to:
typeDeclTail := type | indeterminateRecType Changed lines 584-586 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#indeterminateRecType]] !!!!!#35 Indeterminate Record Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#indeterminateRecType|syntax diagram]]%%-] Changed lines 588-591 from:
loopStatement | whileStatement | repeatStatement | forStatement | ( RETURN | YIELD ) expression? | EXIT to:
indeterminateRecType := '~' RECORD variableDeclaration ( ';" variableDeclaration )* indeterminateField END Changed lines 593-595 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#indeterminateField]] !!!!!#35.1 Indeterminate Field \ %silver% [-[[SyntaxDiagrams.NonTerminals#indeterminateField|syntax diagram]]%%-] Changed lines 597-600 from:
RETAIN designator | RELEASE designator to:
indeterminateRecType := Ident ':' ARRAY discriminantFieldIdent OF typeIdent END Changed lines 602-604 from:
[[# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#discriminantFieldIdent]] !!!!!#35.2 Discriminant Field Identifier \ %silver% [-[[SyntaxDiagrams.NonTerminals#discriminantFieldIdent|syntax diagram]]%%-] Changed lines 606-608 from:
initValue := expression to:
discriminantFieldIdent := Ident ; Changed lines 609-611 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#statement]] !!!!!#36 Statement \ %silver% [-[[SyntaxDiagrams.NonTerminals#statement|syntax diagram]]%%-] Changed lines 613-615 from:
to:
statement := memMgtOperation | updateOrProcCall | ifStatement | caseStatement | loopStatement | whileStatement | repeatStatement | forStatement | ( RETURN | YIELD ) expression? | EXIT Changed lines 620-622 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#memMgtOperation]] !!!!!#37 Memory Management Operation \ %silver% [-[[SyntaxDiagrams.NonTerminals#memMgtOperation|syntax diagram]]%%-] Changed lines 624-625 from:
to:
memMgtOperation := NEW designator ( OF initSize | := initValue )? | RETAIN designator | RELEASE designator Changed lines 631-633 from:
[[# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#initSize]][[#initValue]] !!!!!#37.1 Initialisation Size, Initialisation Value \ %silver% [-[[SyntaxDiagrams.NonTerminals#initSize|syntax diagram]]%%-] Changed lines 635-640 from:
( ELSIF boolExpression THEN statementSequence )? ( ELSE statementSequence )? END to:
initSize := expression ; initValue := expression ; Changed lines 640-642 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#updateOrProcCall]] !!!!!#38 Update Or Procedure Call \ %silver% [-[[SyntaxDiagrams.NonTerminals#updateOrProcCall|syntax diagram]]%%-] Changed lines 644-647 from:
to:
updateOrProcCall := designator ( ':=' expression | incOrDecSuffix | actualParameters )? | COPY designator ':=' expression ; Changed lines 650-652 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#incOrDecSuffix]] !!!!!#38.1 Increment Or Decrement Suffix \ %silver% [-[[SyntaxDiagrams.NonTerminals#incOrDecSuffix|syntax diagram]]%%-] Changed lines 654-655 from:
to:
incOrDecSuffix := '++' | '--' Changed lines 659-661 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#ifStatement]] !!!!!#39 IF Statement \ %silver% [-[[SyntaxDiagrams.NonTerminals#ifStatement|syntax diagram]]%%-] Changed lines 663-664 from:
to:
ifStatement := IF boolExpression THEN statementSequence ( ELSIF boolExpression THEN statementSequence )? ( ELSE statementSequence )? END Changed lines 671-673 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#boolExpression]] !!!!!#39.1 Boolean Expression \ %silver% [-[[SyntaxDiagrams.NonTerminals#boolExpression|syntax diagram]]%%-] Changed lines 675-677 from:
to:
boolExpression := expression ; Changed lines 678-680 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#caseStatement]] !!!!!#40 CASE Statement \ %silver% [-[[SyntaxDiagrams.NonTerminals#caseStatement|syntax diagram]]%%-] Changed lines 682-683 from:
to:
caseStatement := CASE expression OF ( '|' case )+ ( ELSE statementSequence )? END Changed lines 687-689 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#case]] !!!!!#40.1 Case \ %silver% [-[[SyntaxDiagrams.NonTerminals#case|syntax diagram]]%%-] Changed lines 691-692 from:
to:
case := caseLabels ( ',' caseLabels )* ':' statementSequence Changed lines 696-698 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#caseLabels]] !!!!!#40.2 Case Labels \ %silver% [-[[SyntaxDiagrams.NonTerminals#caseLabels|syntax diagram]]%%-] Changed lines 700-701 from:
to:
caseLabels := constExpression ( '..' constExpression )? Changed lines 705-707 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#loopStatement]] !!!!!#41 LOOP Statement \ %silver% [-[[SyntaxDiagrams.NonTerminals#loopStatement|syntax diagram]]%%-] Changed lines 709-710 from:
to:
loopStatement := LOOP statementSequence END Changed lines 714-716 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#whileStatement]] !!!!!#42 WHILE Statement \ %silver% [-[[SyntaxDiagrams.NonTerminals#whileStatement|syntax diagram]]%%-] Changed lines 718-720 from:
VALUE value ascOrDesc? to:
whileStatement := WHILE boolExpression DO statementSequence END Changed lines 723-725 from:
[[# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#repeatStatement]] !!!!!#43 REPEAT Statement \ %silver% [-[[SyntaxDiagrams.NonTerminals#repeatStatement|syntax diagram]]%%-] Changed lines 727-729 from:
value := Ident to:
repeatStatement := REPEAT statementSequence UNTIL boolExpression ; Changed lines 732-734 from:
[[# !!!!!#44 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#forStatement]] !!!!!#44 FOR Statement \ %silver% [-[[SyntaxDiagrams.NonTerminals#forStatement|syntax diagram]]%%-] Changed lines 736-737 from:
to:
forStatement := FOR forLoopVariants IN iterableEntity DO statementSequence END Changed lines 741-743 from:
[[# !!!!!#44. %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#forLoopVariants]] !!!!!#44.1 FOR Loop Variants \ %silver% [-[[SyntaxDiagrams.NonTerminals#forLoopVariants|syntax diagram]]%%-] Changed lines 745-748 from:
to:
forLoopVariants := accessor ascOrDesc? ( ',' value )? | VALUE value ascOrDesc? ; Changed lines 751-753 from:
[[# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#accessor]][[#value]] !!!!!#44.2 Accessor, Value \ %silver% [-[[SyntaxDiagrams.NonTerminals#accessor|syntax diagram]]%%-] Changed lines 755-757 from:
to:
accessor := Ident ; value := Ident ; Changed lines 760-762 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#iterableEntity]] !!!!!#44.3 Iterable Entity \ %silver% [-[[SyntaxDiagrams.NonTerminals#iterableEntity|syntax diagram]]%%-] Changed lines 764-765 from:
to:
iterableEntity := designator | range OF ordinalType Changed lines 769-771 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#ascOrDesc]] !!!!!#44.4 Ascender Or Descender \ %silver% [-[[SyntaxDiagrams.NonTerminals#ascOrDesc|syntax diagram]]%%-] Changed lines 773-775 from:
to:
ascOrDesc := incOrDecSuffix ; Changed lines 776-778 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#ordinalType]] !!!!!#44.5 Ordinal Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#ordinalType|syntax diagram]]%%-] Changed lines 780-782 from:
to:
ordinalType := typeIdent ; Changed lines 783-785 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#designator]] !!!!!#45 Designator \ %silver% [-[[SyntaxDiagrams.NonTerminals#designator|syntax diagram]]%%-] Changed lines 787-788 from:
to:
designator := qualident designatorTail? Changed lines 792-794 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#designatorTail]] !!!!!#45.1 Designator Tail \ %silver% [-[[SyntaxDiagrams.NonTerminals#designatorTail|syntax diagram]]%%-] Changed lines 796-797 from:
' to:
designatorTail := ( ( '[' exprListOrSlice ']' | '^' ) ( '.' Ident )* )+ Changed lines 801-803 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#exprListOrSlice]] !!!!!#45.2 Expression List Or Slice \ %silver% [-[[SyntaxDiagrams.NonTerminals#exprListOrSlice|syntax diagram]]%%-] Changed lines 805-807 from:
to:
exprListOrSlice := expression ( ( ',' expression )* | '..' expression? ) ; Changed lines 810-812 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#expression]] !!!!!#46 Expression \ %silver% [-[[SyntaxDiagrams.NonTerminals#expression|syntax diagram]]%%-] Changed lines 814-815 from:
to:
expression := simpleExpression ( operL1 simpleExpression )? Changed lines 819-821 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#operL1]] !!!!!#46.1 Level-1 Operator \ %silver% [-[[SyntaxDiagrams.NonTerminals#operL1|syntax diagram]]%%-] Changed lines 823-824 from:
' to:
operL1 := '=' | '#' | '<' | '<=' | '>' | '>=' | IN | identityOp Changed lines 828-830 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#identityOp]] !!!!!#46.2 Identity Operator \ %silver% [-[[SyntaxDiagrams.NonTerminals#identityOp|syntax diagram]]%%-] Changed line 832 from:
to:
identityOp := '==' ; Changed lines 835-837 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#simpleExpression]] !!!!!#47 Simple Expression \ %silver% [-[[SyntaxDiagrams.NonTerminals#simpleExpression|syntax diagram]]%%-] Changed lines 839-840 from:
to:
simpleExpression := ( '+' | '-' )? term ( operL2 term )* Changed lines 844-846 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#operL2]] !!!!!#47.1 Level-2 Operator \ %silver% [-[[SyntaxDiagrams.NonTerminals#operL2|syntax diagram]]%%-] Changed lines 848-849 from:
' to:
operL2 := '+' | '-' | OR | concatOp Changed lines 853-855 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#concatOp]] !!!!!#47.2 Concatenation Operator \ %silver% [-[[SyntaxDiagrams.NonTerminals#concatOp|syntax diagram]]%%-] Changed line 857 from:
to:
concatOp := '&' ; Changed lines 860-862 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#term]] !!!!!#48 Term \ %silver% [-[[SyntaxDiagrams.NonTerminals#term|syntax diagram]]%%-] Changed lines 864-865 from:
to:
term := simpleTerm ( operL3 simpleTerm )* Changed lines 869-871 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#operL3]] !!!!!#48.1 Level-3 Operator \ %silver% [-[[SyntaxDiagrams.NonTerminals#operL3|syntax diagram]]%%-] Changed lines 873-874 from:
to:
operL3 := '*' | '/' | DIV | MOD | AND | setDiffOp Changed lines 878-880 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#setDiffOp]] !!!!!#48.2 Set Difference Operator \ %silver% [-[[SyntaxDiagrams.NonTerminals#setDiffOp|syntax diagram]]%%-] Changed lines 882-885 from:
'(' expression ')' | designator actualParameters? to:
setDiffOp := '\' ; Changed lines 885-887 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#simpleTerm]] !!!!!#49 Simple Term \ %silver% [-[[SyntaxDiagrams.NonTerminals#simpleTerm|syntax diagram]]%%-] Changed lines 889-890 from:
to:
simpleTerm := NOT? factorOrTypeConv Changed lines 894-896 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#factorOrTypeConv]] !!!!!#50 Factor Or Type Conversion \ %silver% [-[[SyntaxDiagrams.NonTerminals#factorOrTypeConv|syntax diagram]]%%-] Changed lines 898-899 from:
to:
factorOrTypeConv := factor ( '::' typeIdent )? Changed lines 903-905 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#factor]] !!!!!#51 Factor \ %silver% [-[[SyntaxDiagrams.NonTerminals#factor|syntax diagram]]%%-] Changed lines 907-908 from:
to:
factor := NumberLiteral | StringLiteral | structuredValue | '(' expression ')' | designator actualParameters? Changed lines 913-915 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#actualParameters]] !!!!!#52 Actual Parameters \ %silver% [-[[SyntaxDiagrams.NonTerminals#actualParameters|syntax diagram]]%%-] Changed lines 917-918 from:
to:
actualParameters := '(' expressionList ')' Changed lines 922-924 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#expressionList]] !!!!!#53 Expression List \ %silver% [-[[SyntaxDiagrams.NonTerminals#expressionList|syntax diagram]]%%-] Changed lines 926-928 from:
to:
expressionList := expression ( ',' expression )* ; Changed lines 931-936 from:
[[# !!!! !!!!!#55 Blueprint \ %silver% [-[[SyntaxDiagrams.NonTerminals#blueprint to:
[[#structuredValue]] !!!!!#54 Structured Value \ %silver% [-[[SyntaxDiagrams.NonTerminals#structuredValue|syntax diagram]]%%-] Changed lines 935-939 from:
( FOR blueprintForTypeToExtend )? ';' ( REFERENTIAL identList ';' )? MODULE TYPE '=' ( typeClassification ( ';' literalCompatibility)? | NONE ) ';' ( constraint ';' )* ( requirement ';' )* END blueprintIdent '. to:
structuredValue := '{' valueComponent ( ',' valueComponent )* '}' Changed lines 940-942 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#valueComponent]] !!!!!#54.1 Value Component \ %silver% [-[[SyntaxDiagrams.NonTerminals#valueComponent|syntax diagram]]%%-] Changed lines 944-946 from:
to:
valueComponent := constExpression (( BY | '..' )? constExpression )? | runtimeExpression ; Changed lines 949-951 from:
[[# %silver% to:
[[#runtimeExpression]] !!!!!#54.2 Runtime Expression \ %silver% [-[[SyntaxDiagrams.NonTerminals#runtimeExpression|syntax diagram]]%%-] Changed lines 953-955 from:
blueprintForTypeToExtend := blueprintIdent to:
runtimeExpression := expression ; Changed lines 956-958 from:
[[# !!!! %silver% to:
[[#BlueprintSyntax]] !!!!Blueprint Syntax [[#blueprint]] !!!!!#55 Blueprint \ %silver% [-[[SyntaxDiagrams.NonTerminals#blueprint|syntax diagram]]%%-] Changed lines 963-965 from:
to:
blueprint := BLUEPRINT blueprintIdent ( '[' blueprintToRefine ']' )? ( FOR blueprintForTypeToExtend )? ';' ( REFERENTIAL identList ';' )? MODULE TYPE '=' ( typeClassification ( ';' literalCompatibility)? | NONE ) ';' ( constraint ';' )* ( requirement ';' )* END blueprintIdent '.' Changed lines 971-973 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#blueprintIdent]] !!!!!#55.1 Blueprint Identifier \ %silver% [-[[SyntaxDiagrams.NonTerminals#blueprintIdent|syntax diagram]]%%-] Changed lines 975-977 from:
to:
blueprintIdent := Ident ; Changed lines 978-980 from:
[[# %silver% to:
[[#blueprintToRefine]][[#blueprintForTypeToExtend]] !!!!!#55.2 Blueprint To Refine, Blueprint For Type To Extend \ %silver% [-[[SyntaxDiagrams.NonTerminals#blueprintToRefine|syntax diagram]]%%-] Changed lines 982-984 from:
to:
blueprintToRefine := blueprintIdent ; blueprintForTypeToExtend := blueprintIdent ; Changed lines 987-989 from:
[[# !!!!!#56 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#typeClassification]] !!!!!#56 Type Classification \ %silver% [-[[SyntaxDiagrams.NonTerminals#typeClassification|syntax diagram]]%%-] Changed lines 991-994 from:
to:
typeClassification := '{' determinedClassification ( ';' refinableClassification )? ( ';' '*' )? '}' | '*' ; Changed lines 997-999 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#determinedClassification]] !!!!!#56.1 Determined Classification \ %silver% [-[[SyntaxDiagrams.NonTerminals#determinedClassification|syntax diagram]]%%-] Changed lines 1001-1002 from:
to:
determinedClassification := classificationIdent ( ',' classificationIdent )* Changed lines 1006-1008 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#refinableClassification]] !!!!!#56.2 Refinable Classification \ %silver% [-[[SyntaxDiagrams.NonTerminals#refinableClassification|syntax diagram]]%%-] Changed lines 1010-1011 from:
to:
refinableClassification := '~' classificationIdent ( ',' '~' classificationIdent )* Changed lines 1015-1017 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#classificationIdent]] !!!!!#56.3 Classification Identifier \ %silver% [-[[SyntaxDiagrams.NonTerminals#classificationIdent|syntax diagram]]%%-] Changed line 1019 from:
to:
classificationIdent := Ident ; Changed lines 1022-1024 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#literalCompatibility]] !!!!!#57 Literal Compatibility \ %silver% [-[[SyntaxDiagrams.NonTerminals#literalCompatibility|syntax diagram]]%%-] Changed lines 1026-1031 from:
( '{' builtinOrReferential ( ',' builtinOrReferential builtinOrReferential ) ) | builtinOrReferential '}' to:
literalCompatibility := TLITERAL '=' protoLiteral ( '|' protoLiteral )* Changed lines 1031-1033 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#protoLiteral]] !!!!!#57.1 Proto-Literal \ %silver% [-[[SyntaxDiagrams.NonTerminals#protoLiteral|syntax diagram]]%%-] Changed lines 1035-1036 from:
to:
protoLiteral := protoLiteralIdent | structuredProtoLiteral Changed lines 1040-1041 from:
!!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#protoLiteralIdent]] !!!!!#57.2 Proto-Literal Identifier \ %silver% [-[[SyntaxDiagrams.NonTerminals#protoLiteralIdent|syntax diagram]]%%-] Changed line 1044 from:
to:
protoLiteralIdent := Ident ; Changed lines 1047-1049 from:
[[# !!!!!#58 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#structuredProtoLiteral]] !!!!!#58 Structured Proto-Literal \ %silver% [-[[SyntaxDiagrams.NonTerminals#structuredProtoLiteral|syntax diagram]]%%-] Changed lines 1051-1057 from:
to:
structuredProtoLiteral := '{' ( ARGLIST reqValueCount? OF ( '{' builtinOrReferential ( ',' builtinOrReferential )* '}' | builtinOrReferential ) ) | builtinOrReferential '}' ; Changed lines 1060-1062 from:
[[# !!!!!#58. %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#reqValueCount]] !!!!!#58.1 Required Value Count \ %silver% [-[[SyntaxDiagrams.NonTerminals#reqValueCount|syntax diagram]]%%-] Changed lines 1064-1066 from:
to:
reqValueCount := greaterThan? wholeNumber ; Changed lines 1069-1071 from:
%silver% [-[[SyntaxDiagrams.NonTerminals# to:
!!!!!#58.2 Greater Than \ %silver% [-[[SyntaxDiagrams.NonTerminals#greaterThan|syntax diagram]]%%-] Changed lines 1072-1074 from:
to:
greaterThan := '>' ; Changed lines 1075-1077 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#wholeNumber]] !!!!!#58.3 Whole Number \ %silver% [-[[SyntaxDiagrams.NonTerminals#wholeNumber|syntax diagram]]%%-] Changed lines 1079-1082 from:
'(' classificationOrFlagIdent ')' | '[' bindableEntityOrProperty ']' to:
wholeNumber : NumberLiteral ; Changed lines 1082-1084 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#builtinOrReferential]] !!!!!#58.4 Built-in Type Or Referential Identifier \ %silver% [-[[SyntaxDiagrams.NonTerminals#builtinOrReferential|syntax diagram]]%%-] Changed lines 1086-1088 from:
to:
builtinOrReferential := Ident ; Changed lines 1089-1091 from:
[[# !!!!!#59 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#constraint]] !!!!!#59 Constraint \ %silver% [-[[SyntaxDiagrams.NonTerminals#constraint|syntax diagram]]%%-] Changed lines 1093-1094 from:
to:
constraint := constraintTerm ( oneWayDependency | mutualDependencyOrExclusion ) Changed lines 1098-1100 from:
[[# !!!!!#59. %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#constraintTerm]] !!!!!#59.1 Constraint Term \ %silver% [-[[SyntaxDiagrams.NonTerminals#constraintTerm|syntax diagram]]%%-] Changed lines 1102-1103 from:
( to:
constraintTerm := '(' classificationOrFlagIdent ')' | '[' bindableEntityOrProperty ']' Changed lines 1108-1110 from:
[[# !!!!!#59. %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#bindableEntityOrProperty]] !!!!!#59.2 Bindable Entity Or Property \ %silver% [-[[SyntaxDiagrams.NonTerminals#bindableEntityOrProperty|syntax diagram]]%%-] Changed lines 1112-1113 from:
to:
bindableEntityOrProperty := entityToBindTo | propertyToBindTo Changed lines 1117-1119 from:
[[# !!!!!#59. %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#oneWayDependency]] !!!!!#59.3 One-Way Dependency \ %silver% [-[[SyntaxDiagrams.NonTerminals#oneWayDependency|syntax diagram]]%%-] Changed lines 1121-1123 from:
to:
oneWayDependency := '->' termList ( '|' termList )* ; Changed lines 1126-1128 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#mutualDependencyOrExclusion]] !!!!!#59.4 Mutual Dependency Or Exclusion \ %silver% [-[[SyntaxDiagrams.NonTerminals#mutualDependencyOrExclusion|syntax diagram]]%%-] Changed lines 1130-1131 from:
to:
mutualDependencyOrExclusion := ( '<>' | '><' ) termList Changed lines 1135-1137 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#termList]] !!!!!#59.5 Term List \ %silver% [-[[SyntaxDiagrams.NonTerminals#termList|syntax diagram]]%%-] Changed lines 1139-1140 from:
to:
termList := constraintTerm ( ',' constraintTerm )* Changed lines 1144-1146 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#classificationOrFlagIdent]] !!!!!#59.6 Classification Or Flag Identifier \ %silver% [-[[SyntaxDiagrams.NonTerminals#classificationOrFlagIdent|syntax diagram]]%%-] Changed line 1148 from:
to:
classificationOrFlagIdent := Ident ; Changed lines 1151-1153 from:
[[# !!!!!#60 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#requirement]] !!!!!#60 Requirement \ %silver% [-[[SyntaxDiagrams.NonTerminals#requirement|syntax diagram]]%%-] Changed lines 1155-1156 from:
to:
requirement := condition '->' ( typeRequirement | constRequirement | procRequirement ) Changed lines 1160-1162 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#condition]] !!!!!#60.1 Condition \ %silver% [-[[SyntaxDiagrams.NonTerminals#condition|syntax diagram]]%%-] Changed lines 1164-1167 from:
( '[' propertyToBindTo ']' ( simpleConstRequirement | '=' NONE ) | restrictedExport? simpleConstRequirement ) to:
condition := NOT? boolConstIdent Changed lines 1169-1171 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#boolConstIdent]] !!!!!#60.2 Boolean Constant Identifier \ %silver% [-[[SyntaxDiagrams.NonTerminals#boolConstIdent|syntax diagram]]%%-] Changed lines 1173-1175 from:
to:
boolConstIdent := Ident ; Changed lines 1176-1177 from:
!!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#typeRequirement]] !!!!!#60.3 Type Requirement \ %silver% [-[[SyntaxDiagrams.NonTerminals#typeRequirement|syntax diagram]]%%-] Changed lines 1180-1182 from:
to:
typeRequirement := TYPE typeDefinition ; Changed lines 1185-1187 from:
[[# !!!!!#61 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#constRequirement]] !!!!!#61 Constant Requirement \ %silver% [-[[SyntaxDiagrams.NonTerminals#constRequirement|syntax diagram]]%%-] Changed lines 1189-1193 from:
to:
constRequirement := CONST ( '[' propertyToBindTo ']' ( simpleConstRequirement | '=' NONE ) | restrictedExport? simpleConstRequirement ) ; Changed lines 1196-1197 from:
!!!!!#61. %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#simpleConstRequirement]] !!!!!#61.1 Simple Constant Requirement \ %silver% [-[[SyntaxDiagrams.NonTerminals#simpleConstRequirement|syntax diagram]]%%-] Changed lines 1200-1202 from:
to:
simpleConstRequirement := Ident ( '=' constExpression | ':' builtinTypeIdent ) ; Changed lines 1205-1207 from:
%silver% [-[[SyntaxDiagrams.NonTerminals# to:
!!!!!#61.2 Constant Expression \ %silver% [-[[SyntaxDiagrams.NonTerminals#constExpression|syntax diagram]]%%-] Changed lines 1208-1210 from:
to:
constExpression := expression ; Changed lines 1211-1213 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#builtinTypeIdent]] !!!!!#61.3 Built-in Type Identifier \ %silver% [-[[SyntaxDiagrams.NonTerminals#builtinTypeIdent|syntax diagram]]%%-] Changed lines 1215-1217 from:
to:
builtinTypeIdent := Ident ; Changed lines 1218-1220 from:
%silver% [-[[SyntaxDiagrams.NonTerminals# to:
!!!!!#61.4 Restricted Export \ %silver% [-[[SyntaxDiagrams.NonTerminals#restrictedExport|syntax diagram]]%%-] Changed lines 1221-1223 from:
to:
restrictedExport := '*' ; Changed lines 1224-1226 from:
[[# !!!!!#62 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#propertyToBindTo]] !!!!!#62 Property To Bind To \ %silver% [-[[SyntaxDiagrams.NonTerminals#propertyToBindTo|syntax diagram]]%%-] Changed lines 1228-1229 from:
to:
propertyToBindTo := memMgtProperty | collectionProperty | scalarProperty | TFLAGS Changed lines 1233-1235 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#memMgtProperty]] !!!!!#62.1 Memory Management Property \ %silver% [-[[SyntaxDiagrams.NonTerminals#memMgtProperty|syntax diagram]]%%-] Changed lines 1237-1240 from:
restrictedExport? procedureSignature ) to:
memMgtProperty := TDYN | TREFC Changed lines 1242-1244 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#collectionProperty]] !!!!!#62.2 Collection Property \ %silver% [-[[SyntaxDiagrams.NonTerminals#collectionProperty|syntax diagram]]%%-] Changed lines 1246-1247 from:
to:
collectionProperty := TORDERED | TSORTED | TLIMIT Changed lines 1251-1253 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#scalarProperty]] !!!!!#62.3 Scalar Property \ %silver% [-[[SyntaxDiagrams.NonTerminals#scalarProperty|syntax diagram]]%%-] Changed lines 1255-1256 from:
to:
scalarProperty := TSCALAR | TMAX | TMIN Changed lines 1260-1262 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#procRequirement]] !!!!!#63 Procedure Requirement \ %silver% [-[[SyntaxDiagrams.NonTerminals#procRequirement|syntax diagram]]%%-] Changed lines 1264-1265 from:
to:
procRequirement := PROCEDURE ( '[' ( entityToBindTo | COROUTINE ) ']' ( procedureSignature | '=' NONE ) | restrictedExport? procedureSignature ) Changed lines 1271-1273 from:
[[# !!!!!#64 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#entityToBindTo]] !!!!!#64 Entity To Bind To \ %silver% [-[[SyntaxDiagrams.NonTerminals#entityToBindTo|syntax diagram]]%%-] Changed lines 1275-1276 from:
to:
entityToBindTo := bindableResWord | bindableOperator | bindableMacro Changed lines 1280-1282 from:
[[# !!!!!#64. %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#bindableResWord]] !!!!!#64.1 Bindable Reserved Word \ %silver% [-[[SyntaxDiagrams.NonTerminals#bindableResWord|syntax diagram]]%%-] Changed lines 1284-1286 from:
IN | DIV | MOD | unaryMinus to:
bindableResWord := NEW | RETAIN | RELEASE | COPY | bindableFor Changed lines 1289-1291 from:
[[# !!!!!#64. %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#bindableFor]] !!!!!#64.2 Bindable FOR \ %silver% [-[[SyntaxDiagrams.NonTerminals#bindableFor|syntax diagram]]%%-] Changed lines 1293-1295 from:
to:
bindableFor := FOR forBindingDifferentiator? ; Changed lines 1298-1300 from:
[[# !!!!!#64. %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#forBindingDifferentiator]] !!!!!#64.3 FOR Binding Differentiator \ %silver% [-[[SyntaxDiagrams.NonTerminals#forBindingDifferentiator|syntax diagram]]%%-] Changed lines 1302-1304 from:
SXF | VAL | multiBindableMacro1 | multiBindableMacro2 | multiBindableMacro3 to:
forBindingDifferentiator := '|' ( '++' | '--' ) Changed lines 1307-1309 from:
[[# !!!!!#64. %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#bindableOperator]] !!!!!#64.4 Bindable Operator \ %silver% [-[[SyntaxDiagrams.NonTerminals#bindableOperator|syntax diagram]]%%-] Changed lines 1311-1312 from:
to:
bindableOperator := '+' | '-' | '*' | '/' | '\' | '=' | '<' | '>' | '*.' | '::' IN | DIV | MOD | unaryMinus Changed lines 1317-1319 from:
[[# !!!!!#64. %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#unaryMinus]] !!!!!#64.5 Unary Minus \ %silver% [-[[SyntaxDiagrams.NonTerminals#unaryMinus|syntax diagram]]%%-] Changed lines 1321-1323 from:
to:
unaryMinus := '+/-' ; Changed lines 1324-1326 from:
[[# !!!!!#64. %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#bindableMacro]] !!!!!#64.6 Bindable Macro \ %silver% [-[[SyntaxDiagrams.NonTerminals#bindableMacro|syntax diagram]]%%-] Changed lines 1328-1329 from:
to:
bindableMacro := ABS | LENGTH | EXISTS | SEEK | SUBSET | READ | READNEW | WRITE | WRITEF | SXF | VAL | multiBindableMacro1 | multiBindableMacro2 | multiBindableMacro3 Changed lines 1334-1336 from:
[[# !!!!!#64. %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#multiBindableMacro1]] !!!!!#64.7 Multi-Bindable Macro 1 \ %silver% [-[[SyntaxDiagrams.NonTerminals#multiBindableMacro1|syntax diagram]]%%-] Changed lines 1338-1339 from:
to:
multiBindableMacro1 := ( COUNT | VALUE ) bindingDifferentiator1? Changed lines 1343-1345 from:
[[# !!!!!#64. %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#bindingDifferentiator1]] !!!!!#64.8 Binding Differentiator 1 \ %silver% [-[[SyntaxDiagrams.NonTerminals#bindingDifferentiator1|syntax diagram]]%%-] Changed lines 1347-1348 from:
to:
bindingDifferentiator1 := '|' '#' Changed lines 1352-1354 from:
[[# !!!!!#64. %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#multiBindableMacro2]] !!!!!#64.9 Multi-Bindable Macro 2 \ %silver% [-[[SyntaxDiagrams.NonTerminals#multiBindableMacro2|syntax diagram]]%%-] Changed lines 1356-1357 from:
to:
multiBindableMacro2 := ( STORE | INSERT | REMOVE ) bindingDifferentiator2? Added lines 1360-1386:
[[#bindingDifferentiator2]] !!!!!#64.10 Binding Differentiator 2 \ %silver% [-[[SyntaxDiagrams.NonTerminals#bindingDifferentiator2|syntax diagram]]%%-] [@ bindingDifferentiator2 := '|' ( ',' | '#' | '*' ) ; @] [[#multiBindableMacro3]] !!!!!#64.11 Multi-Bindable Macro 3 \ %silver% [-[[SyntaxDiagrams.NonTerminals#multiBindableMacro3|syntax diagram]]%%-] [@ multiBindableMacro3 := APPEND bindingDifferentiator3? ; @] [[#bindingDifferentiator3]] !!!!!#64.12 Binding Differentiator 3 \ %silver% [-[[SyntaxDiagrams.NonTerminals#bindingDifferentiator3|syntax diagram]]%%-] [@ bindingDifferentiator3 := '|' ( ',' | '*' ) ; @] 2015-09-24 09:10
by -
Changed line 300 from:
!!!!!#16.1 to:
!!!!!#16.1 Value Count \ Changed line 303 from:
to:
valueCount := constExpression ; 2015-09-24 09:09
by -
Changed line 295 from:
ARRAY to:
ARRAY lessThan? valueCount ( ',' valueCount )* OF typeIdent Changed line 299 from:
[[# to:
[[#valueCount]] Changed line 301 from:
%silver% [-[[SyntaxDiagrams.NonTerminals# to:
%silver% [-[[SyntaxDiagrams.NonTerminals#valueCount|syntax diagram]]%%-] Changed line 569 from:
TYPE ( Ident '=' to:
TYPE ( Ident '=' typeDeclTail ';' )+ | 2015-09-22 12:53
by -
Changed line 849 from:
'*' | '/' | DIV | MOD | AND | to:
'*' | '/' | DIV | MOD | AND | setDiffOp Deleted lines 857-863:
[[#dotProductOp]] !!!!!#48.3 Dot Product Operator \ %silver% [-[[SyntaxDiagrams.NonTerminals#dotProductOp|syntax diagram]]%%-] [@ dotProductOp := '*.' ; 2015-09-22 11:25
by -
Changed line 799 from:
'=' | '#' | '<' | '<=' | '>' | '>=' | IN to:
'=' | '#' | '<' | '<=' | '>' | '>=' | IN | identityOp Changed lines 803-805 from:
[[# !!!!!#46.2 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#identityOp]] !!!!!#46.2 Identity Operator \ %silver% [-[[SyntaxDiagrams.NonTerminals#identityOp|syntax diagram]]%%-] Changed line 807 from:
to:
identityOp := '==' ; Changed lines 810-812 from:
[[# !!!!!# %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#simpleExpression]] !!!!!#47 Simple Expression \ %silver% [-[[SyntaxDiagrams.NonTerminals#simpleExpression|syntax diagram]]%%-] Changed lines 814-816 from:
to:
simpleExpression := ( '+' | '-' )? term ( operL2 term )* ; Changed lines 819-821 from:
[[# !!!!!#47 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#operL2]] !!!!!#47.1 Level-2 Operator \ %silver% [-[[SyntaxDiagrams.NonTerminals#operL2|syntax diagram]]%%-] Changed lines 823-824 from:
to:
operL2 := '+' | '-' | OR | concatOp Changed lines 828-830 from:
[[# !!!!!#47. %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#concatOp]] !!!!!#47.2 Concatenation Operator \ %silver% [-[[SyntaxDiagrams.NonTerminals#concatOp|syntax diagram]]%%-] Changed lines 832-834 from:
to:
concatOp := '&' ; 2015-09-17 18:17
by -
Changed line 14 from:
compilationUnit : to:
compilationUnit := Changed line 26 from:
definitionModule : to:
definitionModule := Changed lines 38-42 from:
moduleIdent : Ident ; blueprintIdent : Ident ; typeToExtend : Ident ; to:
moduleIdent := Ident ; blueprintIdent := Ident ; typeToExtend := Ident ; Changed line 49 from:
blueprintToObey : blueprintIdent ; to:
blueprintToObey := blueprintIdent ; Changed line 56 from:
importList : to:
importList := Changed line 65 from:
libGenDirective : to:
libGenDirective := Changed lines 74-78 from:
libIdent : Ident ; template : Ident ; placeholder : Ident ; to:
libIdent := Ident ; template := Ident ; placeholder := Ident ; Changed line 85 from:
replacement : to:
replacement := Changed line 94 from:
importDirective : to:
importDirective := Changed line 105 from:
enumTypeIdent : typeIdent ; to:
enumTypeIdent := typeIdent ; Changed line 112 from:
typeIdent : qualident ; to:
typeIdent := qualident ; Changed line 119 from:
identifiersToImport : to:
identifiersToImport := Changed line 123 from:
modulesToImport : identifiersToImport ; to:
modulesToImport := identifiersToImport ; Changed line 130 from:
reExport : '+' ; to:
reExport := '+' ; Changed line 137 from:
importAll : '*' ; to:
importAll := '*' ; Changed line 144 from:
qualident : to:
qualident := Changed line 153 from:
definition : to:
definition := Changed line 165 from:
constDefinition : to:
constDefinition := Changed line 175 from:
constExpression : expression ; to:
constExpression := expression ; Changed line 182 from:
restrictedExport : '*' ; to:
restrictedExport := '*' ; Changed line 189 from:
typeDefinition : to:
typeDefinition := Changed line 198 from:
variableDeclaration : to:
variableDeclaration := Changed line 207 from:
identList : to:
identList := Changed line 216 from:
range : to:
range := Changed line 225 from:
greaterThan : '>' ; to:
greaterThan := '>' ; Changed line 232 from:
lessThan : '<' ; to:
lessThan := '<' ; Changed line 239 from:
type : to:
type := Changed line 249 from:
derivedSubType : to:
derivedSubType := Changed lines 260-262 from:
ordinalOrScalarType : typeIdent ; dynamicTypeIdent : typeIdent ; to:
ordinalOrScalarType := typeIdent ; dynamicTypeIdent := typeIdent ; Changed line 269 from:
enumType : to:
enumType := Changed line 278 from:
enumTypeToExtend : typeIdent ; to:
enumTypeToExtend := typeIdent ; Changed line 285 from:
setType : to:
setType := Changed line 294 from:
arrayType : to:
arrayType := Changed line 303 from:
componentCount : constExpression ; to:
componentCount := constExpression ; Changed line 310 from:
recordType : to:
recordType := Changed line 330 from:
recTypeToExtend : typeIdent ; to:
recTypeToExtend := typeIdent ; Changed line 337 from:
indeterminateField : to:
indeterminateField := Changed line 346 from:
discriminantFieldIdent : Ident ; to:
discriminantFieldIdent := Ident ; Changed line 353 from:
pointerType : to:
pointerType := Changed line 362 from:
coroutineType : to:
coroutineType := Changed line 378 from:
procedureType : to:
procedureType := Changed line 387 from:
formalType : to:
formalType := Changed line 396 from:
simpleFormalType : to:
simpleFormalType := Changed line 405 from:
castingFormalType : to:
castingFormalType := Changed line 414 from:
addressTypeIdent : to:
addressTypeIdent := Changed line 423 from:
attributedFormalType : to:
attributedFormalType := Changed line 432 from:
simpleVariadicFormalType : to:
simpleVariadicFormalType := Changed line 441 from:
reqNumOfArgs : to:
reqNumOfArgs := Changed line 450 from:
terminator : to:
terminator := Changed line 459 from:
constQualident : qualident ; to:
constQualident := qualident ; Changed line 466 from:
variadicFormalType : to:
variadicFormalType := Changed line 477 from:
nonVariadicFormalType : to:
nonVariadicFormalType := Changed line 486 from:
procedureHeader : to:
procedureHeader := Changed line 496 from:
procedureSignature : to:
procedureSignature := Changed line 505 from:
formalParams : to:
formalParams := Changed line 515 from:
attributedFormalParams : to:
attributedFormalParams := Changed line 525 from:
variadicFormalParams : to:
variadicFormalParams := Changed line 536 from:
nonVariadicFormalParams : to:
nonVariadicFormalParams := Changed line 548 from:
implOrPrgmModule : to:
implOrPrgmModule := Changed line 558 from:
block : to:
block := Changed line 567 from:
declaration : to:
declaration := Changed line 579 from:
statementSequence : to:
statementSequence := Changed line 588 from:
statement : to:
statement := Changed line 599 from:
memMgtOperation : to:
memMgtOperation := Changed lines 610-612 from:
initSize : expression ; initValue : expression ; to:
initSize := expression ; initValue := expression ; Changed line 619 from:
updateOrProcCall : to:
updateOrProcCall := Changed line 629 from:
incOrDecSuffix : to:
incOrDecSuffix := Changed line 638 from:
ifStatement : to:
ifStatement := Changed line 650 from:
boolExpression : expression ; to:
boolExpression := expression ; Changed line 657 from:
caseStatement : to:
caseStatement := Changed line 666 from:
case : to:
case := Changed line 675 from:
caseLabels : to:
caseLabels := Changed line 684 from:
loopStatement : to:
loopStatement := Changed line 693 from:
whileStatement : to:
whileStatement := Changed line 702 from:
repeatStatement : to:
repeatStatement := Changed line 711 from:
forStatement : to:
forStatement := Changed line 720 from:
forLoopVariants : to:
forLoopVariants := Changed lines 730-732 from:
accessor : Ident ; value : Ident ; to:
accessor := Ident ; value := Ident ; Changed line 739 from:
iterableEntity : to:
iterableEntity := Changed line 748 from:
ascOrDesc : incOrDecSuffix ; to:
ascOrDesc := incOrDecSuffix ; Changed line 755 from:
ordinalType : typeIdent ; to:
ordinalType := typeIdent ; Changed line 762 from:
designator : to:
designator := Changed line 771 from:
designatorTail : to:
designatorTail := Changed line 780 from:
exprListOrSlice : to:
exprListOrSlice := Changed line 789 from:
expression : to:
expression := Changed line 798 from:
operL1 : to:
operL1 := Changed line 807 from:
concatOp : '&' ; to:
concatOp := '&' ; Changed line 814 from:
identityOp : '==' ; to:
identityOp := '==' ; Changed line 821 from:
simpleExpression : to:
simpleExpression := Changed line 830 from:
operL2 : to:
operL2 := Changed line 839 from:
term : to:
term := Changed line 848 from:
operL3 : to:
operL3 := Changed line 857 from:
setDiffOp : '\' ; to:
setDiffOp := '\' ; Changed line 864 from:
dotProductOp : '*.' ; to:
dotProductOp := '*.' ; Changed line 871 from:
simpleTerm : to:
simpleTerm := Changed line 880 from:
factorOrTypeConv : to:
factorOrTypeConv := Changed line 889 from:
factor : to:
factor := Changed line 899 from:
actualParameters : to:
actualParameters := Changed line 908 from:
expressionList : to:
expressionList := Changed line 917 from:
structuredValue : to:
structuredValue := Changed line 926 from:
valueComponent : to:
valueComponent := Changed line 935 from:
runtimeExpression : expression ; to:
runtimeExpression := expression ; Changed line 945 from:
blueprint : to:
blueprint := Changed line 957 from:
blueprintIdent : Ident ; to:
blueprintIdent := Ident ; Changed lines 964-966 from:
blueprintToRefine : blueprintIdent ; blueprintForTypeToExtend : blueprintIdent ; to:
blueprintToRefine := blueprintIdent ; blueprintForTypeToExtend := blueprintIdent ; Changed line 973 from:
typeClassification : to:
typeClassification := Changed line 983 from:
determinedClassification : to:
determinedClassification := Changed line 992 from:
refinableClassification : to:
refinableClassification := Changed line 1001 from:
classificationIdent : Ident ; to:
classificationIdent := Ident ; Changed line 1008 from:
literalCompatibility : to:
literalCompatibility := Changed line 1017 from:
protoLiteral : to:
protoLiteral := Changed line 1026 from:
protoLiteralIdent : Ident ; to:
protoLiteralIdent := Ident ; Changed line 1033 from:
structuredProtoLiteral : to:
structuredProtoLiteral := Changed line 1046 from:
reqValueCount : to:
reqValueCount := Changed line 1054 from:
greaterThan : '>' ; to:
greaterThan := '>' ; Changed line 1068 from:
builtinOrReferential : Ident ; to:
builtinOrReferential := Ident ; Changed line 1075 from:
constraint : to:
constraint := Changed line 1084 from:
constraintTerm : to:
constraintTerm := Changed line 1094 from:
bindableEntityOrProperty : to:
bindableEntityOrProperty := Changed line 1103 from:
oneWayDependency : to:
oneWayDependency := Changed line 1112 from:
mutualDependencyOrExclusion : to:
mutualDependencyOrExclusion := Changed line 1121 from:
termList : to:
termList := Changed line 1130 from:
classificationOrFlagIdent : Ident ; to:
classificationOrFlagIdent := Ident ; Changed line 1137 from:
requirement : to:
requirement := Changed line 1146 from:
condition : to:
condition := Changed line 1155 from:
boolConstIdent : Ident ; to:
boolConstIdent := Ident ; Changed line 1162 from:
typeRequirement : to:
typeRequirement := Changed line 1171 from:
constRequirement : to:
constRequirement := Changed line 1182 from:
simpleConstRequirement : to:
simpleConstRequirement := Changed line 1190 from:
constExpression : expression ; to:
constExpression := expression ; Changed line 1197 from:
builtinTypeIdent : Ident ; to:
builtinTypeIdent := Ident ; Changed line 1203 from:
restrictedExport : '*' ; to:
restrictedExport := '*' ; Changed line 1210 from:
propertyToBindTo : to:
propertyToBindTo := Changed line 1219 from:
memMgtProperty : to:
memMgtProperty := Changed line 1228 from:
collectionProperty : to:
collectionProperty := Changed line 1237 from:
scalarProperty : to:
scalarProperty := Changed line 1246 from:
procRequirement : to:
procRequirement := Changed line 1257 from:
entityToBindTo : to:
entityToBindTo := Changed line 1266 from:
bindableResWord : to:
bindableResWord := Changed line 1275 from:
bindableFor : to:
bindableFor := Changed line 1284 from:
forBindingDifferentiator : to:
forBindingDifferentiator := Changed line 1293 from:
bindableOperator : to:
bindableOperator := Changed line 1303 from:
unaryMinus : '+/-' ; to:
unaryMinus := '+/-' ; Changed line 1310 from:
bindableMacro : to:
bindableMacro := Changed line 1320 from:
multiBindableMacro1 : to:
multiBindableMacro1 := Changed line 1329 from:
bindingDifferentiator1 : to:
bindingDifferentiator1 := Changed line 1338 from:
multiBindableMacro2 : to:
multiBindableMacro2 := Changed line 1347 from:
bindingDifferentiator2 : to:
bindingDifferentiator2 := Changed line 1356 from:
multiBindableMacro3 : to:
multiBindableMacro3 := Changed line 1365 from:
bindingDifferentiator3 : to:
bindingDifferentiator3 := Changed line 1368 from:
@] to:
@] 2015-09-16 02:35
by - 2015-09-16 02:34
by -
Changed line 1 from:
%silver%'''[-[[Spec.Grammar|Grammar]] | [[EBNF.Terminals|Terminals]]-]'''%% to:
%silver%'''[-[[Spec.Grammar|<< Grammar]] | [[EBNF.Terminals|Terminals >>]]-]'''%% 2015-09-16 02:33
by -
Changed line 1 from:
% to:
%silver%'''[-[[Spec.Grammar|Grammar]] | [[EBNF.Terminals|Terminals]]-]'''%% 2015-09-16 02:32
by -
Added lines 1-2:
% silver%'''[-[[Spec.Grammar|Grammar]] | [[EBNF.Terminals|Terminals]]-]'''%% 2015-09-16 02:01
by - changed factorOrNegation to simpleTerm
Changed line 838 from:
to:
simpleTerm ( operL3 simpleTerm )* Changed lines 865-867 from:
[[# !!!!!#49 %silver% [-[[SyntaxDiagrams.NonTerminals# to:
[[#simpleTerm]] !!!!!#49 Simple Term \ %silver% [-[[SyntaxDiagrams.NonTerminals#simpleTerm|syntax diagram]]%%-] Changed line 869 from:
to:
simpleTerm : 2015-09-15 08:21
by - anchoring
Added line 8:
[[#compilationUnit]] Added line 32:
[[#moduleIdent]][[#blueprintIdent]][[#typeToExtend]] Added line 43:
[[#blueprintToObey]] Added line 50:
[[#importList]] Added line 59:
[[#libGenDirective]] Added line 68:
[[#libIdent]][[#template]][[#placeholder]] Added line 79:
[[#replacement]] Added line 88:
[[#importDirective]] Added line 99:
[[#enumTypeIdent]] Added line 106:
[[#typeIdent]] Added line 113:
[[#identifiersToImport]][[#modulesToImport]] Added line 124:
[[#reExport]] Added line 131:
[[#importAll]] Added line 138:
[[#qualident]] Added line 147:
[[#definition]] Added line 159:
[[#constDefinition]] Added line 169:
[[#constExpression]] Added line 176:
[[#restrictedExport]] Added line 183:
[[#typeDefinition]] Added line 192:
[[#variableDeclaration]] Added line 201:
[[#identList]] Added line 210:
[[#range]] Added line 219:
[[#greaterThan]] Added line 226:
[[#lessThan]] Added line 233:
[[#type]] Added line 243:
[[#derivedSubType]] Added line 254:
[[#ordinalOrScalarType]][[#dynamicTypeIdent]] Added line 263:
[[#enumType]] Added line 272:
[[#enumTypeToExtend]] Added line 279:
[[#setType]] Added line 288:
[[#arrayType]] Added line 297:
[[#componentCount]] Added line 304:
[[#recordType]] Added line 315:
[[#fieldList]] Added line 324:
[[#recTypeToExtend]] Added line 331:
[[#indeterminateField]] Added line 340:
[[#discriminantFieldIdent]] Added line 347:
[[#pointerType]] Added line 356:
[[#coroutineType]] Added line 365:
[[#assocProcType]] Added line 372:
[[#procedureType]] Added line 381:
[[#formalType]] Added line 390:
[[#simpleFormalType]] Added line 399:
[[#castingFormalType]] Added line 408:
[[#addressTypeIdent]] Added line 417:
[[#attributedFormalType]] Added line 426:
[[#simpleVariadicFormalType]] Added line 435:
[[#reqNumOfArgs]] Added line 444:
[[#terminator]] Added line 453:
[[#constQualident]] Added line 460:
[[#variadicFormalType]] Added line 471:
[[#nonVariadicFormalType]] Added line 480:
[[#procedureHeader]] Added line 490:
[[#procedureSignature]] Added line 499:
[[#formalParams]] Added line 509:
[[#attributedFormalParams]] Added line 519:
[[#variadicFormalParams]] Added line 530:
[[#nonVariadicFormalParams]] Changed lines 542-543 from:
[[#implOrPrgmModule]] \ to:
[[#implOrPrgmModule]] !!!!!#32 Implementation Or Program Module \ Deleted line 544:
Added line 552:
[[#block]] Added line 561:
[[#declaration]] Added line 573:
[[#statementSequence]] Added line 582:
[[#statement]] Added line 593:
[[#memMgtOperation]] Added line 604:
[[#initSize]][[#initValue]] Added line 613:
[[#updateOrProcCall]] Added line 623:
[[#incOrDecSuffix]] Added line 632:
[[#ifStatement]] Added line 644:
[[#boolExpression]] Added line 651:
[[#caseStatement]] Added line 660:
[[#case]] Added line 669:
[[#caseLabels]] Added line 678:
[[#loopStatement]] Added line 687:
[[#whileStatement]] Added line 696:
[[#repeatStatement]] Added line 705:
[[#forStatement]] Added line 714:
[[#forLoopVariants]] Added line 724:
[[#accessor]][[#value]] Added line 733:
[[#iterableEntity]] Added line 742:
[[#ascOrDesc]] Added line 749:
[[#ordinalType]] Added line 756:
[[#designator]] Added line 765:
[[#designatorTail]] Added line 774:
[[#exprListOrSlice]] Added line 783:
[[#expression]] Added line 792:
[[#operL1]] Added line 801:
[[#concatOp]] Added line 808:
[[#identityOp]] Added line 815:
[[#simpleExpression]] Added line 824:
[[#operL2]] Added line 833:
[[#term]] Added line 842:
[[#operL3]] Added line 851:
[[#setDiffOp]] Added line 858:
[[#dotProductOp]] Added line 865:
[[#factorOrNegation]] Added line 874:
[[#factorOrTypeConv]] Added line 883:
[[#factor]] Added line 893:
[[#actualParameters]] Added line 902:
[[#expressionList]] Added line 911:
[[#structuredValue]] Added line 920:
[[#valueComponent]] Added line 929:
[[#runtimeExpression]] Changed lines 939-940 from:
[[#blueprint]] \ to:
[[#blueprint]] !!!!!#55 Blueprint \ Deleted line 941:
Added line 951:
[[#blueprintIdent]] Added line 958:
[[#blueprintToRefine]][[#blueprintForTypeToExtend]] Added line 967:
[[#typeClassification]] Added line 977:
[[#determinedClassification]] Added line 986:
[[#refinableClassification]] Added line 995:
[[#classificationIdent]] Added line 1002:
[[#literalCompatibility]] Added line 1011:
[[#protoLiteral]] Added line 1020:
[[#protoLiteralIdent]] Added line 1027:
[[#structuredProtoLiteral]] Added line 1040:
[[#reqValueCount]] Added line 1055:
[[#wholeNumber]] Added line 1062:
[[#builtinOrReferential]] Added line 1069:
[[#constraint]] Added line 1078:
[[#constraintTerm]] Added line 1088:
[[#bindableEntityOrProperty]] Added line 1097:
[[#oneWayDependency]] Added line 1106:
[[#mutualDependencyOrExclusion]] Added line 1115:
[[#termList]] Added line 1124:
[[#classificationOrFlagIdent]] Added line 1131:
[[#requirement]] Added line 1140:
[[#condition]] Added line 1149:
[[#boolConstIdent]] Added line 1156:
[[#typeRequirement]] Added line 1165:
[[#constRequirement]] Added line 1176:
[[#simpleConstRequirement]] Added line 1191:
[[#builtinTypeIdent]] Added line 1204:
[[#propertyToBindTo]] Added line 1213:
[[#memMgtProperty]] Added line 1222:
[[#collectionProperty]] Added line 1231:
[[#scalarProperty]] Added line 1240:
[[#procRequirement]] Added line 1251:
[[#entityToBindTo]] Added line 1260:
[[#bindableResWord]] Added line 1269:
[[#bindableFor]] Added line 1278:
[[#forBindingDifferentiator]] Added line 1287:
[[#bindableOperator]] Added line 1297:
[[#unaryMinus]] Added line 1304:
[[#bindableMacro]] Added line 1314:
[[#multiBindableMacro1]] Added line 1323:
[[#bindingDifferentiator1]] Added line 1332:
[[#multiBindableMacro2]] Added line 1341:
[[#bindingDifferentiator2]] Added line 1350:
[[#multiBindableMacro3]] Added line 1359:
[[#bindingDifferentiator3]] 2015-09-15 07:56
by - anchoring
Changed lines 8-9 from:
!!!!!#1 Compilation to:
!!!!!#1 Compilation Unit \ %silver% [-[[SyntaxDiagrams.NonTerminals#compilationUnit|syntax diagram]]%%-] Changed lines 20-21 from:
!!!!!#2 Definition to:
!!!!!#2 Definition Module \ %silver% [-[[SyntaxDiagrams.NonTerminals#definitionModule|syntax diagram]]%%-] Changed lines 31-32 from:
!!!!!#2.1 Module Identifier, Blueprint Identifier, Type To to:
!!!!!#2.1 Module Identifier, Blueprint Identifier, Type To Extend \ %silver% [-[[SyntaxDiagrams.NonTerminals#moduleIdent|syntax diagram]]%%-] Changed lines 41-42 from:
!!!!!#2.2 Blueprint To to:
!!!!!#2.2 Blueprint To Obey \ %silver% [-[[SyntaxDiagrams.NonTerminals#blueprintToObey|syntax diagram]]%%-] Changed lines 47-48 from:
!!!!!#3 Import to:
!!!!!#3 Import List \ %silver% [-[[SyntaxDiagrams.NonTerminals#importList|syntax diagram]]%%-] Changed lines 55-56 from:
!!!!!#4 Library Generation to:
!!!!!#4 Library Generation Directive \ %silver% [-[[SyntaxDiagrams.NonTerminals#libGenDirective|syntax diagram]]%%-] Changed lines 63-64 from:
!!!!!#4.1 Library Identifier, Template, to:
!!!!!#4.1 Library Identifier, Template, Placeholder \ %silver% [-[[SyntaxDiagrams.NonTerminals#libIdent|syntax diagram]]%%-] Changed lines 73-74 from:
!!!!!#4.2 to:
!!!!!#4.2 Replacement \ %silver% [-[[SyntaxDiagrams.NonTerminals#replacement|syntax diagram]]%%-] Changed lines 81-82 from:
!!!!!#5 Import to:
!!!!!#5 Import Directive \ %silver% [-[[SyntaxDiagrams.NonTerminals#importDirective|syntax diagram]]%%-] Changed lines 91-92 from:
!!!!!#5.1 Enumeration Type to:
!!!!!#5.1 Enumeration Type Identifier \ %silver% [-[[SyntaxDiagrams.NonTerminals#enumTypeIdent|syntax diagram]]%%-] Changed lines 97-98 from:
!!!!!#5.2 Type to:
!!!!!#5.2 Type Identifier \ %silver% [-[[SyntaxDiagrams.NonTerminals#typeIdent|syntax diagram]]%%-] Changed lines 103-104 from:
!!!!!#5.3 Identifiers To Import, Modules To to:
!!!!!#5.3 Identifiers To Import, Modules To Import \ %silver% [-[[SyntaxDiagrams.NonTerminals#identifiersToImport|syntax diagram]]%%-] Changed lines 113-114 from:
!!!!!#5.4 Re- to:
!!!!!#5.4 Re-Export \ %silver% [-[[SyntaxDiagrams.NonTerminals#reExport|syntax diagram]]%%-] Changed lines 119-120 from:
!!!!!#5.5 Import to:
!!!!!#5.5 Import All \ %silver% [-[[SyntaxDiagrams.NonTerminals#importAll|syntax diagram]]%%-] Changed lines 125-126 from:
!!!!!#6 Qualified to:
!!!!!#6 Qualified Identifier \ %silver% [-[[SyntaxDiagrams.NonTerminals#qualident|syntax diagram]]%%-] Changed lines 133-134 from:
!!!!!#7 to:
!!!!!#7 Definition \ %silver% [-[[SyntaxDiagrams.NonTerminals#definition|syntax diagram]]%%-] Changed lines 144-145 from:
!!!!!#8 Constant to:
!!!!!#8 Constant Definition \ %silver% [-[[SyntaxDiagrams.NonTerminals#constDefinition|syntax diagram]]%%-] Changed lines 153-154 from:
!!!!!#8.1 Constant to:
!!!!!#8.1 Constant Expression \ %silver% [-[[SyntaxDiagrams.NonTerminals#constExpression|syntax diagram]]%%-] Changed lines 159-160 from:
!!!!!#8.2 Restricted to:
!!!!!#8.2 Restricted Export \ %silver% [-[[SyntaxDiagrams.NonTerminals#restrictedExport|syntax diagram]]%%-] Changed lines 165-166 from:
!!!!!#9 Type to:
!!!!!#9 Type Definition \ %silver% [-[[SyntaxDiagrams.NonTerminals#typeDefinition|syntax diagram]]%%-] Changed lines 173-174 from:
!!!!!#10 Variable to:
!!!!!#10 Variable Declaration \ %silver% [-[[SyntaxDiagrams.NonTerminals#variableDeclaration|syntax diagram]]%%-] Changed lines 181-182 from:
!!!!!#11 Identifier to:
!!!!!#11 Identifier List \ %silver% [-[[SyntaxDiagrams.NonTerminals#identList|syntax diagram]]%%-] Changed lines 189-190 from:
!!!!!#12 to:
!!!!!#12 Range \ %silver% [-[[SyntaxDiagrams.NonTerminals#range|syntax diagram]]%%-] Changed lines 197-198 from:
!!!!!#12.1 Greater to:
!!!!!#12.1 Greater Than \ %silver% [-[[SyntaxDiagrams.NonTerminals#greaterThan|syntax diagram]]%%-] Changed lines 203-204 from:
!!!!!#12.2 Less to:
!!!!!#12.2 Less Than \ %silver% [-[[SyntaxDiagrams.NonTerminals#lessThan|syntax diagram]]%%-] Changed lines 209-210 from:
!!!!!#13 to:
!!!!!#13 Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#type|syntax diagram]]%%-] Changed lines 218-219 from:
!!!!!#13.1 Derived Sub- to:
!!!!!#13.1 Derived Sub-Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#derivedSubType|syntax diagram]]%%-] Changed lines 228-229 from:
!!!!!#13.2 Ordinal Or Scalar Type, Dynamic Type to:
!!!!!#13.2 Ordinal Or Scalar Type, Dynamic Type Identifier \ %silver% [-[[SyntaxDiagrams.NonTerminals#ordinalOrScalarType|syntax diagram]]%%-] Changed lines 236-237 from:
!!!!!#14 Enumeration to:
!!!!!#14 Enumeration Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#enumType|syntax diagram]]%%-] Changed lines 244-245 from:
!!!!!#14.1 Enumeration Type To to:
!!!!!#14.1 Enumeration Type To Extend \ %silver% [-[[SyntaxDiagrams.NonTerminals#enumTypeToExtend|syntax diagram]]%%-] Changed lines 250-251 from:
!!!!!#15 Set to:
!!!!!#15 Set Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#setType|syntax diagram]]%%-] Changed lines 258-259 from:
!!!!!#16 Array to:
!!!!!#16 Array Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#arrayType|syntax diagram]]%%-] Changed lines 266-267 from:
!!!!!#16.1 Component to:
!!!!!#16.1 Component Count \ %silver% [-[[SyntaxDiagrams.NonTerminals#componentCount|syntax diagram]]%%-] Changed lines 272-273 from:
!!!!!#17 Record to:
!!!!!#17 Record Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#recordType|syntax diagram]]%%-] Changed lines 282-283 from:
!!!!!#17.1 Field to:
!!!!!#17.1 Field List \ %silver% [-[[SyntaxDiagrams.NonTerminals#fieldList|syntax diagram]]%%-] Changed lines 290-291 from:
!!!!!#17.2 Record Type To to:
!!!!!#17.2 Record Type To Extend \ %silver% [-[[SyntaxDiagrams.NonTerminals#recTypeToExtend|syntax diagram]]%%-] Changed lines 296-297 from:
!!!!!#17.3 Indeterminate to:
!!!!!#17.3 Indeterminate Field \ %silver% [-[[SyntaxDiagrams.NonTerminals#indeterminateField|syntax diagram]]%%-] Changed lines 304-305 from:
!!!!!#17.4 Discriminant Field to:
!!!!!#17.4 Discriminant Field Ident \ %silver% [-[[SyntaxDiagrams.NonTerminals#discriminantFieldIdent|syntax diagram]]%%-] Changed lines 310-311 from:
!!!!!#18 Pointer to:
!!!!!#18 Pointer Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#pointerType|syntax diagram]]%%-] Changed lines 318-319 from:
!!!!!#19 Coroutine to:
!!!!!#19 Coroutine Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#coroutineType|syntax diagram]]%%-] Changed lines 326-327 from:
!!!!!#19.1 Associated Procedure to:
!!!!!#19.1 Associated Procedure Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#assocProcType|syntax diagram]]%%-] Changed lines 332-333 from:
!!!!!#20 Procedure to:
!!!!!#20 Procedure Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#procedureType|syntax diagram]]%%-] Changed lines 340-341 from:
!!!!!#20.1 Formal to:
!!!!!#20.1 Formal Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#formalType|syntax diagram]]%%-] Changed lines 348-349 from:
!!!!!#21 Simple Formal to:
!!!!!#21 Simple Formal Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#simpleFormalType|syntax diagram]]%%-] Changed lines 356-357 from:
!!!!!#21.1 Casting Formal to:
!!!!!#21.1 Casting Formal Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#castingFormalType|syntax diagram]]%%-] Changed lines 364-365 from:
!!!!!#21.2 Address Type to:
!!!!!#21.2 Address Type Identifier \ %silver% [-[[SyntaxDiagrams.NonTerminals#addressTypeIdent|syntax diagram]]%%-] Changed lines 372-373 from:
!!!!!#22 Attributed Formal to:
!!!!!#22 Attributed Formal Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#attributedFormalType|syntax diagram]]%%-] Changed lines 380-381 from:
!!!!!#23 Simple Variadic Formal to:
!!!!!#23 Simple Variadic Formal Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#simpleVariadicFormalType|syntax diagram]]%%-] Changed lines 388-389 from:
!!!!!#23.1 Required Number Of to:
!!!!!#23.1 Required Number Of Arguments \ %silver% [-[[SyntaxDiagrams.NonTerminals#reqNumOfArgs|syntax diagram]]%%-] Changed lines 396-397 from:
!!!!!#23.2 Argument List to:
!!!!!#23.2 Argument List Terminator \ %silver% [-[[SyntaxDiagrams.NonTerminals#terminator|syntax diagram]]%%-] Changed lines 404-405 from:
!!!!!#23.3 Constant Qualified to:
!!!!!#23.3 Constant Qualified Identifier \ %silver% [-[[SyntaxDiagrams.NonTerminals#constQualident|syntax diagram]]%%-] Changed lines 410-411 from:
!!!!!#24 Variadic Formal to:
!!!!!#24 Variadic Formal Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#variadicFormalType|syntax diagram]]%%-] Changed lines 420-421 from:
!!!!!#25 Non-Variadic Formal to:
!!!!!#25 Non-Variadic Formal Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#nonVariadicFormalType|syntax diagram]]%%-] Changed lines 428-429 from:
!!!!!#26 Procedure to:
!!!!!#26 Procedure Header \ %silver% [-[[SyntaxDiagrams.NonTerminals#procedureHeader|syntax diagram]]%%-] Changed lines 437-438 from:
!!!!!#27 Procedure to:
!!!!!#27 Procedure Signature \ %silver% [-[[SyntaxDiagrams.NonTerminals#procedureSignature|syntax diagram]]%%-] Changed lines 445-446 from:
!!!!!#28 Formal to:
!!!!!#28 Formal Parameters \ %silver% [-[[SyntaxDiagrams.NonTerminals#formalParams|syntax diagram]]%%-] Changed lines 454-455 from:
!!!!!#29 Attributed Formal to:
!!!!!#29 Attributed Formal Parameters \ %silver% [-[[SyntaxDiagrams.NonTerminals#attributedFormalParams|syntax diagram]]%%-] Changed lines 463-464 from:
!!!!!#30 Variadic Formal to:
!!!!!#30 Variadic Formal Parameters \ %silver% [-[[SyntaxDiagrams.NonTerminals#variadicFormalParams|syntax diagram]]%%-] Changed lines 473-474 from:
!!!!!#31 Non-Variadic Formal to:
!!!!!#31 Non-Variadic Formal Parameters \ %silver% [-[[SyntaxDiagrams.NonTerminals#nonVariadicFormalParams|syntax diagram]]%%-] Changed lines 484-485 from:
[[#implOrPrgmModule]] to:
[[#implOrPrgmModule]] \ %silver% [-[[SyntaxDiagrams.NonTerminals#implOrPrgmModule|syntax diagram]]%%-] Changed lines 494-495 from:
!!!!!#33 to:
!!!!!#33 Block \ %silver% [-[[SyntaxDiagrams.NonTerminals#block|syntax diagram]]%%-] Changed lines 502-503 from:
!!!!!#34 to:
!!!!!#34 Declaration \ %silver% [-[[SyntaxDiagrams.NonTerminals#declaration|syntax diagram]]%%-] Changed lines 513-514 from:
!!!!!#35 Statement to:
!!!!!#35 Statement Sequence \ %silver% [-[[SyntaxDiagrams.NonTerminals#statementSequence|syntax diagram]]%%-] Changed lines 521-522 from:
!!!!!#36 to:
!!!!!#36 Statement \ %silver% [-[[SyntaxDiagrams.NonTerminals#statement|syntax diagram]]%%-] Changed lines 531-532 from:
!!!!!#37 Memory Management to:
!!!!!#37 Memory Management Operation \ %silver% [-[[SyntaxDiagrams.NonTerminals#memMgtOperation|syntax diagram]]%%-] Changed lines 541-542 from:
!!!!!#37.1 to:
!!!!!#37.1 Initialisation Size, Initialisation Value \ %silver% [-[[SyntaxDiagrams.NonTerminals#initSize|syntax diagram]]%%-] Changed lines 549-550 from:
!!!!!#38 Update Or Procedure to:
!!!!!#38 Update Or Procedure Call \ %silver% [-[[SyntaxDiagrams.NonTerminals#updateOrProcCall|syntax diagram]]%%-] Changed lines 558-559 from:
!!!!!#38.1 Increment Or Decrement to:
!!!!!#38.1 Increment Or Decrement Suffix \ %silver% [-[[SyntaxDiagrams.NonTerminals#incOrDecSuffix|syntax diagram]]%%-] Changed lines 566-567 from:
!!!!!#39 IF to:
!!!!!#39 IF Statement \ %silver% [-[[SyntaxDiagrams.NonTerminals#ifStatement|syntax diagram]]%%-] Changed lines 577-578 from:
!!!!!#39.1 Boolean to:
!!!!!#39.1 Boolean Expression \ %silver% [-[[SyntaxDiagrams.NonTerminals#boolExpression|syntax diagram]]%%-] Changed lines 583-584 from:
!!!!!#40 CASE to:
!!!!!#40 CASE Statement \ %silver% [-[[SyntaxDiagrams.NonTerminals#caseStatement|syntax diagram]]%%-] Changed lines 591-592 from:
!!!!!#40.1 to:
!!!!!#40.1 Case \ %silver% [-[[SyntaxDiagrams.NonTerminals#case|syntax diagram]]%%-] Changed lines 599-600 from:
!!!!!#40.2 Case to:
!!!!!#40.2 Case Labels \ %silver% [-[[SyntaxDiagrams.NonTerminals#caseLabels|syntax diagram]]%%-] Changed lines 607-608 from:
!!!!!#41 LOOP to:
!!!!!#41 LOOP Statement \ %silver% [-[[SyntaxDiagrams.NonTerminals#loopStatement|syntax diagram]]%%-] Changed lines 615-616 from:
!!!!!#42 WHILE to:
!!!!!#42 WHILE Statement \ %silver% [-[[SyntaxDiagrams.NonTerminals#whileStatement|syntax diagram]]%%-] Changed lines 623-624 from:
!!!!!#43 REPEAT to:
!!!!!#43 REPEAT Statement \ %silver% [-[[SyntaxDiagrams.NonTerminals#repeatStatement|syntax diagram]]%%-] Changed lines 631-632 from:
!!!!!#44 FOR to:
!!!!!#44 FOR Statement \ %silver% [-[[SyntaxDiagrams.NonTerminals#forStatement|syntax diagram]]%%-] Changed lines 639-640 from:
!!!!!#44.1 FOR Loop to:
!!!!!#44.1 FOR Loop Variants \ %silver% [-[[SyntaxDiagrams.NonTerminals#forLoopVariants|syntax diagram]]%%-] Changed lines 648-649 from:
!!!!!#44.2 Accessor, to:
!!!!!#44.2 Accessor, Value \ %silver% [-[[SyntaxDiagrams.NonTerminals#accessor|syntax diagram]]%%-] Changed lines 656-657 from:
!!!!!#44.3 Iterable to:
!!!!!#44.3 Iterable Entity \ %silver% [-[[SyntaxDiagrams.NonTerminals#iterableEntity|syntax diagram]]%%-] Changed lines 664-665 from:
!!!!!#44.4 Ascender Or to:
!!!!!#44.4 Ascender Or Descender \ %silver% [-[[SyntaxDiagrams.NonTerminals#ascOrDesc|syntax diagram]]%%-] Changed lines 670-671 from:
!!!!!#44.5 Ordinal to:
!!!!!#44.5 Ordinal Type \ %silver% [-[[SyntaxDiagrams.NonTerminals#ordinalType|syntax diagram]]%%-] Changed lines 676-677 from:
!!!!!#45 to:
!!!!!#45 Designator \ %silver% [-[[SyntaxDiagrams.NonTerminals#designator|syntax diagram]]%%-] Changed lines 684-685 from:
!!!!!#45.1 Designator to:
!!!!!#45.1 Designator Tail \ %silver% [-[[SyntaxDiagrams.NonTerminals#designatorTail|syntax diagram]]%%-] Changed lines 692-693 from:
!!!!!#45.2 Expression List Or to:
!!!!!#45.2 Expression List Or Slice \ %silver% [-[[SyntaxDiagrams.NonTerminals#exprListOrSlice|syntax diagram]]%%-] Changed lines 700-701 from:
!!!!!#46 to:
!!!!!#46 Expression \ %silver% [-[[SyntaxDiagrams.NonTerminals#expression|syntax diagram]]%%-] Changed lines 708-709 from:
!!!!!#46.1 Level-1 to:
!!!!!#46.1 Level-1 Operator \ %silver% [-[[SyntaxDiagrams.NonTerminals#operL1|syntax diagram]]%%-] Changed lines 716-717 from:
!!!!!#46.2 Concatenation to:
!!!!!#46.2 Concatenation Operator \ %silver% [-[[SyntaxDiagrams.NonTerminals#concatOp|syntax diagram]]%%-] Changed lines 722-723 from:
!!!!!#46.3 Identity to:
!!!!!#46.3 Identity Operator \ %silver% [-[[SyntaxDiagrams.NonTerminals#identityOp|syntax diagram]]%%-] Changed lines 728-729 from:
!!!!!#47 Simple to:
!!!!!#47 Simple Expression \ %silver% [-[[SyntaxDiagrams.NonTerminals#simpleExpression|syntax diagram]]%%-] Changed lines 736-737 from:
!!!!!#47.1 Level-2 to:
!!!!!#47.1 Level-2 Operator \ %silver% [-[[SyntaxDiagrams.NonTerminals#operL2|syntax diagram]]%%-] Changed lines 744-745 from:
!!!!!#48 to:
!!!!!#48 Term \ %silver% [-[[SyntaxDiagrams.NonTerminals#term|syntax diagram]]%%-] Changed lines 752-753 from:
!!!!!#48.1 Level-3 to:
!!!!!#48.1 Level-3 Operator \ %silver% [-[[SyntaxDiagrams.NonTerminals#operL3|syntax diagram]]%%-] Changed lines 760-761 from:
!!!!!#48.2 Set Difference to:
!!!!!#48.2 Set Difference Operator \ %silver% [-[[SyntaxDiagrams.NonTerminals#setDiffOp|syntax diagram]]%%-] Changed lines 766-767 from:
!!!!!#48.3 Dot Product to:
!!!!!#48.3 Dot Product Operator \ %silver% [-[[SyntaxDiagrams.NonTerminals#dotProductOp|syntax diagram]]%%-] Changed lines 772-773 from:
!!!!!#49 Factor Or to:
!!!!!#49 Factor Or Negation \ %silver% [-[[SyntaxDiagrams.NonTerminals#factorOrNegation|syntax diagram]]%%-] Changed lines 780-781 from:
!!!!!#50 Factor Or Type to:
!!!!!#50 Factor Or Type Conversion \ %silver% [-[[SyntaxDiagrams.NonTerminals#factorOrTypeConv|syntax diagram]]%%-] Changed lines 788-789 from:
!!!!!#51 to:
!!!!!#51 Factor \ %silver% [-[[SyntaxDiagrams.NonTerminals#factor|syntax diagram]]%%-] Changed lines 797-798 from:
!!!!!#52 Actual to:
!!!!!#52 Actual Parameters \ %silver% [-[[SyntaxDiagrams.NonTerminals#actualParameters|syntax diagram]]%%-] Changed lines 805-806 from:
!!!!!#53 Expression to:
!!!!!#53 Expression List \ %silver% [-[[SyntaxDiagrams.NonTerminals#expressionList|syntax diagram]]%%-] Changed lines 813-814 from:
!!!!!#54 Structured to:
!!!!!#54 Structured Value \ %silver% [-[[SyntaxDiagrams.NonTerminals#structuredValue|syntax diagram]]%%-] Changed lines 821-822 from:
!!!!!#54.1 Value to:
!!!!!#54.1 Value Component \ %silver% [-[[SyntaxDiagrams.NonTerminals#valueComponent|syntax diagram]]%%-] Changed lines 829-830 from:
!!!!!#54.2 Runtime to:
!!!!!#54.2 Runtime Expression \ %silver% [-[[SyntaxDiagrams.NonTerminals#runtimeExpression|syntax diagram]]%%-] Changed lines 838-839 from:
[[#blueprint]] to:
[[#blueprint]] \ %silver% [-[[SyntaxDiagrams.NonTerminals#blueprint|syntax diagram]]%%-] Changed lines 850-851 from:
!!!!!#55.1 Blueprint to:
!!!!!#55.1 Blueprint Identifier \ %silver% [-[[SyntaxDiagrams.NonTerminals#blueprintIdent|syntax diagram]]%%-] Changed lines 856-857 from:
!!!!!#55.2 Blueprint To Refine, Blueprint For Type To to:
!!!!!#55.2 Blueprint To Refine, Blueprint For Type To Extend \ %silver% [-[[SyntaxDiagrams.NonTerminals#blueprintToRefine|syntax diagram]]%%-] Changed lines 864-865 from:
!!!!!#56 Type to:
!!!!!#56 Type Classification \ %silver% [-[[SyntaxDiagrams.NonTerminals#typeClassification|syntax diagram]]%%-] Changed lines 873-874 from:
!!!!!#56.1 Determined to:
!!!!!#56.1 Determined Classification \ %silver% [-[[SyntaxDiagrams.NonTerminals#determinedClassification|syntax diagram]]%%-] Changed lines 881-882 from:
!!!!!#56.2 Refinable to:
!!!!!#56.2 Refinable Classification \ %silver% [-[[SyntaxDiagrams.NonTerminals#refinableClassification|syntax diagram]]%%-] Changed lines 889-890 from:
!!!!!#56.3 Classification to:
!!!!!#56.3 Classification Identifier \ %silver% [-[[SyntaxDiagrams.NonTerminals#classificationIdent|syntax diagram]]%%-] Changed lines 895-896 from:
!!!!!#57 Literal to:
!!!!!#57 Literal Compatibility \ %silver% [-[[SyntaxDiagrams.NonTerminals#literalCompatibility|syntax diagram]]%%-] Changed lines 903-904 from:
!!!!!#57.1 Proto- to:
!!!!!#57.1 Proto-Literal \ %silver% [-[[SyntaxDiagrams.NonTerminals#protoLiteral|syntax diagram]]%%-] Changed lines 911-912 from:
!!!!!#57.2 Proto-Literal to:
!!!!!#57.2 Proto-Literal Identifier \ %silver% [-[[SyntaxDiagrams.NonTerminals#protoLiteralIdent|syntax diagram]]%%-] Changed lines 917-918 from:
!!!!!#58 Structured Proto- to:
!!!!!#58 Structured Proto-Literal \ %silver% [-[[SyntaxDiagrams.NonTerminals#structuredProtoLiteral|syntax diagram]]%%-] Changed lines 929-930 from:
!!!!!#58.1 Required Value to:
!!!!!#58.1 Required Value Count \ %silver% [-[[SyntaxDiagrams.NonTerminals#reqValueCount|syntax diagram]]%%-] Changed lines 937-938 from:
!!!!!#58.2 Greater to:
!!!!!#58.2 Greater Than \ %silver% [-[[SyntaxDiagrams.NonTerminals#greaterThan|syntax diagram]]%%-] Changed lines 943-944 from:
!!!!!#58.3 Whole to:
!!!!!#58.3 Whole Number \ %silver% [-[[SyntaxDiagrams.NonTerminals#wholeNumber|syntax diagram]]%%-] Changed lines 949-950 from:
!!!!!#58.4 Built-in Type Or Referential to:
!!!!!#58.4 Built-in Type Or Referential Identifier \ %silver% [-[[SyntaxDiagrams.NonTerminals#builtinOrReferential|syntax diagram]]%%-] Changed lines 955-956 from:
!!!!!#59 to:
!!!!!#59 Constraint \ %silver% [-[[SyntaxDiagrams.NonTerminals#constraint|syntax diagram]]%%-] Changed lines 963-964 from:
!!!!!#59.1 Constraint to:
!!!!!#59.1 Constraint Term \ %silver% [-[[SyntaxDiagrams.NonTerminals#constraintTerm|syntax diagram]]%%-] Changed lines 972-973 from:
!!!!!#59.2 Bindable Entity Or to:
!!!!!#59.2 Bindable Entity Or Property \ %silver% [-[[SyntaxDiagrams.NonTerminals#bindableEntityOrProperty|syntax diagram]]%%-] Changed lines 980-981 from:
!!!!!#59.3 One-Way to:
!!!!!#59.3 One-Way Dependency \ %silver% [-[[SyntaxDiagrams.NonTerminals#oneWayDependency|syntax diagram]]%%-] Changed lines 988-989 from:
!!!!!#59.4 Mutual Dependency Or to:
!!!!!#59.4 Mutual Dependency Or Exclusion \ %silver% [-[[SyntaxDiagrams.NonTerminals#mutualDependencyOrExclusion|syntax diagram]]%%-] Changed lines 996-997 from:
!!!!!#59.5 Term to:
!!!!!#59.5 Term List \ %silver% [-[[SyntaxDiagrams.NonTerminals#termList|syntax diagram]]%%-] Changed lines 1004-1005 from:
!!!!!#59.6 Classification Or Flag to:
!!!!!#59.6 Classification Or Flag Identifier \ %silver% [-[[SyntaxDiagrams.NonTerminals#classificationOrFlagIdent|syntax diagram]]%%-] Changed lines 1010-1011 from:
!!!!!#60 to:
!!!!!#60 Requirement \ %silver% [-[[SyntaxDiagrams.NonTerminals#requirement|syntax diagram]]%%-] Changed lines 1018-1019 from:
!!!!!#60.1 to:
!!!!!#60.1 Condition \ %silver% [-[[SyntaxDiagrams.NonTerminals#condition|syntax diagram]]%%-] Changed lines 1026-1027 from:
!!!!!#60.2 Boolean Constant to:
!!!!!#60.2 Boolean Constant Identifier \ %silver% [-[[SyntaxDiagrams.NonTerminals#boolConstIdent|syntax diagram]]%%-] Changed lines 1032-1033 from:
!!!!!#60.3 Type to:
!!!!!#60.3 Type Requirement \ %silver% [-[[SyntaxDiagrams.NonTerminals#typeRequirement|syntax diagram]]%%-] Changed lines 1040-1041 from:
!!!!!#61 Constant to:
!!!!!#61 Constant Requirement \ %silver% [-[[SyntaxDiagrams.NonTerminals#constRequirement|syntax diagram]]%%-] Changed lines 1050-1051 from:
!!!!!#61.1 Simple Constant to:
!!!!!#61.1 Simple Constant Requirement \ %silver% [-[[SyntaxDiagrams.NonTerminals#simpleConstRequirement|syntax diagram]]%%-] Changed lines 1058-1059 from:
!!!!!#61.2 Constant to:
!!!!!#61.2 Constant Expression \ %silver% [-[[SyntaxDiagrams.NonTerminals#constExpression|syntax diagram]]%%-] Changed lines 1064-1065 from:
!!!!!#61.3 Built-in Type to:
!!!!!#61.3 Built-in Type Identifier \ %silver% [-[[SyntaxDiagrams.NonTerminals#builtinTypeIdent|syntax diagram]]%%-] Changed lines 1070-1071 from:
!!!!!#61.4 Restricted to:
!!!!!#61.4 Restricted Export \ %silver% [-[[SyntaxDiagrams.NonTerminals#restrictedExport|syntax diagram]]%%-] Changed lines 1076-1077 from:
!!!!!#62 Property To Bind to:
!!!!!#62 Property To Bind To \ %silver% [-[[SyntaxDiagrams.NonTerminals#propertyToBindTo|syntax diagram]]%%-] Changed lines 1084-1085 from:
!!!!!#62.1 Memory Management to:
!!!!!#62.1 Memory Management Property \ %silver% [-[[SyntaxDiagrams.NonTerminals#memMgtProperty|syntax diagram]]%%-] Changed lines 1092-1093 from:
!!!!!#62.2 Collection to:
!!!!!#62.2 Collection Property \ %silver% [-[[SyntaxDiagrams.NonTerminals#collectionProperty|syntax diagram]]%%-] Changed lines 1100-1101 from:
!!!!!#62.3 Scalar to:
!!!!!#62.3 Scalar Property \ %silver% [-[[SyntaxDiagrams.NonTerminals#scalarProperty|syntax diagram]]%%-] Changed lines 1108-1109 from:
!!!!!#63 Procedure to:
!!!!!#63 Procedure Requirement \ %silver% [-[[SyntaxDiagrams.NonTerminals#procRequirement|syntax diagram]]%%-] Changed line 1111 from:
to:
procRequirement : Changed lines 1118-1119 from:
!!!!!#64 Entity To Bind to:
!!!!!#64 Entity To Bind To \ %silver% [-[[SyntaxDiagrams.NonTerminals#entityToBindTo|syntax diagram]]%%-] Changed lines 1126-1127 from:
!!!!!#64.1 Bindable Reserved to:
!!!!!#64.1 Bindable Reserved Word \ %silver% [-[[SyntaxDiagrams.NonTerminals#bindableResWord|syntax diagram]]%%-] Changed lines 1134-1135 from:
!!!!!#64.2 Bindable to:
!!!!!#64.2 Bindable FOR \ %silver% [-[[SyntaxDiagrams.NonTerminals#bindableFor|syntax diagram]]%%-] Changed lines 1142-1143 from:
!!!!!#64.3 FOR Binding to:
!!!!!#64.3 FOR Binding Differentiator \ %silver% [-[[SyntaxDiagrams.NonTerminals#forBindingDifferentiator|syntax diagram]]%%-] Changed lines 1150-1151 from:
!!!!!#64.4 Bindable to:
!!!!!#64.4 Bindable Operator \ %silver% [-[[SyntaxDiagrams.NonTerminals#bindableOperator|syntax diagram]]%%-] Changed lines 1159-1160 from:
!!!!!#64.5 Unary to:
!!!!!#64.5 Unary Minus \ %silver% [-[[SyntaxDiagrams.NonTerminals#unaryMinus|syntax diagram]]%%-] Changed lines 1165-1166 from:
!!!!!#64.6 Bindable to:
!!!!!#64.6 Bindable Macro \ %silver% [-[[SyntaxDiagrams.NonTerminals#bindableMacro|syntax diagram]]%%-] Changed lines 1174-1175 from:
!!!!!#64.7 Multi-Bindable Macro to:
!!!!!#64.7 Multi-Bindable Macro 1 \ %silver% [-[[SyntaxDiagrams.NonTerminals#multiBindableMacro1|syntax diagram]]%%-] Changed lines 1182-1183 from:
!!!!!#64.8 Binding Differentiator to:
!!!!!#64.8 Binding Differentiator 1 \ %silver% [-[[SyntaxDiagrams.NonTerminals#bindingDifferentiator1|syntax diagram]]%%-] Changed lines 1190-1191 from:
!!!!!#64.9 Multi-Bindable Macro to:
!!!!!#64.9 Multi-Bindable Macro 2 \ %silver% [-[[SyntaxDiagrams.NonTerminals#multiBindableMacro2|syntax diagram]]%%-] Changed lines 1198-1199 from:
!!!!!#64.10 Binding Differentiator to:
!!!!!#64.10 Binding Differentiator 2 \ %silver% [-[[SyntaxDiagrams.NonTerminals#bindingDifferentiator2|syntax diagram]]%%-] Changed lines 1206-1207 from:
!!!!!#64.11 Multi-Bindable Macro to:
!!!!!#64.11 Multi-Bindable Macro 3 \ %silver% [-[[SyntaxDiagrams.NonTerminals#multiBindableMacro3|syntax diagram]]%%-] Changed lines 1214-1215 from:
!!!!!#64.12 Binding Differentiator to:
!!!!!#64.12 Binding Differentiator 3 \ %silver% [-[[SyntaxDiagrams.NonTerminals#bindingDifferentiator3|syntax diagram]]%%-] 2015-09-15 05:56
by -
Changed lines 2-3 from:
*[[#DefinitionModuleSyntax|Definition Module Syntax]] *[[ to:
*[[#DefinitionModuleSyntax|Definition Module Syntax]] *[[#ImplAndPrgmModuleSyntax|Implementation And Program Module Syntax]] 2015-09-15 05:56
by -
Changed line 4 from:
*[[#BlueprintSyntax| to:
*[[#BlueprintSyntax|Blueprint Syntax]] 2015-09-15 05:53
by - anchoring
Changed lines 2-4 from:
[[#DefinitionModuleSyntax|Definition Module Syntax]] [[<<]] [[#ImplAndPrgmModuleSyntax|Implementation And Program Module Syntax]] [[<<]] [[#BlueprintSyntax|BlueprintSyntax]] to:
*[[#DefinitionModuleSyntax|Definition Module Syntax]] [[<<]] *[[#ImplAndPrgmModuleSyntax|Implementation And Program Module Syntax]] [[<<]] *[[#BlueprintSyntax|BlueprintSyntax]] 2015-09-15 05:52
by - anchoring
Changed lines 2-3 from:
[[#DefinitionModuleSyntax|Definition Module Syntax]] to:
[[#DefinitionModuleSyntax|Definition Module Syntax]] [[<<]] [[#ImplAndPrgmModuleSyntax|Implementation And Program Module Syntax]] [[<<]] Changed line 9 from:
to:
definitionModule | implOrPrgmModule | blueprint 2015-09-15 05:51
by - anchoring
Added lines 1-5:
!!!!!Quick Links [[#DefinitionModuleSyntax|Definition Module Syntax]] [[#ImplAndPrgmModuleSyntax|Definition Module Syntax]] [[#BlueprintSyntax|BlueprintSyntax]] Changed line 9 from:
definitionModule | to:
[[#definitionModule |definitionModule]] | [[#implOrPrgmModule|implOrPrgmModule]] | [[#blueprint|blueprint]] Added line 13:
[[#DefinitionModuleSyntax]] Added line 16:
[[#definitionModule]] Added line 420:
[[#ImplAndPrgmModuleSyntax]] Added line 423:
[[#implOrPrgmModule]] Added line 730:
[[#BlueprintSyntax]] Added line 733:
[[#blueprint]] Changed line 1066 from:
@] to:
@] 2015-09-14 16:20
by -
Changed line 132 from:
!!!!!#8.2 to:
!!!!!#8.2 Restricted Export Changed line 345 from:
!!!!!#23. to:
!!!!!#23.3 Constant Qualified Identifier 2015-09-14 12:47
by - moved terminals (ebnf) to separate page
Added lines 1-1057:
!!! (1) Non-Terminals !!!!!#1 Compilation Unit [@ compilationUnit : definitionModule | implOrPrgmModule | blueprint ; @] !!!!Definition Module Syntax !!!!!#2 Definition Module [@ definitionModule : DEFINITION MODULE moduleIdent ( '[' blueprintToObey ']' )? ( FOR typeToExtend )? ';' (importList ';')* definition* END moduleIdent '.' ; @] !!!!!#2.1 Module Identifier, Blueprint Identifier, Type To Extend [@ moduleIdent : Ident ; blueprintIdent : Ident ; typeToExtend : Ident ; @] !!!!!#2.2 Blueprint To Obey [@ blueprintToObey : blueprintIdent ; @] !!!!!#3 Import List [@ importList : libGenDirective | importDirective ; @] !!!!!#4 Library Generation Directive [@ libGenDirective : GENLIB libIdent FROM template FOR templateParamList END ; @] !!!!!#4.1 Library Identifier, Template, Placeholder [@ libIdent : Ident ; template : Ident ; placeholder : Ident ; @] !!!!!#4.2 Replacement [@ replacement : NumberLiteral | StringLiteral | ChevronText ; @] !!!!!#5 Import Directive [@ importDirective : FROM ( moduleIdent | ENUM enumTypeIdent ) IMPORT ( identifiersToImport | importAll ) | IMPORT modulesToImport ; @] !!!!!#5.1 Enumeration Type Identifier [@ enumTypeIdent : typeIdent ; @] !!!!!#5.2 Type Identifier [@ typeIdent : qualident ; @] !!!!!#5.3 Identifiers To Import, Modules To Import [@ identifiersToImport : Ident reExport? ( ',' Ident reExport? )* ; modulesToImport : identifiersToImport ; @] !!!!!#5.4 Re-Export [@ reExport : '+' ; @] !!!!!#5.5 Import All [@ importAll : '*' ; @] !!!!!#6 Qualified Identifier [@ qualident : Ident ( '.' Ident )* ; @] !!!!!#7 Definition [@ definition : CONST ( constDefinition ';' )+ | TYPE ( typeDefinition ';' )+ | VAR ( variableDeclaration ';' )+ | procedureHeader ';' ; @] !!!!!#8 Constant Definition [@ constDefinition : ( '[' propertyToBindTo ']' | restrictedExport )? Ident '=' constExpression ; @] !!!!!#8.1 Constant Expression [@ constExpression : expression ; @] !!!!!#8.2 Constant Expression [@ restrictedExport : '*' ; @] !!!!!#9 Type Definition [@ typeDefinition : restrictedExport? Ident '=' ( OPAQUE | type ) ; @] !!!!!#10 Variable Declaration [@ variableDeclaration : identList ':' ( range OF )? typeIdent ; @] !!!!!#11 Identifier List [@ identList : Ident ( ',' Ident )* ; @] !!!!!#12 Range [@ range : '[' greaterThan? constExpression '..' lessThan? constExpression ']' ; @] !!!!!#12.1 Greater Than [@ greaterThan : '>' ; @] !!!!!#12.2 Less Than [@ lessThan : '<' ; @] !!!!!#13 Type [@ type : typeIdent | derivedSubType | enumType | setType | arrayType | recordType | pointerType | coroutineType | procedureType ; @] !!!!!#13.1 Derived Sub-Type [@ derivedSubType : ALIAS OF typeIdent | range OF ordinalOrScalarType | CONST dynamicTypeIdent ; @] !!!!!#13.2 Ordinal Or Scalar Type, Dynamic Type Identifier [@ ordinalOrScalarType : typeIdent ; dynamicTypeIdent : typeIdent ; @] !!!!!#14 Enumeration Type [@ enumType : '(' ( '+' enumTypeToExtend )? identList ')' ; @] !!!!!#14.1 Enumeration Type To Extend [@ enumTypeToExtend : typeIdent ; @] !!!!!#15 Set Type [@ setType : SET OF enumTypeIdent ; @] !!!!!#16 Array Type [@ arrayType : ARRAY componentCount ( ',' componentCount )* OF typeIdent ; @] !!!!!#16.1 Component Count [@ componentCount : constExpression ; @] !!!!!#17 Record Type [@ recordType : RECORD ( fieldList ( ';' fieldList )* indeterminateField? | '(' recTypeToExtend ')' fieldList ( ';' fieldList )* ) ; @] !!!!!#17.1 Field List [@ fieldList : restrictedExport? variableDeclaration ; @] !!!!!#17.2 Record Type To Extend [@ recTypeToExtend : typeIdent ; @] !!!!!#17.3 Indeterminate Field [@ indeterminateField : '~' Ident ':' ARRAY discriminantFieldIdent OF typeIdent ; @] !!!!!#17.4 Discriminant Field Ident [@ discriminantFieldIdent : Ident ; @] !!!!!#18 Pointer Type [@ pointerType : POINTER TO CONST? typeIdent ; @] !!!!!#19 Coroutine Type [@ coroutineType : COROUTINE '(' assocProcType ')' ; @] !!!!!#19.1 Associated Procedure Type [@ assocProcType : typeIdent ; @] !!!!!#20 Procedure Type [@ procedureType : PROCEDURE ( formalType ( ',' formalType )* )? ( ':' returnedType )? ; @] !!!!!#20.1 Formal Type [@ formalType : simpleFormalType | attributedFormalType | variadicFormalType ; @] !!!!!#21 Simple Formal Type [@ simpleFormalType : ( ARRAY OF )? typeIdent | castingFormalType ; @] !!!!!#21.1 Casting Formal Type [@ castingFormalType : CAST ( ARRAY OF OCTET | addressTypeIdent ) ; @] !!!!!#21.2 Address Type Identifier [@ addressTypeIdent : ( UNSAFE '.' )? ADDRESS ; @] !!!!!#22 Attributed Formal Type [@ attributedFormalType : ( CONST | NEW | VAR ) ( simpleFormalType | simpleVariadicFormalType ) ; @] !!!!!#23 Simple Variadic Formal Type [@ simpleVariadicFormalType : ARGLIST reqNumOfArgs? OF simpleFormalType terminator? ; @] !!!!!#23.1 Required Number Of Arguments [@ reqNumOfArgs : greaterThan? constExpression ; @] !!!!!#23.2 Argument List Terminator [@ terminator : '|' constQualident ; @] !!!!!#23.2 Constant Qualified Identifier [@ constQualident : qualident ; @] !!!!!#24 Variadic Formal Type [@ variadicFormalType : ARGLIST reqNumOfArgs? OF ( '{' nonVariadicFormalType ( ';' nonVariadicFormalType )* '}' | simpleFormalType ) terminator? ; @] !!!!!#25 Non-Variadic Formal Type [@ nonVariadicFormalType : ( CONST | NEW | VAR )? simpleFormalType ; @] !!!!!#26 Procedure Header [@ procedureHeader : PROCEDURE ( '[' ( entityToBindTo | COROUTINE ) ']' | restrictedExport )? procedureSignature ; @] !!!!!#27 Procedure Signature [@ procedureSignature : Ident ( '(' formalParams ( ';' formalParams )* ')' )? ( ':' returnedType )? ; @] !!!!!#28 Formal Parameters [@ formalParams : identList ':' ( simpleFormalType | variadicFormalParams ) | attributedFormalParams ; @] !!!!!#29 Attributed Formal Parameters [@ attributedFormalParams : ( CONST | NEW | VAR ) identList ':' ( simpleFormalType | simpleVariadicFormalType ) ; @] !!!!!#30 Variadic Formal Parameters [@ variadicFormalParams : ARGLIST reqNumOfArgs? OF ( ( '{' nonVariadicFormalParams ( ';' nonVariadicFormalParams )* '}') | simpleFormalType ) terminator? ; @] !!!!!#31 Non-Variadic Formal Parameters [@ nonVariadicFormalParams : ( CONST | NEW | VAR )? identList ':' simpleFormalType ; @] !!!!Implementation And Program Module Syntax !!!!!#32 Implementation Or Program Module [@ implOrPrgmModule : IMPLEMENTATION? MODULE moduleIdent ';' ( importList ';' )* block moduleIdent '.' ; @] !!!!!#33 Block [@ block : declaration* ( BEGIN statementSequence )? END ; @] !!!!!#34 Declaration [@ declaration : CONST ( Ident '=' constExpression ';' )+ | TYPE ( Ident '=' type ';' )+ | VAR ( variableDeclaration ';' )+ | procedureHeader ';' block Ident ';' ; @] !!!!!#35 Statement Sequence [@ statementSequence : statement ( ';' statement )* ; @] !!!!!#36 Statement [@ statement : memMgtOperation | updateOrProcCall | ifStatement | caseStatement | loopStatement | whileStatement | repeatStatement | forStatement | ( RETURN | YIELD ) expression? | EXIT ; @] !!!!!#37 Memory Management Operation [@ memMgtOperation : NEW designator ( OF initSize | := initValue )? | RETAIN designator | RELEASE designator ; @] !!!!!#37.1 Initial Size, Initial Value [@ initSize : expression ; initValue : expression ; @] !!!!!#38 Update Or Procedure Call [@ updateOrProcCall : designator ( ':=' expression | incOrDecSuffix | actualParameters )? | COPY designator ':=' expression ; @] !!!!!#38.1 Increment Or Decrement Suffix [@ incOrDecSuffix : '++' | '--' ; @] !!!!!#39 IF Statement [@ ifStatement : IF boolExpression THEN statementSequence ( ELSIF boolExpression THEN statementSequence )? ( ELSE statementSequence )? END ; @] !!!!!#39.1 Boolean Expression [@ boolExpression : expression ; @] !!!!!#40 CASE Statement [@ caseStatement : CASE expression OF ( '|' case )+ ( ELSE statementSequence )? END ; @] !!!!!#40.1 Case [@ case : caseLabels ( ',' caseLabels )* ':' statementSequence ; @] !!!!!#40.2 Case Labels [@ caseLabels : constExpression ( '..' constExpression )? ; @] !!!!!#41 LOOP Statement [@ loopStatement : LOOP statementSequence END ; @] !!!!!#42 WHILE Statement [@ whileStatement : WHILE boolExpression DO statementSequence END ; @] !!!!!#43 REPEAT Statement [@ repeatStatement : REPEAT statementSequence UNTIL boolExpression ; @] !!!!!#44 FOR Statement [@ forStatement : FOR forLoopVariants IN iterableEntity DO statementSequence END ; @] !!!!!#44.1 FOR Loop Variants [@ forLoopVariants : accessor ascOrDesc? ( ',' value )? | VALUE value ascOrDesc? ; @] !!!!!#44.2 Accessor, Value [@ accessor : Ident ; value : Ident ; @] !!!!!#44.3 Iterable Entity [@ iterableEntity : designator | range OF ordinalType ; @] !!!!!#44.4 Ascender Or Descender [@ ascOrDesc : incOrDecSuffix ; @] !!!!!#44.5 Ordinal Type [@ ordinalType : typeIdent ; @] !!!!!#45 Designator [@ designator : qualident designatorTail? ; @] !!!!!#45.1 Designator Tail [@ designatorTail : ( ( '[' exprListOrSlice ']' | '^' ) ( '.' Ident )* )+ ; @] !!!!!#45.2 Expression List Or Slice [@ exprListOrSlice : expression ( ( ',' expression )* | '..' expression? ) ; @] !!!!!#46 Expression [@ expression : simpleExpression ( operL1 simpleExpression )? ; @] !!!!!#46.1 Level-1 Operator [@ operL1 : '=' | '#' | '<' | '<=' | '>' | '>=' | IN | concatOp | identityOp ; @] !!!!!#46.2 Concatenation Operator [@ concatOp : '&' ; @] !!!!!#46.3 Identity Operator [@ identityOp : '==' ; @] !!!!!#47 Simple Expression [@ simpleExpression : ( '+' | '-' )? term ( operL2 term )* ; @] !!!!!#47.1 Level-2 Operator [@ operL2 : '+' | '-' | OR ; @] !!!!!#48 Term [@ term : factorOrNegation ( operL3 factorOrNegation )* ; @] !!!!!#48.1 Level-3 Operator [@ operL3 : '*' | '/' | DIV | MOD | AND | setDiffOp | dotProductOp ; @] !!!!!#48.2 Set Difference Operator [@ setDiffOp : '\' ; @] !!!!!#48.3 Dot Product Operator [@ dotProductOp : '*.' ; @] !!!!!#49 Factor Or Negation [@ factorOrNegation : NOT? factorOrTypeConv ; @] !!!!!#50 Factor Or Type Conversion [@ factorOrTypeConv : factor ( '::' typeIdent )? ; @] !!!!!#51 Factor [@ factor : NumberLiteral | StringLiteral | structuredValue | '(' expression ')' | designator actualParameters? ; @] !!!!!#52 Actual Parameters [@ actualParameters : '(' expressionList ')' ; @] !!!!!#53 Expression List [@ expressionList : expression ( ',' expression )* ; @] !!!!!#54 Structured Value [@ structuredValue : '{' valueComponent ( ',' valueComponent )* '}' ; @] !!!!!#54.1 Value Component [@ valueComponent : constExpression (( BY | '..' )? constExpression )? | runtimeExpression ; @] !!!!!#54.2 Runtime Expression [@ runtimeExpression : expression ; @] !!!!Blueprint Syntax !!!!!#55 Blueprint [@ blueprint : BLUEPRINT blueprintIdent ( '[' blueprintToRefine ']' )? ( FOR blueprintForTypeToExtend )? ';' ( REFERENTIAL identList ';' )? MODULE TYPE '=' ( typeClassification ( ';' literalCompatibility)? | NONE ) ';' ( constraint ';' )* ( requirement ';' )* END blueprintIdent '.' ; @] !!!!!#55.1 Blueprint Identifier [@ blueprintIdent : Ident ; @] !!!!!#55.2 Blueprint To Refine, Blueprint For Type To Extend [@ blueprintToRefine : blueprintIdent ; blueprintForTypeToExtend : blueprintIdent ; @] !!!!!#56 Type Classification [@ typeClassification : '{' determinedClassification ( ';' refinableClassification )? ( ';' '*' )? '}' | '*' ; @] !!!!!#56.1 Determined Classification [@ determinedClassification : classificationIdent ( ',' classificationIdent )* ; @] !!!!!#56.2 Refinable Classification [@ refinableClassification : '~' classificationIdent ( ',' '~' classificationIdent )* ; @] !!!!!#56.3 Classification Identifier [@ classificationIdent : Ident ; @] !!!!!#57 Literal Compatibility [@ literalCompatibility : TLITERAL '=' protoLiteral ( '|' protoLiteral )* ; @] !!!!!#57.1 Proto-Literal [@ protoLiteral : protoLiteralIdent | structuredProtoLiteral ; @] !!!!!#57.2 Proto-Literal Identifier [@ protoLiteralIdent : Ident ; @] !!!!!#58 Structured Proto-Literal [@ structuredProtoLiteral : '{' ( ARGLIST reqValueCount? OF ( '{' builtinOrReferential ( ',' builtinOrReferential )* '}' | builtinOrReferential ) ) | builtinOrReferential '}' ; @] !!!!!#58.1 Required Value Count [@ reqValueCount : greaterThan? wholeNumber ; @] !!!!!#58.2 Greater Than [@ greaterThan : '>' ; @] !!!!!#58.3 Whole Number [@ wholeNumber : NumberLiteral ; @] !!!!!#58.4 Built-in Type Or Referential Identifier [@ builtinOrReferential : Ident ; @] !!!!!#59 Constraint [@ constraint : constraintTerm ( oneWayDependency | mutualDependencyOrExclusion ) ; @] !!!!!#59.1 Constraint Term [@ constraintTerm : '(' classificationOrFlagIdent ')' | '[' bindableEntityOrProperty ']' ; @] !!!!!#59.2 Bindable Entity Or Property [@ bindableEntityOrProperty : entityToBindTo | propertyToBindTo ; @] !!!!!#59.3 One-Way Dependency [@ oneWayDependency : '->' termList ( '|' termList )* ; @] !!!!!#59.4 Mutual Dependency Or Exclusion [@ mutualDependencyOrExclusion : ( '<>' | '><' ) termList ; @] !!!!!#59.5 Term List [@ termList : constraintTerm ( ',' constraintTerm )* ; @] !!!!!#59.6 Classification Or Flag Identifier [@ classificationOrFlagIdent : Ident ; @] !!!!!#60 Requirement [@ requirement : condition '->' ( typeRequirement | constRequirement | procRequirement ) ; @] !!!!!#60.1 Condition [@ condition : NOT? boolConstIdent ; @] !!!!!#60.2 Boolean Constant Identifier [@ boolConstIdent : Ident ; @] !!!!!#60.3 Type Requirement [@ typeRequirement : TYPE typeDefinition ; @] !!!!!#61 Constant Requirement [@ constRequirement : CONST ( '[' propertyToBindTo ']' ( simpleConstRequirement | '=' NONE ) | restrictedExport? simpleConstRequirement ) ; @] !!!!!#61.1 Simple Constant Requirement [@ simpleConstRequirement : Ident ( '=' constExpression | ':' builtinTypeIdent ) ; @] !!!!!#61.2 Constant Expression [@ constExpression : expression ; @] !!!!!#61.3 Built-in Type Identifier [@ builtinTypeIdent : Ident ; @] !!!!!#61.4 Restricted Export [@ restrictedExport : '*' ; @] !!!!!#62 Property To Bind To [@ propertyToBindTo : memMgtProperty | collectionProperty | scalarProperty | TFLAGS ; @] !!!!!#62.1 Memory Management Property [@ memMgtProperty : TDYN | TREFC ; @] !!!!!#62.2 Collection Property [@ collectionProperty : TORDERED | TSORTED | TLIMIT ; @] !!!!!#62.3 Scalar Property [@ scalarProperty : TSCALAR | TMAX | TMIN ; @] !!!!!#63 Procedure Requirement [@ procedureRequirement : PROCEDURE ( '[' ( entityToBindTo | COROUTINE ) ']' ( procedureSignature | '=' NONE ) | restrictedExport? procedureSignature ) ; @] !!!!!#64 Entity To Bind To [@ entityToBindTo : bindableResWord | bindableOperator | bindableMacro ; @] !!!!!#64.1 Bindable Reserved Word [@ bindableResWord : NEW | RETAIN | RELEASE | COPY | bindableFor ; @] !!!!!#64.2 Bindable FOR [@ bindableFor : FOR forBindingDifferentiator? ; @] !!!!!#64.3 FOR Binding Differentiator [@ forBindingDifferentiator : '|' ( '++' | '--' ) ; @] !!!!!#64.4 Bindable Operator [@ bindableOperator : '+' | '-' | '*' | '/' | '\' | '=' | '<' | '>' | '*.' | '::' IN | DIV | MOD | unaryMinus ; @] !!!!!#64.5 Unary Minus [@ unaryMinus : '+/-' ; @] !!!!!#64.6 Bindable Macro [@ bindableMacro : ABS | LENGTH | EXISTS | SEEK | SUBSET | READ | READNEW | WRITE | WRITEF | SXF | VAL | multiBindableMacro1 | multiBindableMacro2 | multiBindableMacro3 ; @] !!!!!#64.7 Multi-Bindable Macro 1 [@ multiBindableMacro1 : ( COUNT | VALUE ) bindingDifferentiator1? ; @] !!!!!#64.8 Binding Differentiator 1 [@ bindingDifferentiator1 : '|' '#' ; @] !!!!!#64.9 Multi-Bindable Macro 2 [@ multiBindableMacro2 : ( STORE | INSERT | REMOVE ) bindingDifferentiator2? ; @] !!!!!#64.10 Binding Differentiator 2 [@ bindingDifferentiator2 : '|' ( ',' | '#' | '*' ) ; @] !!!!!#64.11 Multi-Bindable Macro 3 [@ multiBindableMacro3 : APPEND bindingDifferentiator3? ; @] !!!!!#64.12 Binding Differentiator 3 [@ bindingDifferentiator3 : '|' ( ',' | '*' ) ; @] |