Site Menu Project Specification Implementation Recommendations Reference Needs Updating Work in Progress Wastebasket Wiki Manual |
Lexical EntitiesCoreLanguage.LexicalEntities HistoryHide minor edits - Show changes to output 2015-10-09 18:22
by -
Changed line 9 from:
Reserved words are symbols that consist of a sequence of all-uppercase letters, are visible in any scope, have special meaning in the language and may not be redefined. There are to:
Reserved words are symbols that consist of a sequence of all-uppercase letters, are visible in any scope, have special meaning in the language and may not be redefined. There are 49 reserved words: 2015-10-09 18:22
by -
Changed lines 13-22 from:
ALIAS DEFINITION AND ARGLIST BLUEPRINT CASE to:
ALIAS DEFINITION IF OF RETURN AND DIV IMPLEMENTATION OPAQUE SET ARGLIST DO IMPORT OR THEN ARRAY ELSE IN POINTER TO BEGIN ELSIF LOOP PROCEDURE TYPE BLUEPRINT END MOD RECORD UNTIL BY EXIT MODULE REFERENTIAL VAR CASE FOR NEW RELEASE WHILE CONST FROM NONE REPEAT YIELD COPY GENLIB NOT RETAIN Changed line 393 from:
Actual lexical parameters shall be provided as constants in standard library module @@`LexParams@@. to:
Actual lexical parameters shall be provided as constants in standard library module @@`LexParams@@. 2015-09-22 12:32
by -
Changed line 57 from:
@@+ - * / \ = # < <= > >= == :: to:
@@+ - * / \ = # < <= > >= == :: & ^@@ Deleted line 393:
2015-09-22 12:31
by -
Changed line 57 from:
@@+ - * to:
@@+ - * / \ = # < <= > >= == :: ^ &@@ 2015-09-22 12:29
by -
Changed line 302 from:
||Symbolic Inline Assembler ||@@ASSEMBLER@@ @@ASM@@ @@REG@@ ||_______|| to:
||Symbolic Inline Assembler (Optional) ||@@ASSEMBLER@@ @@ASM@@ @@REG@@ ||_______|| 2015-09-22 12:28
by -
Changed lines 303-304 from:
|| || to:
||Actor Based Concurrency (Phase II Deliverables) ||@@ACTOR@@ @@PRIORITY@@ ||_______|| ||Exponentiation and Dot Product Operators (Possible Future Use) ||[@** @] [@*. @] ||_______|| 2015-09-22 12:26
by -
Changed lines 303-304 from:
|| to:
||Phase II Deliverables ||@@ACTOR@@ @@PRIORITY@@ ||_______|| ||Possible Future Use ||[@** @] [@*. @] ||_______|| 2015-09-22 12:24
by -
Changed line 303 from:
||Future Use (Phase II Deliverables) ||@@ACTOR@@ @@PRIORITY@@ ||_______|| to:
||Future Use (Phase II Deliverables) ||[@**@] [@*.@] @@ACTOR@@ @@PRIORITY@@ ||_______|| 2015-09-20 19:02
by -
Changed line 369 from:
If an identifier or a pragma symbol exceeds the maximum length to:
If an identifier or a pragma symbol exceeds the maximum length supported by the implementation, it may be truncated to the maximum supported length. If it is, a soft compile time warning shall occur. 2015-09-20 19:01
by -
Changed line 392 from:
Actual lexical parameters shall be provided as constants in standard library module @@ to:
Actual lexical parameters shall be provided as constants in standard library module @@`LexParams@@. 2015-09-20 19:00
by -
Changed lines 344-393 from:
to:
Any special symbols not specifically reserved shall be considered reserved for possible future use or taboo. [[#LexicalParameters]] !!!! 1.9 Lexical Parameters [[#LengthOfLiterals]] !!!!! 1.9.1 Length of Literals The minimum lengths of literals a conforming implementation shall support are: * for string literals, 160 characters * for character code literals, 6 digits * for whole number literals, 24 digits * for real number literals, 64 digits The fractional part of a real number literal may be truncated. If it is truncated, a soft compile time warning shall be emitted. If a string literal, a character code literal, a whole number literal or the significand or exponent of a real number literal is longer than an implementation is able to process, a compile time error shall occur. [[#LengthOfIdents]] !!!!! 1.9.2 Length of Identifiers and Pragma Symbols The minimum lengths of identifiers and pragma symbols a conforming implementation shall support are: * for identifiers, 32 characters * for pragma symbols, 32 characters If an identifier or a pragma symbol exceeds the maximum length support by the implementation, it may be truncated to the maximum supported length. If it is, a soft compile time warning shall occur. [[#LengthOfComments]] !!!!! 1.9.4 Length of Comments An implementation that generates source code of another language may choose to preserve comments by copying them into the output. In this case, the implementation may limit the length of comments copied into the output. The minimum lengths of comments to be fully preserved that such an implementation shall support are: * for line comments, 250 characters * for block comments, 2000 characters If a comment to be preserved exceeds the maximum length supported by the implementation, it may be truncated to the maximum supported length. If it is truncated, a soft compile time warning shall occur. If a nested block comment is truncated, an implementation shall insert all closing comment delimiters that would have been lost as a result of truncation. [[#LineAndColumnCounters]] !!!!! 1.9.4 Line and Column Counters An implementation may limit the capacity of its internal line and column counters. The minimum values a conforming implementation shall support are: * for the line counter, 65000 * for the column counter, 250 In the event that a source file being processed exceeds the supported counter limits, an implementation may either continue or abort compilation. A soft compile time warning shall occur if the implementation continues. A fatal compile time error shall be emitted if the implementation aborts. [[#LexicalParameterConstants]] !!!!! 1.9.5 Lexical Parameter Constants Actual lexical parameters shall be provided as constants in standard library module @@LexParams@@. 2015-09-20 11:14
by - 2015-09-20 11:11
by -
Changed line 339 from:
[@/= +> (. to:
[@/= @] [@+> @] [@(. .) @] [@(: :) @] [@(= =) @] [@?/ @] [@?< @] [@?! @] [@?- @] [@?. @] [@?= @] [@?* @] [@?: @] [@?? @] [@??? @] [@?, @] [@?,, @] [@?> @] [@?+ @] [@?;@] || 2015-09-20 11:06
by -
Changed line 338 from:
||[[ to:
||[[Recommendations.Transliteration|Character Set Transliterators]] ||\ 2015-09-20 11:05
by -
Changed lines 338-339 from:
||Character Set Transliterators ||[@/= +> (. .) (: :) (= =) ?/ ?< ?! ?- ?. ?= ?* ?: ?? ??? ?, ?,, ?> ?+ ?;@] || to:
||[[Recommentations.Transliteration|Character Set Transliterators]] ||\ [@/= +> (. .) (: :) (= =) ?/ ?< ?! ?- ?. ?= ?* ?: ?? ??? ?, ?,, ?> ?+ ?;@] || 2015-09-20 11:04
by -
Changed line 338 from:
||Character Set Transliterators ||[@/= +> (. .) (: :) (= =) ?/ ?< ?! ?- ?. ?= ?* ?: ?? ?, ?> ?+ ?;@] || to:
||Character Set Transliterators ||[@/= +> (. .) (: :) (= =) ?/ ?< ?! ?- ?. ?= ?* ?: ?? ??? ?, ?,, ?> ?+ ?;@] || 2015-09-20 11:01
by -
Changed line 338 from:
||Character Set Transliterators ||[@/= +> to:
||Character Set Transliterators ||[@/= +> (. .) (: :) (= =) ?/ ?< ?! ?- ?. ?= ?* ?: ?? ?, ?> ?+ ?;@] || 2015-09-19 14:09
by -
Changed line 338 from:
||Character Set Transliterators ||[@/ to:
||Character Set Transliterators ||[@/= +> /< ?> ?- ?! ?. ?= ?* ?: (. .) (: :) (= =)@] || 2015-09-19 14:05
by -
Changed lines 337-338 from:
||Modula-2 Template Engine ||[@## @@ <# #> // /* */ || ||Character Set Transliterators ||[@/< /= +> ?! ?- ?> ?. ?= ?* ?: (. .) (: :) (= =) || to:
||Modula-2 Template Engine ||[@## @@ <# #> // /* */@] || ||Character Set Transliterators ||[@/< /= +> ?! ?- ?> ?. ?= ?* ?: (. .) (: :) (= =)@] || 2015-09-19 14:05
by -
Changed lines 337-338 from:
||Modula-2 Template Engine ||@ ||Character Set Transliterators ||@@/< to:
||Modula-2 Template Engine ||[@## @@ <# #> // /* */ || ||Character Set Transliterators ||[@/< /= +> ?! ?- ?> ?. ?= ?* ?: (. .) (: :) (= =) || 2015-09-19 14:00
by -
Changed line 338 from:
||Character Set Transliterators ||@@/< @@ @@/= @@ @@+> @@ @@.- @@ @@?! @@ @@?> @@ @@?- @@ @@?= @@ @@? to:
||Character Set Transliterators ||@@/< @@ @@/= @@ @@+> @@ @@.- @@ @@?! @@ @@?> @@ @@?- @@ @@?= @@ @@?* @@ @@?: @@ @@(. @@ @@.) @@ @@(: @@ @@:) @@ @@(= @@ @@=) @@ || 2015-09-19 13:56
by -
Changed line 338 from:
||Character Set Transliterators ||@@/< @@ @@/= @@ @@+> @@ @@.- @@ @@ to:
||Character Set Transliterators ||@@/< @@ @@/= @@ @@+> @@ @@.- @@ @@?! @@ @@?> @@ @@?- @@ @@?= @@ @@?. @@ @@?: @@ @@(. @@ @@.) @@ @@(: @@ @@:) @@ @@(= @@ @@=) @@ || 2015-09-19 13:53
by -
Changed line 338 from:
||Character Set Transliterators ||@@/< @@ @@/= @@ @@+> @@ @@. to:
||Character Set Transliterators ||@@/< @@ @@/= @@ @@+> @@ @@.- @@ @@(. @@ @@.) @@ @@(: @@ @@:) @@ @@(= @@ @@=) @@ @@?! @@ @@?> @@ @@?- @@ @@?= @@ @@?. @@ @@?: @@ || 2015-09-19 13:46
by -
Changed line 338 from:
||Character Set Transliterators ||@@/< @@ @@/= @@ @@ to:
||Character Set Transliterators ||@@/< @@ @@/= @@ @@+> @@ @@./ @@ @@.- @@ @@(. @@ @@.) @@ @@(: @@ @@:) @@ @@(= @@ @@=) @@ @@?> @@ @@?- @@ @@?= @@ @@?. @@ @@?: @@ || 2015-09-19 13:40
by -
Changed lines 2-3 from:
!!!! 1 Character Sets to:
!!!! 1.1 Character Sets Changed lines 7-8 from:
!!!! 2 Reserved Words to:
!!!! 1.2 Reserved Words Changed lines 26-27 from:
!!!! 3 Schrödinger's Tokens to:
!!!! 1.3 Schrödinger's Tokens Changed lines 43-44 from:
!!!! 4 Special Symbols to:
!!!! 1.4 Special Symbols Changed lines 54-55 from:
!!!!! 4.1 Operators to:
!!!!! 1.4.1 Operators Changed lines 61-62 from:
!!!!! 4.2 Punctuation to:
!!!!! 1.4.2 Punctuation Changed lines 68-69 from:
!!!!! 4.3 Grouping Delimiters to:
!!!!! 1.4.3 Grouping Delimiters Changed lines 75-76 from:
!!!!! 4.4 Quoted Text Delimiters to:
!!!!! 1.4.4 Quoted Text Delimiters Changed lines 82-83 from:
!!!!! 4.5 Comment Delimiters to:
!!!!! 1.4.5 Comment Delimiters Changed lines 89-90 from:
!!!!! 4.6 Pragma Punctuation and Delimiters to:
!!!!! 1.4.6 Pragma Punctuation and Delimiters Changed lines 96-97 from:
!!!! 5 Identifiers to:
!!!! 1.5 Identifiers Changed lines 111-112 from:
!!!!! 5.1 Reserved Identifiers to:
!!!!! 1.5.1 Reserved Identifiers Changed lines 119-120 from:
!!!!! 5. 2 User-Definable Identifiers to:
!!!!! 1.5. 2 User-Definable Identifiers Changed lines 124-125 from:
!!!! 6 Literals to:
!!!! 1.6 Literals Changed lines 132-133 from:
!!!!! 6.1 Numeric literals to:
!!!!! 1.6.1 Numeric literals Changed lines 143-144 from:
!!!!! 6.1.1 Decimal Number Literals to:
!!!!! 1.6.1.1 Decimal Number Literals Changed lines 155-156 from:
!!!!! 6.1.2 Base-2 Number Literals to:
!!!!! 1.6.1.2 Base-2 Number Literals Changed lines 166-167 from:
!!!!! 6.1.3 Base-16 Number Literals to:
!!!!! 1.6.1.3 Base-16 Number Literals Changed lines 177-178 from:
!!!!! 6.1.4 Character Code Literals to:
!!!!! 1.6.1.4 Character Code Literals Changed lines 189-190 from:
!!!! 6.2 String Literals to:
!!!! 1.6.2 String Literals Changed lines 203-204 from:
!!!! 6.3 Structured Literals to:
!!!! 1.6.3 Structured Literals Changed lines 219-220 from:
!!!! 7 Non-Semantic Symbols to:
!!!! 1.7 Non-Semantic Symbols Changed lines 227-228 from:
!!!!! 7.1 Comments to:
!!!!! 1.7.1 Comments Changed lines 234-235 from:
!!!!! 7.1.1 Line Comments to:
!!!!! 1.7.1.1 Line Comments Changed lines 248-249 from:
!!!!! 7.1.2 Block Comments to:
!!!!! 1.7.1.2 Block Comments Changed lines 260-261 from:
!!!!! 7.2 Pragmas to:
!!!!! 1.7.2 Pragmas Changed lines 275-276 from:
!!!!! 7.3 Lexical Separators to:
!!!!! 1.7.3 Lexical Separators Changed lines 282-283 from:
!!!!! 7.3.1 Control Codes to:
!!!!! 1.7.3.1 Control Codes Changed lines 293-294 from:
!!!! 8 Reserved Symbols to:
!!!! 1.8 Reserved Symbols Changed lines 298-299 from:
!!!!! 8.1 Symbols Reserved for Optional and Future Use to:
!!!!! 1.8.1 Symbols Reserved for Optional and Future Use Changed lines 306-307 from:
!!!!! 8.2 Symbols Reserved for Coordinated Superset Use to:
!!!!! 1.8.2 Symbols Reserved for Coordinated Superset Use Changed lines 320-321 from:
!!!!! 8.3 Symbols Reserved for Uncoordinated Superset Use to:
!!!!! 1.8.3 Symbols Reserved for Uncoordinated Superset Use Changed lines 331-332 from:
!!!!! 8.4 Symbols Reserved for External Source Code Processors to:
!!!!! 1.8.4 Symbols Reserved for External Source Code Processors Changed line 341 from:
!!!!! 8.5 Other Symbols to:
!!!!! 1.8.5 Other Symbols 2015-09-19 13:36
by -
Changed lines 155-156 from:
!!!! 6.1.2 Base-2 Number Literals to:
!!!!! 6.1.2 Base-2 Number Literals Changed lines 166-167 from:
!!!! 6.1.3 Base-16 Number Literals to:
!!!!! 6.1.3 Base-16 Number Literals Changed lines 177-178 from:
!!!! 6.1.4 Character Code Literals to:
!!!!! 6.1.4 Character Code Literals Changed lines 203-204 from:
!!!! 6. to:
!!!! 6.3 Structured Literals Changed lines 275-276 from:
!!!! 7.3 Lexical Separators to:
!!!!! 7.3 Lexical Separators Changed line 282 from:
!!!!! Control Codes to:
!!!!! 7.3.1 Control Codes 2015-09-19 13:33
by -
Changed lines 2-3 from:
!!!! Character Sets to:
!!!! 1 Character Sets Changed lines 7-8 from:
!!!! Reserved Words to:
!!!! 2 Reserved Words Changed lines 26-27 from:
!!!! Schrödinger's Tokens to:
!!!! 3 Schrödinger's Tokens Changed lines 43-44 from:
!!!! Special Symbols to:
!!!! 4 Special Symbols Changed lines 54-55 from:
!!!!! Operators to:
!!!!! 4.1 Operators Changed lines 61-62 from:
!!!!! Punctuation to:
!!!!! 4.2 Punctuation Changed lines 68-69 from:
!!!!! Grouping Delimiters to:
!!!!! 4.3 Grouping Delimiters Changed lines 75-76 from:
!!!!! Quoted Text Delimiters to:
!!!!! 4.4 Quoted Text Delimiters Changed lines 82-83 from:
!!!!! Comment Delimiters to:
!!!!! 4.5 Comment Delimiters Changed lines 89-90 from:
!!!!! Pragma Punctuation and Delimiters to:
!!!!! 4.6 Pragma Punctuation and Delimiters Changed lines 96-97 from:
!!!! Identifiers to:
!!!! 5 Identifiers Changed lines 111-112 from:
!!!!! Reserved Identifiers to:
!!!!! 5.1 Reserved Identifiers Changed lines 119-120 from:
!!!!! User-Definable Identifiers to:
!!!!! 5. 2 User-Definable Identifiers Changed lines 124-125 from:
!!!! Literals to:
!!!! 6 Literals Changed lines 132-133 from:
!!!!! Numeric literals to:
!!!!! 6.1 Numeric literals Changed lines 143-144 from:
!!!!! Decimal Number Literals to:
!!!!! 6.1.1 Decimal Number Literals Changed lines 155-156 from:
!!!! Base-2 Number Literals to:
!!!! 6.1.2 Base-2 Number Literals Changed lines 166-167 from:
!!!! Base-16 Number Literals to:
!!!! 6.1.3 Base-16 Number Literals Changed lines 177-178 from:
!!!! Character Code Literals to:
!!!! 6.1.4 Character Code Literals Changed lines 189-190 from:
!!!! String Literals to:
!!!! 6.2 String Literals Changed lines 203-204 from:
!!!! Structured Literals to:
!!!! 6. 3 Structured Literals Changed lines 219-220 from:
!!!! Non-Semantic Symbols to:
!!!! 7 Non-Semantic Symbols Changed lines 227-228 from:
!!!!! Comments to:
!!!!! 7.1 Comments Changed lines 234-235 from:
!!!!! Line Comments to:
!!!!! 7.1.1 Line Comments Changed lines 248-249 from:
!!!!! Block Comments to:
!!!!! 7.1.2 Block Comments Changed lines 260-261 from:
!!!!! Pragmas to:
!!!!! 7.2 Pragmas Changed lines 275-276 from:
!!!! Lexical Separators to:
!!!! 7.3 Lexical Separators Changed lines 293-294 from:
!!!! Reserved Symbols to:
!!!! 8 Reserved Symbols Changed lines 298-299 from:
!!!!! Symbols Reserved for Optional and Future Use to:
!!!!! 8.1 Symbols Reserved for Optional and Future Use Changed lines 306-307 from:
!!!!! Symbols Reserved for Coordinated Superset Use to:
!!!!! 8.2 Symbols Reserved for Coordinated Superset Use Changed lines 320-321 from:
!!!!! Symbols Reserved for Uncoordinated Superset Use to:
!!!!! 8.3 Symbols Reserved for Uncoordinated Superset Use Changed lines 331-332 from:
!!!!! Symbols Reserved for External Source Code Processors to:
!!!!! 8.4 Symbols Reserved for External Source Code Processors Changed line 341 from:
!!!!! Other Symbols to:
!!!!! 8.5 Other Symbols 2015-09-19 12:08
by -
Changed lines 322-323 from:
An uncoordinated language superset is a compliant language superset for which no reserved words, identifiers or pragmas are reserved. Such a superset may define additional reserved words and predefined identifiers as long as they start with a single @@@@@ character. Implementations that target the [=OpenVMS=] operating system may define platform specific reserved words and predefined identifiers as long as they contain at least one @@%@@ to:
An uncoordinated language superset is a compliant language superset for which no reserved words, identifiers or pragmas are reserved. Such a superset may define additional reserved words and predefined identifiers as long as they start with a single @@@@@ character. Implementations that target the [=OpenVMS=] operating system may define platform specific reserved words and predefined identifiers as long as they contain at least one @@%@@ character. Changed line 343 from:
Any special symbols not specifically reserved shall be considered reserved for possible future use or taboo. to:
Any special symbols not specifically reserved shall be considered reserved for possible future use or taboo. 2015-09-19 12:08
by -
Changed line 322 from:
An uncoordinated language superset is a compliant language superset for which no reserved words, identifiers or to:
An uncoordinated language superset is a compliant language superset for which no reserved words, identifiers or pragmas are reserved. Such a superset may define additional reserved words and predefined identifiers as long as they start with a single @@@@@ character. Implementations that target the [=OpenVMS=] operating system may define platform specific reserved words and predefined identifiers as long as they contain at least one @@%@@ character. 2015-09-19 12:06
by -
Changed line 322 from:
An uncoordinated language superset is a compliant language superset for which no reserved words, identifiers or pragma symbols are reserved. Such a superset may define additional reserved words to:
An uncoordinated language superset is a compliant language superset for which no reserved words, identifiers or pragma symbols are reserved. Such a superset may define additional reserved words and predefined identifiers as long as they start with a single @@@@@ character. Implementations that target the [=OpenVMS=] operating system may define platform specific reserved words and predefined identifiers as long as they contain at least one @@%@@ character. 2015-09-19 10:41
by -
Changed line 343 from:
Any special symbols not specifically reserved to:
Any special symbols not specifically reserved shall be considered reserved for possible future use or taboo. 2015-09-19 10:40
by -
Changed line 343 from:
Any special symbols not to:
Any special symbols not specifically reserved are either reserved for possible future use or taboo. 2015-09-19 10:39
by -
Changed lines 338-343 from:
||Character Set Transliterators ||@@/< @@ @@/= @@ @@=> @@ @@+> @@ @@./ @@ @@.- @@ @@(. @@ @@.) @@ @@(: @@ @@:) @@ @@(= @@ @@=) @@ @@?- @@ @@?= @@ @@?. @@ @@?: @@ || to:
||Character Set Transliterators ||@@/< @@ @@/= @@ @@=> @@ @@+> @@ @@./ @@ @@.- @@ @@(. @@ @@.) @@ @@(: @@ @@:) @@ @@(= @@ @@=) @@ @@?- @@ @@?= @@ @@?. @@ @@?: @@ || [[#OtherSymbols]] !!!!! Other Symbols Any special symbols not already reserved are either reserved for possible future use or taboo. 2015-09-19 09:45
by -
Changed line 338 from:
||Character Set Transliterators ||@@/< @@ @@/= @@ @@=> @@ @@+> @@ @@./ @@ @@.- @@ @@(. @@ @@.) @@ @@(: @@ @@:) @@ @@?- @@ @@?= @@ @@?. @@ @@?: @@ || to:
||Character Set Transliterators ||@@/< @@ @@/= @@ @@=> @@ @@+> @@ @@./ @@ @@.- @@ @@(. @@ @@.) @@ @@(: @@ @@:) @@ @@(= @@ @@=) @@ @@?- @@ @@?= @@ @@?. @@ @@?: @@ || 2015-09-19 09:32
by -
Changed line 338 from:
||Character Set Transliterators ||@@/< @@ @@/= @@ @@=> @@ @@+> @@ @@./ @@ @@.- @@ @@(. @@ @@.) @@ @@(: @@ @@:) @@ || to:
||Character Set Transliterators ||@@/< @@ @@/= @@ @@=> @@ @@+> @@ @@./ @@ @@.- @@ @@(. @@ @@.) @@ @@(: @@ @@:) @@ @@?- @@ @@?= @@ @@?. @@ @@?: @@ || 2015-09-19 09:30
by -
Changed line 338 from:
||Character Set Transliterators ||@@/< @@ @@/= @@ @@=> @@ @@+> @@ @@./ @@ @@.- @@ @@(. @@ @@.) to:
||Character Set Transliterators ||@@/< @@ @@/= @@ @@=> @@ @@+> @@ @@./ @@ @@.- @@ @@(. @@ @@.) @@ @@(: @@ @@:) @@ || 2015-09-19 09:29
by -
Changed line 338 from:
||Character Set Transliterators ||@@/ to:
||Character Set Transliterators ||@@/< @@ @@/= @@ @@=> @@ @@+> @@ @@./ @@ @@.- @@ @@(. @@ @@.) @@ @@(: @@ @@:) || 2015-09-19 07:25
by -
Changed lines 337-338 from:
||Modula-2 Template Engine ||@@## @@ @@[=@@=] @@ @@<# @@ @@#> @@ @@// @@ @@/* @@ @@*/@@ || ||Character Set Transliterators ||@@/= @@ @@(. @@ @@.) @@ @@(: @@ @@:) @@ [-and @@??@@ trigraphs of ISO C-] || to:
||Modula-2 Template Engine ||@@## @@ @@[=@@=] @@ @@<# @@ @@#> @@ @@// @@ @@/* @@ @@*/@@ || ||Character Set Transliterators ||@@/= @@ @@(. @@ @@.) @@ @@(: @@ @@:) @@ [-and @@??@@ trigraphs of ISO C-] || 2015-09-19 07:25
by -
Changed line 338 from:
||Character Set Transliterators ||@@/= @@ @@(. @@ @@.) @@ @@(: @@ @@:) to:
||Character Set Transliterators ||@@/= @@ @@(. @@ @@.) @@ @@(: @@ @@:) @@ [-and @@??@@ trigraphs of ISO C-] || 2015-09-19 07:24
by -
Changed lines 337-338 from:
||Modula-2 Template Engine ||@@## @@ @@[=@@=] @@ @@<# @@ @@#> @@ @@// @@ @@/* @@ @@*/@@ || || to:
||Modula-2 Template Engine ||@@## @@ @@[=@@=] @@ @@<# @@ @@#> @@ @@// @@ @@/* @@ @@*/@@ || ||Character Set Transliterators ||@@/= @@ @@(. @@ @@.) @@ @@(: @@ @@:) [-@@and @@??@@ trigraphs of ISO C-] || 2015-09-19 07:22
by -
Changed lines 337-342 from:
||Modula-2 Template Engine ||@@## ||Character Set Transliterators ||@@/= ||Single‑Pass[[<<]]Compilers ||Pragmas ||@@FORWARD@@ to:
||Modula-2 Template Engine ||@@## @@ @@[=@@=] @@ @@<# @@ @@#> @@ @@// @@ @@/* @@ @@*/@@ ||_______|| ||Character Set Transliterators ||@@/= @@ @@(. @@ @@.) @@ @@(: @@ @@:) @@and @@??@@ trigraphs of ISO C ||_______|| 2015-09-19 07:21
by -
Added lines 330-338:
[[#UtilitySymbols]] !!!!! Symbols Reserved for External Source Code Processors To assist source code processing prior to compilation, certain symbols are reserved for exclusive use by external source code processing utilities. || class=headrow border=1 cellspacing=0 width=100% ||!Utility ||!Reserved Symbols ||_______|| ||Modula-2 Template Engine ||@@##@@ @@[=@@=]@@ @@<#@@ @@#>@@ @@//@@ @@/*@@ @@*/@@ ||_______|| ||Character Set Transliterators ||@@/=@@ @@(.@@ @@.)@@ and @@??@@ trigraphs of ISO C ||_______|| 2015-09-19 07:00
by -
Changed line 313 from:
|| to:
||Symbols ||@@`@@ @@BYCOPY@@ @@BYREF@@ @@CLASS@@ @@CONTINUE@@ @@CRITICAL@@ @@INOUT@@ @@METHOD@@ @@ON@@ @@OPTIONAL@@ @@OUT@@ @@PRIVATE@@ @@PROTECTED@@ @@PROTOCOL@@ @@PUBLIC@@ @@TRY@@ @@NO@@ @@OBJECT@@ @@YES@@ || Changed line 316 from:
|| to:
||Symbols ||@@ALL@@ @@PARALLEL@@ @@SYNC@@ || 2015-09-19 06:50
by -
Changed line 322 from:
An uncoordinated language superset is a compliant language superset for which no reserved words, identifiers or pragma symbols are reserved. Such a superset may define to:
An uncoordinated language superset is a compliant language superset for which no reserved words, identifiers or pragma symbols are reserved. Such a superset may define additional reserved words, predefined identifiers and language pragma symbols as long as they start with a single @@@@@ character. Implementations that target the [=OpenVMS=] operating system may define platform specific reserved words, predefined identifiers and language pragma symbols as long as they contain at least one @@%@@ character. 2015-09-19 06:49
by -
Changed line 322 from:
An uncoordinated language superset is a compliant language superset for which no reserved words, identifiers or pragma symbols are reserved. Such a superset may define any additional reserved words, predefined identifiers and language to:
An uncoordinated language superset is a compliant language superset for which no reserved words, identifiers or pragma symbols are reserved. Such a superset may define any additional reserved words, predefined identifiers and language pragma symbols as long as they start with a single @@@@@ character. Implementations that target the [=OpenVMS=] operating system may define platform specific reserved words, predefined identifiers and language pragma symbols as long as they contain at least one @@%@@ character. 2015-09-19 06:48
by -
Changed line 322 from:
An uncoordinated language superset is a compliant language superset for which no reserved words, identifiers or pragma symbols are reserved. Such a superset may define any additional reserved words, predefined identifiers and language pragmas as long as they start with a single @@@@@ character. Implementations that target the [=OpenVMS=] operating system to:
An uncoordinated language superset is a compliant language superset for which no reserved words, identifiers or pragma symbols are reserved. Such a superset may define any additional reserved words, predefined identifiers and language pragmas as long as they start with a single @@@@@ character. Implementations that target the [=OpenVMS=] operating system may define platform specific reserved words, predefined identifiers and pragmas as long as they contain at least one @@%@@ character. 2015-09-19 06:46
by -
Changed line 322 from:
An uncoordinated language superset is a compliant language superset for which no reserved words, identifiers or pragma symbols are reserved. Such a superset may define any additional reserved words, predefined identifiers and language pragmas as long as they start with a single @@@@@ character. to:
An uncoordinated language superset is a compliant language superset for which no reserved words, identifiers or pragma symbols are reserved. Such a superset may define any additional reserved words, predefined identifiers and language pragmas as long as they start with a single @@@@@ character. Implementations that target the [=OpenVMS=] operating system, may use the @@%@@ character anywhere within superset specific reserved words and predefined identifiers. 2015-09-19 06:43
by -
Changed line 322 from:
An uncoordinated language superset is a compliant language superset for which no reserved words, identifiers or pragma symbols are reserved. Such a superset may define any additional reserved words, predefined identifiers and language pragmas as long as they start with a single @@@@@ character. For implementations that target the [=OpenVMS=] operating system, the @@%@@ character is reserved as a legal character to:
An uncoordinated language superset is a compliant language superset for which no reserved words, identifiers or pragma symbols are reserved. Such a superset may define any additional reserved words, predefined identifiers and language pragmas as long as they start with a single @@@@@ character. For implementations that target the [=OpenVMS=] operating system, the @@%@@ character is reserved as a legal character of reserved words and predefined identifiers. 2015-09-19 06:41
by -
Changed lines 312-314 from:
||Objective[[<<]]Modula-2++ || ||Reserved Words and Identifiers || to:
||Objective[[<<]]Modula-2++ \ ||Core Language ||@@`@@ @@BYCOPY@@ @@BYREF@@ @@CLASS@@ @@CONTINUE@@ @@CRITICAL@@ @@INOUT@@ @@METHOD@@ @@ON@@ @@OPTIONAL@@ @@OUT@@ @@PRIVATE@@ @@PROTECTED@@ @@PROTOCOL@@ @@PUBLIC@@ @@TRY@@ @@NO@@ @@OBJECT@@ @@YES@@ || Changed line 316 from:
|| to:
||Core Language ||@@ALL@@ @@PARALLEL@@ @@SYNC@@ || 2015-09-19 06:36
by -
Changed line 323 from:
An uncoordinated language superset is a compliant language superset for which no to:
An uncoordinated language superset is a compliant language superset for which no reserved words, identifiers or pragma symbols are reserved. Such a superset may define any additional reserved words, predefined identifiers and language pragmas as long as they start with a single @@@@@ character. For implementations that target the [=OpenVMS=] operating system, the @@%@@ character is reserved as a legal character within reserved words and identifiers. 2015-09-19 06:32
by -
Changed lines 327-328 from:
@TRY @CATCH (* [=%=]DESCR [=%=]IMMED (* to:
@TRY @CATCH (* possible reserved words of a language superset *) [=%=]DESCR [=%=]IMMED (* possible reserved words of an [=OpenVMS=] specific superset *) 2015-09-19 06:28
by -
Changed lines 327-328 from:
@ @ to:
@TRY @CATCH (* universal superset specific reserved words *) [=%=]DESCR [=%=]IMMED (* [=OpenVMS=] superset specific reserved words *) 2015-09-19 06:28
by -
Changed line 328 from:
@[=%=]DESCR [=%=]IMMED (* [= to:
@[=%=]DESCR [=%=]IMMED (* [=OpenVMS=] superset specific reserved words *)@@ 2015-09-19 06:27
by -
Changed lines 327-328 from:
[@ to:
@@TRY @CATCH (* universal superset specific reserved words *)@ @[=%=]DESCR [=%=]IMMED (* [=%=]OpenVMS[=%=] superset specific reserved words *)@@ 2015-09-19 06:26
by -
Changed lines 327-328 from:
@ to:
[@ @TRY @CATCH (* universal superset specific reserved words *)@] [@ %DESCR %IMMED (* OpenVMS superset specific reserved words *)@] 2015-09-19 06:24
by -
Changed line 328 from:
to:
[@%DESCR %IMMED (* superset specific reserved words for OpenVMS *)@] 2015-09-19 06:23
by -
Changed lines 323-331 from:
An uncoordinated language superset is a compliant language superset for which no specific symbols are reserved. Such a superset may define any additional reserved words, predefined identifiers and language pragmas as long as they to:
An uncoordinated language superset is a compliant language superset for which no specific symbols are reserved. Such a superset may define any additional reserved words, predefined identifiers and language pragmas as long as they start with a single @@@@@ character. For implementations that target the [=OpenVMS=] operating system, the @@%@@ character is reserved as a legal character within reserved words and identifiers. >>background-color:#f4f4f4 padding:0.5em border:'thin solid gray' whitespace:pre<< '''Examples:''' @@@TRY @CATCH (* superset specific reserved words *)@@ @@%DESCR %IMMED (* superset specific reserved words for OpenVMS *)@@ >><< 2015-09-19 06:18
by -
Added lines 319-324:
[[#ExtensionSymbols]] !!!!! Symbols Reserved for Uncoordinated Superset Use An uncoordinated language superset is a compliant language superset for which no specific symbols are reserved. Such a superset may define any additional reserved words, predefined identifiers and language pragmas as long as they are prefixed with the @@@@@ mark. 2015-09-19 05:54
by -
Changed line 314 from:
||Reserved Words to:
||Reserved Words and Identifiers ||@@BYCOPY@@ @@BYREF@@ @@CLASS@@ @@CONTINUE@@ @@CRITICAL@@ @@INOUT@@ @@METHOD@@ @@ON@@ @@OPTIONAL@@ @@OUT@@ @@PRIVATE@@ @@PROTECTED@@ @@PROTOCOL@@ @@PUBLIC@@ @@TRY@@ @@NO@@ @@OBJECT@@ @@YES@@ || 2015-09-19 05:53
by -
Changed line 314 from:
||Reserved Words to:
||Reserved Words[[<<]]and Identifiers ||@@BYCOPY@@ @@BYREF@@ @@CLASS@@ @@CONTINUE@@ @@CRITICAL@@ @@INOUT@@ @@METHOD@@ @@ON@@ @@OPTIONAL@@ @@OUT@@ @@PRIVATE@@ @@PROTECTED@@ @@PROTOCOL@@ @@PUBLIC@@ @@TRY@@ @@NO@@ @@OBJECT@@ @@YES@@ || 2015-09-19 05:52
by -
Changed line 312 from:
||Objective[[<<]]Modula-2 to:
||Objective[[<<]]Modula-2+++ \ 2015-09-19 05:52
by -
Changed lines 314-315 from:
||Reserved Words ||Predefined Identifiers || to:
||Reserved Words and Identifiers ||@@BYCOPY@@ @@BYREF@@ @@CLASS@@ @@CONTINUE@@ @@CRITICAL@@ @@INOUT@@ @@METHOD@@ @@ON@@ @@OPTIONAL@@ @@OUT@@ @@PRIVATE@@ @@PROTECTED@@ @@PROTOCOL@@ @@PUBLIC@@ @@TRY@@ @@NO@@ @@OBJECT@@ @@YES@@ || 2015-09-19 05:40
by -
Changed line 301 from:
||!Facility ||! to:
||!Facility ||!Reserved Symbols ||_______|| Changed line 311 from:
||!Superset ||! to:
||!Superset ||!Reserved Symbols ||_______|| 2015-09-19 04:58
by -
Changed lines 301-304 from:
||!Facility ||!Symbols Reserved for Use by Facility || to:
||!Facility ||!Symbols Reserved for Use by Facility ||_______|| ||Symbolic Inline Assembler ||@@ASSEMBLER@@ @@ASM@@ @@REG@@ ||_______|| ||Future Use (Phase II Deliverables) ||@@ACTOR@@ @@PRIORITY@@ ||_______|| Changed line 321 from:
||Single‑Pass[[<<]]Compilers ||Pragmas ||@@FORWARD@@ || to:
||Single‑Pass[[<<]]Compilers ||Pragmas ||@@FORWARD@@ || 2015-09-19 04:50
by -
Changed lines 306-307 from:
!!!!! Symbols Reserved for to:
!!!!! Symbols Reserved for Coordinated Superset Use Added line 320:
2015-09-19 04:46
by -
Changed line 293 from:
!!!! to:
!!!! Reserved Symbols 2015-09-19 04:46
by -
Changed line 295 from:
Certain symbols are reserved for use by optional language facilities, language extensions and external source code processing utilities. to:
Certain symbols are reserved for use by optional language facilities, language extensions and external source code processing utilities. Some are specifically reserved for future use. 2015-09-19 04:45
by -
Changed line 295 from:
to:
Certain symbols are reserved for use by optional language facilities, language extensions and external source code processing utilities. Others are taboo or reserved for future use. 2015-09-19 04:41
by -
Changed line 298 from:
!!!!! Symbols Reserved for Optional and Future to:
!!!!! Symbols Reserved for Optional and Future Use 2015-09-19 04:38
by -
Changed line 298 from:
!!!!! Symbols Reserved for Optional Language Facilities to:
!!!!! Symbols Reserved for Optional and Future Language Facilities 2015-09-19 04:37
by -
Changed line 303 from:
|| to:
||Future Use (Phase II Deliverables) ||@@ACTOR@@ @@PRIORITY@@ || 2015-09-19 04:34
by -
Changed line 302 from:
|| to:
||Symbolic Inline Assembler ||@@ASSEMBLER@@ @@ASM@@ @@REG@@ || 2015-09-19 04:31
by -
Changed lines 297-305 from:
[[# to:
[[#OptionalSymbols]] !!!!! Symbols Reserved for Optional Language Facilities || class=headrow border=1 cellspacing=0 width=100% ||!Facility ||!Symbols Reserved for Use by Facility || ||Pseudo-Module ASSEMBLER ||@@ASSEMBLER@@ @@ASM@@ @@REG@@ || ||Phase II Deliverables ||@@ACTOR@@ @@PRIORITY@@ || [[#SupersetSymbols]] 2015-09-19 04:08
by -
Changed lines 312-313 from:
||Single to:
||Single‑Pass[[<<]]Compilers ||Pragmas ||@@FORWARD@@ || 2015-09-19 04:06
by -
Changed line 304 from:
||Objective to:
||Objective[[<<]]Modula-2++++ \ Changed line 309 from:
||Parallel to:
||Parallel[[<<]]Modula-2++ \ Changed line 312 from:
||Single to:
||Single-Pass[[<<]]Compilers ||Pragmas ||@@FORWARD@@ || 2015-09-19 04:04
by -
Added lines 309-312:
||Parallel Modula-2++ \ ||Reserved Words ||@@ALL@@ @@PARALLEL@@ @@SYNC@@ || ||Pragmas ||@@LOCAL@@ @@SPREAD@@ @@CYCLE@@ @@SBLOCK@@ @@CBLOCK@@ || ||Single Pass Compilers ||Pragmas ||@@FORWARD@@ || 2015-09-19 04:01
by -
Changed line 306 from:
||Reserved Words ||@@BYCOPY@@ @@BYREF@@ @@CLASS@@ @@CONTINUE@@ @@CRITICAL@@ @@INOUT@@ @@METHOD@@ @@ON@@ @@OPTIONAL @@OUT@@ @@PRIVATE@@ @@PROTECTED@@ @@PROTOCOL@@ @@PUBLIC@@ @@TRY@@ || to:
||Reserved Words ||@@BYCOPY@@ @@BYREF@@ @@CLASS@@ @@CONTINUE@@ @@CRITICAL@@ @@INOUT@@ @@METHOD@@ @@ON@@ @@OPTIONAL@@ @@OUT@@ @@PRIVATE@@ @@PROTECTED@@ @@PROTOCOL@@ @@PUBLIC@@ @@TRY@@ || 2015-09-19 04:01
by -
Changed lines 306-308 from:
||Reserved Words ||BYCOPY BYREF CLASS CONTINUE CRITICAL INOUT METHOD ON OPTIONAL OUT PRIVATE PROTECTED PROTOCOL PUBLIC TRY || ||Predefined Identifiers ||NO OBJECT YES || ||Pragmas ||ACTION FRAMEWORK OUTLET QUALIFIED || to:
||Reserved Words ||@@BYCOPY@@ @@BYREF@@ @@CLASS@@ @@CONTINUE@@ @@CRITICAL@@ @@INOUT@@ @@METHOD@@ @@ON@@ @@OPTIONAL @@OUT@@ @@PRIVATE@@ @@PROTECTED@@ @@PROTOCOL@@ @@PUBLIC@@ @@TRY@@ || ||Predefined Identifiers ||@@NO@@ @@OBJECT@@ @@YES@@ || ||Pragmas ||@@ACTION@@ @@FRAMEWORK@@ @@OUTLET@@ @@QUALIFIED@@ || 2015-09-19 03:58
by -
Changed lines 303-304 from:
||!Superset ||!Symbols Reserved for Use by Superset||_______|| || to:
||!Superset ||!Symbols Reserved for Use by Superset ||_______|| ||Objective Modula-2++++ \ 2015-09-19 03:57
by -
Added line 281:
[[#ControlCodes]] Changed lines 290-309 from:
Any other control codes within a source file shall cause a compile time error. An unrecognised BOM shall cause a fatal compile time error. Encoding support other than ASCII and [=UTF8=] is implementation defined. to:
Any other control codes within a source file shall cause a compile time error. An unrecognised BOM shall cause a fatal compile time error. Encoding support other than ASCII and [=UTF8=] is implementation defined. [[#ReservedSymbols]] !!!! Symbols Reserved for Language Extensions and Utilities Although not part of the language itself, certain symbols are reserved for use by language extensions and external source code processing utilities. Others are taboo or reserved for possible future use. [[#ControlCodes]] !!!!! Symbols Reserved for Use by Coordinated Language Supersets A coordinated language superset is a compliant language superset for whose exclusive use certain symbols are reserved. The reserved symbols of coordinated language supersets are listed below: || class=headrow border=1 cellspacing=0 width=100% ||!Superset ||!Symbols Reserved for Use by Superset||_______|| ||IObjective Modula-2++++ \ ||Special Symbols ||@@`@@ || ||Reserved Words ||BYCOPY BYREF CLASS CONTINUE CRITICAL INOUT METHOD ON OPTIONAL OUT PRIVATE PROTECTED PROTOCOL PUBLIC TRY || ||Predefined Identifiers ||NO OBJECT YES || ||Pragmas ||ACTION FRAMEWORK OUTLET QUALIFIED || 2015-09-19 02:19
by -
Changed line 207 from:
%silver% [[EBNF.NonTerminals# to:
%silver% [[EBNF.NonTerminals#structuredValue|'''EBNF''']] | [[SyntaxDiagrams.NonTerminals#structuredValue|'''Syntax Diagram''']]%% 2015-09-19 02:18
by -
Added lines 140-141:
%silver% [[EBNF.Terminals#NumberLiteral|'''EBNF''']] | [[SyntaxDiagrams.Terminals#NumberLiteral|'''Syntax Diagram''']]%% Added lines 193-194:
%silver% [[EBNF.Terminals#StringLiteral|'''EBNF''']] | [[SyntaxDiagrams.Terminals#StringLiteral|'''Syntax Diagram''']]%% Added lines 207-208:
%silver% [[EBNF.NonTerminals#structuredValuel|'''EBNF''']] | [[SyntaxDiagrams.NonTerminals#structuredValuel|'''Syntax Diagram''']]%% Added lines 238-239:
%silver% [[EBNF.IgnoreSymbols#LineComment|'''EBNF''']] | [[SyntaxDiagrams.IgnoreSymbols#LineComment|'''Syntax Diagram''']]%% Added lines 252-253:
%silver% [[EBNF.IgnoreSymbols#BlockComment|'''EBNF''']] | [[SyntaxDiagrams.IgnoreSymbols#BlockComment|'''Syntax Diagram''']]%% Added lines 265-266:
%silver% [[EBNF.Pragmas#pragma|'''EBNF''']] | [[SyntaxDiagrams.Pragmas#pragma|'''Syntax Diagram''']]%% 2015-09-19 02:11
by -
Changed line 102 from:
%silver% [ to:
%silver% [[EBNF.Terminals#Ident|'''EBNF''']] | [[SyntaxDiagrams.Terminals#Ident|'''Syntax Diagram''']]%% 2015-09-19 02:11
by -
Deleted line 97:
Added lines 101-102:
%silver% [-[[EBNF.Terminals#Ident|'''EBNF''']] | [[SyntaxDiagrams.Terminals#Ident|'''Syntax Diagram''']]%%-] 2015-09-19 02:09
by -
Changed line 98 from:
%silver% to:
%silver% [-[[EBNF.Terminals#Ident|'''EBNF''']] | [[SyntaxDiagrams.Terminals#Ident|'''Syntax Diagram''']]%%-] 2015-09-19 02:07
by -
Changed lines 96-97 from:
!!!! Identifiers %silver% to:
!!!! Identifiers %silver% [-[[EBNF.Terminals#Ident|EBNF]] | [[SyntaxDiagrams.Terminals#Ident|Syntax Diagram]]%%-] 2015-09-19 02:05
by -
Changed lines 2-3 from:
!!! Character Sets to:
!!!! Character Sets Changed lines 7-8 from:
!!! Reserved Words to:
!!!! Reserved Words Changed lines 26-27 from:
!!! Schrödinger's Tokens to:
!!!! Schrödinger's Tokens Changed lines 43-44 from:
!!! Special Symbols to:
!!!! Special Symbols Changed lines 54-55 from:
!!!! Operators to:
!!!!! Operators Changed lines 61-62 from:
!!!! Punctuation to:
!!!!! Punctuation Changed lines 68-69 from:
!!!! Grouping Delimiters to:
!!!!! Grouping Delimiters Changed lines 75-76 from:
!!!! Quoted Text Delimiters to:
!!!!! Quoted Text Delimiters Changed lines 82-83 from:
!!!! Comment Delimiters to:
!!!!! Comment Delimiters Changed lines 89-90 from:
!!!! Pragma Punctuation and Delimiters to:
!!!!! Pragma Punctuation and Delimiters Changed line 96 from:
!!! Identifiers \ to:
!!!! Identifiers \ Changed lines 110-111 from:
!!! Reserved Identifiers to:
!!!!! Reserved Identifiers Changed lines 118-119 from:
!!! User-Definable Identifiers to:
!!!!! User-Definable Identifiers Changed lines 123-124 from:
!!! Literals to:
!!!! Literals Changed lines 131-132 from:
!!!! Numeric literals to:
!!!!! Numeric literals Changed lines 140-141 from:
!!!! Decimal Number Literals to:
!!!!! Decimal Number Literals Changed lines 152-153 from:
!!! Base-2 Number Literals to:
!!!! Base-2 Number Literals Changed lines 163-164 from:
!!! Base-16 Number Literals to:
!!!! Base-16 Number Literals Changed lines 174-175 from:
!!! Character Code Literals to:
!!!! Character Code Literals Changed lines 186-187 from:
!!! String Literals to:
!!!! String Literals Changed lines 198-199 from:
!!! Structured Literals to:
!!!! Structured Literals Changed lines 212-213 from:
!!! Non-Semantic Symbols to:
!!!! Non-Semantic Symbols Changed lines 220-221 from:
!!! Comments to:
!!!!! Comments Changed lines 227-228 from:
!!! Line Comments to:
!!!!! Line Comments Changed lines 239-240 from:
!!! Block Comments to:
!!!!! Block Comments Changed lines 249-250 from:
!!! Pragmas to:
!!!!! Pragmas Changed lines 262-263 from:
!!! Lexical Separators to:
!!!! Lexical Separators Changed line 268 from:
!!!! Control Codes to:
!!!!! Control Codes 2015-09-19 02:01
by -
Changed lines 96-97 from:
!!! to:
!!! Identifiers \ %silver% [-[[EBNF.Terminals#Ident|EBNF]]%%-] 2015-09-18 23:03
by -
Changed line 57 from:
@@+ - * *. / \ = # to:
@@+ - * *. / \ = # < <= > >= == :: ^ &@@ Changed line 64 from:
@@. , : ; | to:
@@. , : ; | ~ + * < > .. := ++ -- -> <> >< +/-@@ 2015-09-18 22:53
by -
Changed lines 51-52 from:
* [[#PragmaDelimiters|pragma to:
* [[#PragmaDelimiters|pragma punctuation and delimiters]] Changed line 89 from:
!!!! Pragma to:
!!!! Pragma Punctuation and Delimiters 2015-09-18 16:35
by -
Changed line 98 from:
Identifiers are names for syntactic entities in a program. to:
Identifiers are names for syntactic entities in a program. They start with a letter, low-line or dollar sign, followed by any number and combination of letters, low-lines, dollar signs and digits. 2015-09-18 16:15
by -
Changed lines 222-223 from:
* line comments to:
* [[#LineComments|line comments]] * [[#BlockComments|block comments]] 2015-09-18 16:13
by -
Changed line 113 from:
* [[ to:
* [[#DualUseIdents|Schrödinger's tokens]] 2015-09-18 16:12
by -
Changed lines 28-29 from:
Schrödinger's tokens are symbols that may either be used as reserved words or as identifiers, depending on context. There are 32 Schrödinger's tokens: to:
Schrödinger's tokens are symbols that may either be used as reserved words or as [[#Identifiers|identifiers]], depending on context. There are 32 Schrödinger's tokens: Changed lines 46-52 from:
* operators to:
* [[#Operators|operators]] * [[#Punctuation|punctuation]] * [[#GroupingDelimiters|grouping delimiters]] * [[#TextDelimiters|quoted text delimiters]] * [[#CommentDelimiters|comment delimiters]] * [[#PragmaDelimiters|pragma affix and delimiters]] Changed line 113 from:
* Schrödinger's to:
* [[@DualUseIdents|Schrödinger's tokens]] Changed lines 214-216 from:
* comments to:
* [[#Comments|comments]] * [[#Pragmas|pragmas]] * [[#LexicalSeparators|lexical separators]] 2015-09-18 16:05
by -
Changed line 250 from:
Pragmas are in-source directives to control or influence the compilation process but they do not change the meaning of the program. They consist of a pragma body enclosed in opening @@<*@@ and closing @@*>@@ pragma delimiters. to:
Pragmas are in-source compiler directives to control or influence the compilation process but they do not change the meaning of the program. They consist of a pragma body enclosed in opening @@<*@@ and closing @@*>@@ pragma delimiters. 2015-09-18 16:04
by -
Changed line 228 from:
Line comments start with a @@!@@ symbol at the first column of a line and terminate at the end of the same line. They are intended for in-source documentation. to:
Line comments start with a @@!@@ symbol at the first column of a line and terminate at the end of the same line. They are intended for in-source documentation, for example in combination with documentation generators. 2015-09-18 16:00
by -
Changed line 57 from:
@@+ to:
@@+ - * *. / \ = # > >= < <= == :: &@@ Changed line 64 from:
@@. to:
@@. , : ; | ^ ~ + * .. := ++ -- -> <> >< +/-@@ Changed line 71 from:
@@( ) to:
@@( ) [ ] { }@@ Changed line 78 from:
@@' " << >>@@ to:
@@' " << >>@@ Changed line 85 from:
@@! (* *)@@ to:
@@! (* *)@@ Changed line 92 from:
@@? <* *>@@ to:
@@? <* *>@@ 2015-09-18 15:58
by -
Changed lines 54-55 from:
!!! Operators to:
!!!! Operators Changed lines 61-62 from:
!!! Punctuation to:
!!!! Punctuation Changed lines 68-69 from:
!!! Grouping Delimiters to:
!!!! Grouping Delimiters Changed lines 75-76 from:
!!! Quoted Text Delimiters to:
!!!! Quoted Text Delimiters Changed lines 82-83 from:
!!! Comment Delimiters to:
!!!! Comment Delimiters Changed line 89 from:
!!! Pragma Affix and Delimiters to:
!!!! Pragma Affix and Delimiters 2015-09-18 15:57
by -
Changed line 45 from:
Special symbols are symbols that consist of one, two or three non-alphanumeric quotable characters, are visible in any scope, have special meaning in the language and may not be redefined. They fall into to:
Special symbols are symbols that consist of one, two or three non-alphanumeric quotable characters, are visible in any scope, have special meaning in the language and may not be redefined. They fall into six categories: Added lines 50-51:
* comment delimiters * pragma affix and delimiters 2015-09-18 15:56
by -
Added lines 6-41:
[[#ResWords]] !!! Reserved Words Reserved words are symbols that consist of a sequence of all-uppercase letters, are visible in any scope, have special meaning in the language and may not be redefined. There are 50 reserved words: >>background-color:#f4f4f4 padding:0.5em border:'thin solid gray' whitespace:pre<< || border=0 cellpadding=0 width=90% ALIAS DEFINITION GENLIB NOT RETAIN AND DIV IF OF RETURN ARGLIST DO IMPLEMENTATION OPAQUE SET ARRAY ELSE IMPORT OR THEN BEGIN ELSIF IN POINTER TO BLUEPRINT END LOOP PROCEDURE TYPE BY ENUM MOD RECORD UNTIL CASE EXIT MODULE REFERENTIAL VAR CONST FOR NEW RELEASE WHILE COPY FROM NONE REPEAT YIELD >><< [[#DualUseIdents]] !!! Schrödinger's Tokens Schrödinger's tokens are symbols that may either be used as reserved words or as identifiers, depending on context. There are 32 Schrödinger's tokens: >>background-color:#f4f4f4 padding:0.5em border:'thin solid gray' whitespace:pre<< || border=0 cellpadding=0 width=90% ABS INSERT STORE TMAX VAL ADDRESS LENGTH SUBSET TMIN VALUE APPEND OCTET SXF TORDERED WRITE CAST READ TDYN TREFC WRITEF COUNT READNEW TFLAGS TSCALAR COROUTINE REMOVE TLIMIT TSORTED EXISTS SEEK TLITERAL UNSAFE >><< Changed lines 45-132 from:
||!Category ||!Symbol ||!Usage ||!Lexical Scope || ||Intra-Literal++++ \ ||[@ \ @] ||Escape Prefix for LF and TAB ||Within Quoted Literals || ||[@ ' @] ||Digit Separator ||Within Number Literals || ||[@ . @] ||Decimal Point ||Within Real Number Literals++ || ||[@ + - @] ||Exponent Sign || ||Special [[<<]]Operators+++ \ ||[@ :: @] ||Type Conversion ||Within Expressions || ||[@ == @] ||Identity Test ||Within ADT Expressions || ||[@ & @] ||Array, List and String Concatenation ||Within Array, List and String Expressions || ||Arithmetic [[<<]]Operators+++++ \ ||[@ + @] ||Unary Plus, Addition ||Within Arithmetic Expressions+++++ || ||[@ - @] ||Unary Minus, Subtraction || ||[@ * @] ||Multiplication || ||[@ / @] ||Real Division || ||[@ *. @] ||Dot Product || ||Relational [[<<]]Operators++++++ \ ||[@ = @] ||Equality Test ||Within Arithmetic Expressions++++++ || ||[@ # @] ||Inequality Test || ||[@ > @] ||Greater-Than Test || ||[@ >= @] ||Greater-Or-Equal Test || ||[@ < @] ||Less-Than Test || ||[@ <= @] ||Less-Or-Equal Test || ||Set [[<<]]Operators++++++++ \ ||[@ + @] ||Set Union ||Within Set Expressions++++++++ || ||[@ \ @] ||Set Difference || ||[@ * @] ||Set Intersection || ||[@ / @] ||Symmetric Set Difference || ||[@ > @] ||Proper Superset Test || ||[@ >= @] ||Superset Test || ||[@ < @] ||Proper Subset Test || ||[@ <= @] ||Subset Test || ||Special Syntax+++++++++++ \ ||[@ + @] ||Re-Export Suffix, Enumeration Extension Prefix || || ||[@ * @] ||Wildcard Import Suffix, Restricted Export Prefix || || ||[@ := @] ||Assignment || || ||[@ ++ @] ||Increment Statement Suffix, FOR Loop Ascender || || ||[@ -- @] ||Decrement Statement Suffix, FOR Loop Descender || || ||[@ .. @] ||Subrange Constructor, Slice Range Specifier || || ||[@ ^ @] ||Pointer Dereferencing Suffix || || ||[@ -> @] ||One-Way Dependency ||Blueprint || ||[@ <> @] ||Mutual Dependency Constraint ||Blueprint || ||[@ >< @] ||Mutual Exclusion Constraint ||Blueprint || ||[@ +/- @] ||Unary Minus Binding Specifier ||Blueprint || ||Punctuation+++++++ \ ||[@ . @]++ ||Name Separator ||Within Qualified Identifier || ||Module Terminator ||End of Module || ||[@ , @] ||Item Separator ||Within Item List || ||[@ ; @] ||List Separator ||Within Declaration and Statement Sequences || ||[@ : @] ||Head Body Separator ||Within Declarations and Formal Parameters || ||[@ | @]++ ||Case Label Prefix ||Within Case Label List || ||Terminator Prefix ||Within Formal Parameters || ||Delimiters+++++ \ ||[@ ' " @] ||Quoted String Literal Delimiters ||Within Expressions || ||[@ ( ) @] ||Expression Grouping, Parameter List Delimiters ||Within Expressions, Procedure Headers || ||[@ { } @] ||Structured Value Delimiters ||Within Expressions, Formal Parameters || ||[@ [ ] @] ||Array Index, Subrange and Slice Delimiters ||Within Expressions || ||[@ << >> @] ||Replacement Text Delimiters ||Within Library Generation Directive || ||Comments++ \ ||[@ ! @] ||Line Comment Prefix ||At First Column of Any Line || ||[@ (* *) @] ||Block Comment Delimiters ||Anywhere Before or After a Token || ||Pragmas++ \ ||[@ ? @] ||Value Pragma Query Prefix ||Within Message Pragma || ||[@ <* *> @] ||Pragma Delimiters ||Before or After Certain Tokens || [[#Literals]] !!! Literals There are three types of literals: * [[#NumericLiterals|numeric literals]] * [[#StringLiterals|string literals]] * [[#StructuredLiterals|structured literals]] [[#NumericLiterals]] !!!! Numeric literals Numeric literals represent a numeric compile time value. There are four types: * [[#DecimalNumberLiterals|decimal number literals]] * [[#Base2NumberLiterals|base-2 number literals]] * [[#Base16NumberLiterals|base-16 number literals]] * [[#CharCodeLiterals|character code literals]] [[#DecimalNumberLiterals]] !!!! Decimal Number Literals Decimal number literals represent decimal whole and real numbers. They are comprised of a mandatory integral part followed by an optional fractional part followed by an optional exponent. Integral and fractional part are separated by a decimal point. Fractional part and exponent are separated by the exponent prefix [@e@] followed by an optional sign. Integral part, fractional part and exponent are comprised of a non-empty sequence of decimal digits. Digits may be grouped using the single quote as a digit separator. A digit separator may only appear in between two digits. to:
Special symbols are symbols that consist of one, two or three non-alphanumeric quotable characters, are visible in any scope, have special meaning in the language and may not be redefined. They fall into four categories: * operators * punctuation * grouping delimiters * quoted text delimiters [[#Operators]] !!! Operators Changed lines 55-58 from:
@@0.0, 3.1415, 7.531e+12 (* real numbers *)@@ @@1'234'500'000, 0.987'654'321e+99 (* with digit separators *) to:
@@+ - * *. / \ = # > >= < <= == :: &@@ Changed lines 58-62 from:
[[# !!! Base-2 number literals represent whole numbers in base-2 notation. They are comprised of base-2 number prefix [@0b@] followed by a non-empty sequence of base-2 digits. Digits may be grouped using the single quote as a digit separator. A digit separator may only appear in between two digits. to:
[[#Punctuation]] !!! Punctuation Changed lines 62-64 from:
@@0b1111'0000'0101'0011 (* with digit separators to:
@@. , : ; | ^ ~ + * .. := ++ -- -> <> >< +/-@@ Changed lines 65-69 from:
[[# !!! Base-16 number literals represent whole numbers in base-16 notation. They are comprised of base-16 number prefix [@0x@] followed by a non-empty sequence of base-16 digits. Digits may be grouped using the single quote as a digit separator. A digit separator may only appear in between two digits. to:
[[#GroupingDelimiters]] !!! Grouping Delimiters Changed lines 69-71 from:
@@0x00'00'FF'FF, 0xDEAD'BEEF (* with digit separators *) to:
@@( ) [ ] { }@@ Changed lines 72-76 from:
[[# !!! Character code literals represent Unicode code points in base-16 notation. They are comprised of Unicode prefix [@0u@] followed by a non-empty sequence of base-16 digits. Digits may be grouped using the single quote as a digit separator. A digit separator may only appear in between two digits. to:
[[#TextDelimiters]] !!! Quoted Text Delimiters Changed lines 76-79 from:
' @@0u7F (* DEL *)@@ @@0uA9 (* copyright *)@@ @@0u20'AC (* Euro currency sign *) to:
@@' " << >>@@ Changed lines 79-83 from:
[[# !!! String literals are sequences of quotable characters and optional escape sequences, enclosed in single quotes or double quotes. String literals may not contain any control code characters. to:
[[#CommentDelimiters]] !!! Comment Delimiters Changed lines 83-86 from:
@@'he said "Modula-2" and smiled'@@ @@"this is the end of the line\n" to:
@@! (* *)@@ Changed lines 86-90 from:
[[# !!! Structured literals are compound values consisting of zero or more terminal symbols, enclosed in braces. Structured literals may be nested. to:
[[#PragmaDelimiters]] !!! Pragma Affix and Delimiters Changed lines 90-94 from:
@@{ "a", "b", "c" }@@ @@{ 1 .. 5 } (* equivalent to: *) { 1, 2, 3, 4, 5 }@@ @@{ 0 BY 5 } (* equivalent to: *) { 0, 0, 0, 0, 0 } to:
@@? <* *>@@ Changed lines 93-97 from:
[[# !!! Reserved words are symbols that consist of to:
[[#Identifiers]] !!! Identifiers Identifiers are names for syntactic entities in a program. The start with a letter, low-line or dollar sign, followed by any number and combination of letters, low-lines, dollar signs and digits. The use of the low-line and dollar sign within identifiers is permitted in support of environments and platforms where they are an integral part of the naming convention, for instance when writing components for or mapping to operating system [=APIs=] that use them. However, such an identifier must also contain at least one letter or digit. A non-conformant identifier shall cause a compile time error. The definition of an identifier in a foreign API style shall cause a soft compile time warning. However, the warning may be automatically silenced when @@FFI@@ of module @@UNSAFE@@ is imported into the scope of the compiling module. Changed lines 101-111 from:
ALIAS AND DIV IF OF RETURN ARGLIST DO IMPLEMENTATION OPAQUE SET ARRAY ELSE IMPORT OR THEN BEGIN ELSIF IN POINTER TO BLUEPRINT END LOOP PROCEDURE TYPE BY ENUM MOD RECORD UNTIL CASE EXIT MODULE REFERENTIAL VAR CONST FOR NEW RELEASE WHILE COPY FROM NONE REPEAT YIELD to:
'''Examples:''' @@(* Modula-2 style *) Foo, setBar, getBaz, Str80, Matrix8x4, FOOBAR@@ @@(* Foreign API styles *) _foo, __bar, __baz__, foo_bar_123, $foo, sys$foo, SYS$BAR@@ Deleted lines 105-133:
!!! Schrödinger's Tokens Schrödinger's tokens are symbols that may either be used as reserved words or as identifiers, depending on context. There are 32 Schrödinger's tokens: >>background-color:#f4f4f4 padding:0.5em border:'thin solid gray' whitespace:pre<< || border=0 cellpadding=0 width=90% ABS INSERT STORE TMAX VAL ADDRESS LENGTH SUBSET TMIN VALUE APPEND OCTET SXF TORDERED WRITE CAST READ TDYN TREFC WRITEF COUNT READNEW TFLAGS TSCALAR COROUTINE REMOVE TLIMIT TSORTED EXISTS SEEK TLITERAL UNSAFE >><< [[#Identifiers]] !!! Identifiers Identifiers are names for syntactic entities in a program. The start with a letter, low-line or dollar sign, followed by any number and combination of letters, low-lines, dollar signs and digits. The use of the low-line and dollar sign within identifiers is permitted in support of environments and platforms where they are an integral part of the naming convention, for instance when writing components for or mapping to operating system [=APIs=] that use them. However, such an identifier must also contain at least one letter or digit. A non-conformant identifier shall cause a compile time error. The definition of an identifier in a foreign API style shall cause a soft compile time warning. However, the warning may be automatically silenced when @@FFI@@ of module @@UNSAFE@@ is imported into the scope of the compiling module. >>background-color:#f4f4f4 padding:0.5em border:'thin solid gray' whitespace:pre<< '''Examples:''' @@(* Modula-2 style *) Foo, setBar, getBaz, Str80, Matrix8x4, FOOBAR@@ @@(* Foreign API styles *) _foo, __bar, __baz__, foo_bar_123, $foo, sys$foo, SYS$BAR@@ >><< Added lines 118-206:
[[#Literals]] !!! Literals There are three types of literals: * [[#NumericLiterals|numeric literals]] * [[#StringLiterals|string literals]] * [[#StructuredLiterals|structured literals]] [[#NumericLiterals]] !!!! Numeric literals Numeric literals represent a numeric compile time value. There are four types: * [[#DecimalNumberLiterals|decimal number literals]] * [[#Base2NumberLiterals|base-2 number literals]] * [[#Base16NumberLiterals|base-16 number literals]] * [[#CharCodeLiterals|character code literals]] [[#DecimalNumberLiterals]] !!!! Decimal Number Literals Decimal number literals represent decimal whole and real numbers. They are comprised of a mandatory integral part followed by an optional fractional part followed by an optional exponent. Integral and fractional part are separated by a decimal point. Fractional part and exponent are separated by the exponent prefix [@e@] followed by an optional sign. Integral part, fractional part and exponent are comprised of a non-empty sequence of decimal digits. Digits may be grouped using the single quote as a digit separator. A digit separator may only appear in between two digits. >>background-color:#f4f4f4 padding:0.5em border:'thin solid gray' whitespace:pre<< '''Examples:''' @@0, 42, 12300, 32767 (* whole numbers *)@@ @@0.0, 3.1415, 7.531e+12 (* real numbers *)@@ @@1'234'500'000, 0.987'654'321e+99 (* with digit separators *)@@ >><< [[#Base2NumberLiterals]] !!! Base-2 Number Literals Base-2 number literals represent whole numbers in base-2 notation. They are comprised of base-2 number prefix [@0b@] followed by a non-empty sequence of base-2 digits. Digits may be grouped using the single quote as a digit separator. A digit separator may only appear in between two digits. >>background-color:#f4f4f4 padding:0.5em border:'thin solid gray' whitespace:pre<< '''Examples:''' @@0b0110 (* without digit separator *)@@ @@0b1111'0000'0101'0011 (* with digit separators *)@@ >><< [[#Base16NumberLiterals]] !!! Base-16 Number Literals Base-16 number literals represent whole numbers in base-16 notation. They are comprised of base-16 number prefix [@0x@] followed by a non-empty sequence of base-16 digits. Digits may be grouped using the single quote as a digit separator. A digit separator may only appear in between two digits. >>background-color:#f4f4f4 padding:0.5em border:'thin solid gray' whitespace:pre<< '''Examples:''' @@0x80, 0xFF, 0xCAFED00D (* without digit separator *)@@ @@0x00'00'FF'FF, 0xDEAD'BEEF (* with digit separators *)@@ >><< [[#CharCodeLiterals]] !!! Character Code Literals Character code literals represent Unicode code points in base-16 notation. They are comprised of Unicode prefix [@0u@] followed by a non-empty sequence of base-16 digits. Digits may be grouped using the single quote as a digit separator. A digit separator may only appear in between two digits. >>background-color:#f4f4f4 padding:0.5em border:'thin solid gray' whitespace:pre<< '''Examples:''' @@0u7F (* DEL *)@@ @@0uA9 (* copyright *)@@ @@0u20'AC (* Euro currency sign *)@@ >><< [[#StringLiterals]] !!! String Literals String literals are sequences of quotable characters and optional escape sequences, enclosed in single quotes or double quotes. String literals may not contain any control code characters. >>background-color:#f4f4f4 padding:0.5em border:'thin solid gray' whitespace:pre<< '''Examples:''' @@"it's nine o'clock"@@ @@'he said "Modula-2" and smiled'@@ @@"this is the end of the line\n"@@ >><< [[#StructuredLiterals]] !!! Structured Literals Structured literals are compound values consisting of zero or more terminal symbols, enclosed in braces. Structured literals may be nested. >>background-color:#f4f4f4 padding:0.5em border:'thin solid gray' whitespace:pre<< '''Examples:''' @@{ 1, 2, 3 }@@ @@{ "a", "b", "c" }@@ @@{ 1 .. 5 } (* equivalent to: *) { 1, 2, 3, 4, 5 }@@ @@{ 0 BY 5 } (* equivalent to: *) { 0, 0, 0, 0, 0 }@@ >><< 2015-09-18 15:21
by -
Added lines 179-193:
>><< [[#DualUseIdents]] !!! Schrödinger's tokens Schrödinger's tokens are symbols that may either be used as reserved words or as identifiers, depending on context. There are 32 Schrödinger's tokens: >>background-color:#f4f4f4 padding:0.5em border:'thin solid gray' whitespace:pre<< || border=0 cellpadding=0 width=90% ABS INSERT STORE TMAX VAL ADDRESS LENGTH SUBSET TMIN VALUE APPEND OCTET SXF TORDERED WRITE CAST READ TDYN TREFC WRITEF COUNT READNEW TFLAGS TSCALAR COROUTINE REMOVE TLIMIT TSORTED EXISTS SEEK TLITERAL UNSAFE 2015-09-18 15:07
by -
Deleted line 166:
Deleted line 197:
Deleted line 210:
Deleted line 218:
Changed line 241 from:
@@IF (* no match found *) this^.next = NIL THEN (* comment (* nested comment *) *)@@ to:
@@IF (* no match found *) this^.next = NIL THEN (* comment (* nested comment *) *) ...@@ Deleted line 260:
Deleted line 266:
2015-09-18 15:03
by -
Changed line 278 from:
Any other control codes within a source file shall cause a compile time error. An unrecognised BOM shall cause a fatal compile time error. Encoding support other than ASCII and UTF8 is implementation defined. to:
Any other control codes within a source file shall cause a compile time error. An unrecognised BOM shall cause a fatal compile time error. Encoding support other than ASCII and [=UTF8=] is implementation defined. 2015-09-18 15:02
by -
Changed line 276 from:
* @ to:
* [@UTF8-BOM@] denoting code sequence @@{ 9uEF, 0uBB, 0uBF }@@ but permitted only at the very beginning of a file. 2015-09-18 15:02
by -
Added lines 261-278:
[[#LexicalSeparators]] !!! Lexical Separators Lexical separators terminate a numeric literal, identifier, reserved word or a pragma symbol. There are two kinds. * Whitespace * Control Codes !!!! Control Codes The following control codes may appear within Modula-2 source text but not within string literals: * @@TAB@@ denoting horizontal tabulator code @@0u9@@ * @@LF@@ denoting line feed code @@0uA@@ * @@CR@@ denoting carriage return code @@0uD@@ * @@UTF8-BOM@@ denoting code sequence @@{ 9uEF, 0uBB, 0uBF }@@ but permitted only at the very beginning of a file. Any other control codes within a source file shall cause a compile time error. An unrecognised BOM shall cause a fatal compile time error. Encoding support other than ASCII and UTF8 is implementation defined. 2015-09-18 14:54
by -
Changed line 258 from:
@ to:
[@<*GM2.UnrollLoops=FALSE|WARN*> (* implementation defined pragma *)@] 2015-09-18 14:54
by -
Added lines 247-260:
[[#Pragmas]] !!! Pragmas Pragmas are in-source directives to control or influence the compilation process but they do not change the meaning of the program. They consist of a pragma body enclosed in opening @@<*@@ and closing @@*>@@ pragma delimiters. A pragma body consists of a non-empty token sequence whose syntax is defined by the pragma grammar. Whitespace, tabulator and line breaks may occur between tokens within a pragma, but comments are not permitted. A comment delimiter within a pragma shall cause a compile time error. There are language defined and optional implementation defined pragmas. >>background-color:#f4f4f4 padding:0.5em border:'thin solid gray' whitespace:pre<< '''Examples:''' @@<*ALIGN=TSIZE(LONGCARD)*> (* language defined pragma *)@@ @@<*GM2.UnrollLoops=FALSE|WARN*> (* implementation defined pragma *)@@ >><< 2015-09-18 14:44
by -
Changed lines 229-230 from:
Line comments start with a @@!@@ symbol at the first column of a line and terminate at the end of the same line. to:
Line comments start with a @@!@@ symbol at the first column of a line and terminate at the end of the same line. They are intended for in-source documentation. Deleted lines 246-249:
2015-09-18 14:41
by -
Changed line 245 from:
@@ to:
@@IF (* no match found *) this^.next = NIL THEN (* comment (* nested comment *) *)@@ 2015-09-18 14:41
by -
Added line 243:
>>background-color:#f4f4f4 padding:0.5em border:'thin solid gray' whitespace:pre<< 2015-09-18 14:40
by -
Changed lines 202-248 from:
to:
* all-uppercase identifiers of standard pseudo-modules including their module identifiers [[#UserDefIdents]] !!! User-Definable Identifiers Identifiers that do not coincide with reserved identifiers may be defined or redefined in any scope of a program or library module. [[#NonSemanticSymbols]] !!! Non-Semantic Symbols Non-semantic symbols are symbols that do not impact the meaning of a program. They may occur anywhere in a program before or after semantic symbols but not within them. There are three types: * comments * pragmas * lexical separators [[#Comments]] !!! Comments Comments are ignored by a compiler but are for annotation and documentation. There are two kinds: * line comments * block comments [[#LineComments]] !!! Line Comments Line comments start with a @@!@@ symbol at the first column of a line and terminate at the end of the same line. >>background-color:#f4f4f4 padding:0.5em border:'thin solid gray' whitespace:pre<< '''Examples:''' @@! Special documentation tags for Doxygen:@@ @@!! @brief Modula-2 Standard Library@@ @@!! @authors B.Kowarsch & R.Sutcliffe@@ >><< [[#BlockComments]] !!! Block Comments Block comments are delimited by opening @@(*@@ and closing @@*)@@ comment delimiters. They are intended for annotating source code. They may span multiple lines and they may be nested but in order to ensure portability of source code, a language defined arbitrary nesting limit of ten including the outermost comment is imposed. A compile time error shall occur if this limit is exceeded. '''Examples:''' @@ IF (* no match found *) this^.next = NIL THEN (* comment (* nested comment *) *)@@ >><< 2015-09-18 14:27
by -
Changed lines 202-203 from:
* to:
* all-uppercase identifiers of pseudo-modules including their module identifiers 2015-09-18 14:15
by -
Added lines 195-203:
[[#ResIdents]] !!! Reserved Identifiers Reserved identifiers are language defined identifiers that may not be redefined. Reserved are: * predefined identifiers * Schrödinger's tokens * module identifiers of pseudo-modules * 2015-09-18 13:41
by -
Changed line 187 from:
The use of the low-line and dollar sign within identifiers is permitted in support of environments and platforms where they are an integral part of the naming convention, for instance when writing components for or mapping to operating system [=APIs=] that use them. However, such an identifier must also contain at least one letter or digit. A non-conformant identifier shall cause a compile time error. The definition of an identifier in a foreign API style shall cause a soft compile time warning. to:
The use of the low-line and dollar sign within identifiers is permitted in support of environments and platforms where they are an integral part of the naming convention, for instance when writing components for or mapping to operating system [=APIs=] that use them. However, such an identifier must also contain at least one letter or digit. A non-conformant identifier shall cause a compile time error. The definition of an identifier in a foreign API style shall cause a soft compile time warning. However, the warning may be automatically silenced when @@FFI@@ of module @@UNSAFE@@ is imported into the scope of the compiling module. 2015-09-18 13:40
by -
Added lines 180-192:
>><< [[#Identifiers]] !!! Identifiers Identifiers are names for syntactic entities in a program. The start with a letter, low-line or dollar sign, followed by any number and combination of letters, low-lines, dollar signs and digits. The use of the low-line and dollar sign within identifiers is permitted in support of environments and platforms where they are an integral part of the naming convention, for instance when writing components for or mapping to operating system [=APIs=] that use them. However, such an identifier must also contain at least one letter or digit. A non-conformant identifier shall cause a compile time error. The definition of an identifier in a foreign API style shall cause a soft compile time warning. The warning may be automatically silences when @@FFI@@ of module @@UNSAFE@@ is imported into the scope of the compiling module. >>background-color:#f4f4f4 padding:0.5em border:'thin solid gray' whitespace:pre<< '''Examples:''' @@(* Modula-2 style *) Foo, setBar, getBaz, Str80, Matrix8x4, FOOBAR@@ @@(* Foreign API styles *) _foo, __bar, __baz__, foo_bar_123, $foo, sys$foo, SYS$BAR@@ 2015-09-18 13:28
by -
Changed line 172 from:
ARGLIST DO IMPLEMENTATION to:
ARGLIST DO IMPLEMENTATION OPAQUE SET 2015-09-18 13:27
by -
Changed lines 170-179 from:
ALIAS AND ARGLIST ARRAY BEGIN BLUEPRINT BY CASE CONST COPY to:
ALIAS DEFINITION GENLIB NOT RETAIN AND DIV IF OF RETURN ARGLIST DO IMPLEMENTATION OPAQUE SET ARRAY ELSE IMPORT OR THEN BEGIN ELSIF IN POINTER TO BLUEPRINT END LOOP PROCEDURE TYPE BY ENUM MOD RECORD UNTIL CASE EXIT MODULE REFERENTIAL VAR CONST FOR NEW RELEASE WHILE COPY FROM NONE REPEAT YIELD 2015-09-18 13:26
by -
Changed lines 170-179 from:
||'''AND''' ||'''DIV''' ||'''IF''' ||'''OF''' ||'''RETURN''' || ||'''ARGLIST''' ||'''DO''' ||'''IMPLEMENTATION''' ||'''OPAQUE''' ||'''SET''' || ||'''ARRAY''' ||'''ELSE''' ||'''IMPORT''' ||'''OR''' ||'''THEN''' || ||'''BEGIN''' ||'''ELSIF''' ||'''IN''' ||'''POINTER''' ||'''TO''' || ||'''BLUEPRINT''' ||'''END''' ||'''LOOP''' ||'''PROCEDURE''' ||'''TYPE''' || ||'''BY''' ||'''ENUM''' ||'''MOD''' ||'''RECORD''' ||'''UNTIL''' || ||'''CASE''' ||'''EXIT''' ||'''MODULE''' ||'''REFERENTIAL''' ||'''VAR''' || ||'''CONST''' ||'''FOR''' ||'''NEW''' ||'''RELEASE''' ||'''WHILE''' || ||'''COPY''' ||'''FROM''' ||'''NONE''' ||'''REPEAT''' ||'''YIELD''' || to:
ALIAS DEFINITION GENLIB NOT RETAIN AND DIV IF OF RETURN ARGLIST DO IMPLEMENTATION OPAQUE SET ARRAY ELSE IMPORT OR THEN BEGIN ELSIF IN POINTER TO BLUEPRINT END LOOP PROCEDURE TYPE BY ENUM MOD RECORD UNTIL CASE EXIT MODULE REFERENTIAL VAR CONST FOR NEW RELEASE WHILE COPY FROM NONE REPEAT YIELD 2015-09-18 13:15
by -
Changed lines 170-171 from:
||'''ALIAS''' ||'''DEFINITION''' ||'''GENLIB''' ||'''NOT''' ||'''RETAIN''' || ||'''AND''' ||'''DIV''' ||'''IF''' ||'''OF''' ||'''RETURN''' || to:
||'''ALIAS''' ||'''DEFINITION''' ||'''GENLIB''' ||'''NOT''' ||'''RETAIN''' || ||'''AND''' ||'''DIV''' ||'''IF''' ||'''OF''' ||'''RETURN''' || 2015-09-18 13:13
by -
Changed lines 169-179 from:
|| border=0 cellpadding=0 width= ||ALIAS ||DEFINITION ||GENLIB ||NOT ||RETAIN || ||AND ||DIV ||IF ||OF ||RETURN || ||ARGLIST ||DO ||IMPLEMENTATION ||OPAQUE ||SET || ||ARRAY ||ELSE ||IMPORT ||OR ||THEN || ||BEGIN ||ELSIF ||IN ||POINTER ||TO || ||BLUEPRINT ||END ||LOOP ||PROCEDURE ||TYPE || ||BY ||ENUM ||MOD ||RECORD ||UNTIL || ||CASE ||EXIT ||MODULE ||REFERENTIAL ||VAR || ||CONST ||FOR ||NEW ||RELEASE ||WHILE || ||COPY ||FROM ||NONE ||REPEAT ||YIELD || to:
|| border=0 cellpadding=0 width=90% ||'''ALIAS''' ||'''DEFINITION''' ||'''GENLIB''' ||'''NOT''' ||'''RETAIN''' || ||'''AND''' ||'''DIV''' ||'''IF''' ||'''OF''' ||'''RETURN''' || ||'''ARGLIST''' ||'''DO''' ||'''IMPLEMENTATION''' ||'''OPAQUE''' ||'''SET''' || ||'''ARRAY''' ||'''ELSE''' ||'''IMPORT''' ||'''OR''' ||'''THEN''' || ||'''BEGIN''' ||'''ELSIF''' ||'''IN''' ||'''POINTER''' ||'''TO''' || ||'''BLUEPRINT''' ||'''END''' ||'''LOOP''' ||'''PROCEDURE''' ||'''TYPE''' || ||'''BY''' ||'''ENUM''' ||'''MOD''' ||'''RECORD''' ||'''UNTIL''' || ||'''CASE''' ||'''EXIT''' ||'''MODULE''' ||'''REFERENTIAL''' ||'''VAR''' || ||'''CONST''' ||'''FOR''' ||'''NEW''' ||'''RELEASE''' ||'''WHILE''' || ||'''COPY''' ||'''FROM''' ||'''NONE''' ||'''REPEAT''' ||'''YIELD''' || 2015-09-18 13:09
by -
Changed line 169 from:
|| border=0 cellpadding= to:
|| border=0 cellpadding=0 width=80% 2015-09-18 13:08
by -
Added lines 162-181:
[[#ResWords]] !!! Reserved Words Reserved words are symbols that consist of a sequence of all-uppercase letters, are visible in any scope, have special meaning in the language and may not be redefined. There are 50 reserved words: >>background-color:#f4f4f4 padding:0.5em border:'thin solid gray' whitespace:pre<< || border=0 cellpadding=0 ||ALIAS ||DEFINITION ||GENLIB ||NOT ||RETAIN || ||AND ||DIV ||IF ||OF ||RETURN || ||ARGLIST ||DO ||IMPLEMENTATION ||OPAQUE ||SET || ||ARRAY ||ELSE ||IMPORT ||OR ||THEN || ||BEGIN ||ELSIF ||IN ||POINTER ||TO || ||BLUEPRINT ||END ||LOOP ||PROCEDURE ||TYPE || ||BY ||ENUM ||MOD ||RECORD ||UNTIL || ||CASE ||EXIT ||MODULE ||REFERENTIAL ||VAR || ||CONST ||FOR ||NEW ||RELEASE ||WHILE || ||COPY ||FROM ||NONE ||REPEAT ||YIELD || >><< 2015-09-18 12:57
by -
Changed lines 141-142 from:
String literals are sequences of quotable characters and optional escape sequences, enclosed in single quotes or double quotes. String literals may not contain any control code to:
String literals are sequences of quotable characters and optional escape sequences, enclosed in single quotes or double quotes. String literals may not contain any control code characters. Changed lines 151-161 from:
!!! Structured to:
!!! Structured Literals Structured literals are compound values consisting of zero or more terminal symbols, enclosed in braces. Structured literals may be nested. >>background-color:#f4f4f4 padding:0.5em border:'thin solid gray' whitespace:pre<< '''Examples:''' @@{ 1, 2, 3 }@@ @@{ "a", "b", "c" }@@ @@{ 1 .. 5 } (* equivalent to: *) { 1, 2, 3, 4, 5 }@@ @@{ 0 BY 5 } (* equivalent to: *) { 0, 0, 0, 0, 0 }@@ >><< 2015-09-18 12:53
by -
Changed lines 145-147 from:
@@"it's nine o'clock" @@'he said @@"this is the end of the line\n" (* string containing the escape sequence for LF *) to:
@@"it's nine o'clock"@@ @@'he said "Modula-2" and smiled'@@ @@"this is the end of the line\n"@@ 2015-09-18 12:52
by -
Added lines 140-148:
String literals are sequences of quotable characters and optional escape sequences, enclosed in single quotes or double quotes. String literals may not contain any control code character. >>background-color:#f4f4f4 padding:0.5em border:'thin solid gray' whitespace:pre<< '''Examples:''' @@"it's nine o'clock" (* double quoted string containing single quotes *)@@ @@'he said "Modula-2" and smiled' (* single quoted string containing double quotes *)@@ @@"this is the end of the line\n" (* string containing the escape sequence for LF *)@@ >><< 2015-09-18 12:48
by -
Added lines 128-136:
Character code literals represent Unicode code points in base-16 notation. They are comprised of Unicode prefix [@0u@] followed by a non-empty sequence of base-16 digits. Digits may be grouped using the single quote as a digit separator. A digit separator may only appear in between two digits. >>background-color:#f4f4f4 padding:0.5em border:'thin solid gray' whitespace:pre<< '''Examples:''' @@0u7F (* DEL *)@@ @@0uA9 (* copyright *)@@ @@0u20'AC (* Euro currency sign *)@@ >><< 2015-09-18 12:45
by -
Added lines 117-124:
Base-16 number literals represent whole numbers in base-16 notation. They are comprised of base-16 number prefix [@0x@] followed by a non-empty sequence of base-16 digits. Digits may be grouped using the single quote as a digit separator. A digit separator may only appear in between two digits. >>background-color:#f4f4f4 padding:0.5em border:'thin solid gray' whitespace:pre<< '''Examples:''' @@0x80, 0xFF, 0xCAFED00D (* without digit separator *)@@ @@0x00'00'FF'FF, 0xDEAD'BEEF (* with digit separators *)@@ >><< 2015-09-18 12:42
by -
Added lines 107-114:
Base-2 number literals represent whole numbers in base-2 notation. They are comprised of base-2 number prefix [@0b@] followed by a non-empty sequence of base-2 digits. Digits may be grouped using the single quote as a digit separator. A digit separator may only appear in between two digits. >>background-color:#f4f4f4 padding:0.5em border:'thin solid gray' whitespace:pre<< '''Examples:''' @@0b0110 (* without digit separator *)@@ @@0b1111'0000'0101'0011 (* with digit separators *)@@ >><< Changed lines 119-125 from:
!!! Character Code Literals to:
!!! Character Code Literals [[#StringLiterals]] !!! String Literals [[#StructuredLiterals]] !!! Structured Literals 2015-09-18 12:38
by -
Changed lines 79-81 from:
* numeric literals to:
* [[#NumericLiterals|numeric literals]] * [[#StringLiterals|string literals]] * [[#StructuredLiterals|structured literals]] 2015-09-18 12:36
by -
Added line 75:
[[#Literals]] Added line 83:
[[#NumericLiterals]] Changed lines 87-91 from:
* decimal number literals to:
* [[#DecimalNumberLiterals|decimal number literals]] * [[#Base2NumberLiterals|base-2 number literals]] * [[#Base16NumberLiterals|base-16 number literals]] * [[#CharCodeLiterals|character code literals]] [[#DecimalNumberLiterals]] Changed lines 102-111 from:
>><< to:
>><< [[#Base2NumberLiterals]] !!! Base-2 Number Literals [[#Base16NumberLiterals]] !!! Base-16 Number Literals [[#CharCodeLiterals]] !!! Character Code Literals 2015-09-18 12:32
by -
Changed lines 96-98 from:
@@0, 42, 12300, 32767 (* whole numbers *)@@ @@0.0, 3.1415, 7.531e+12 (* real numbers *)@@ @@1'234'500'000, 0.987'654'321e+99 (* with digit separators *)@@ to:
@@0, 42, 12300, 32767 (* whole numbers *)@@ @@0.0, 3.1415, 7.531e+12 (* real numbers *)@@ @@1'234'500'000, 0.987'654'321e+99 (* with digit separators *)@@ 2015-09-18 12:32
by -
Changed lines 96-98 from:
0, 42, 12300, 32767 (* whole numbers *) 0.0, 3.1415, 7.531e+12 (* real numbers *) 1'234'500'000, 0.987'654'321e+99 (* with digit separators *) to:
@@0, 42, 12300, 32767 (* whole numbers *)@@ @@0.0, 3.1415, 7.531e+12 (* real numbers *)@@ @@1'234'500'000, 0.987'654'321e+99 (* with digit separators *)@@ 2015-09-18 12:31
by -
Changed lines 75-81 from:
||!Foo ||!Bar ||!Baz || ||Bam+++ ||col2 ||col3 || ||col2 ||col3 || ||col2 ||col3 || ||Boo++ ||col2 ||col3 || ||col2 ||col3 || to:
!!! Literals There are three types of literals: * numeric literals * string literals * structured literals !!!! Numeric literals Numeric literals represent a numeric compile time value. There are four types: * decimal number literals * base-2 number literals * base-16 number literals * character code literals !!!! Decimal Number Literals Decimal number literals represent decimal whole and real numbers. They are comprised of a mandatory integral part followed by an optional fractional part followed by an optional exponent. Integral and fractional part are separated by a decimal point. Fractional part and exponent are separated by the exponent prefix [@e@] followed by an optional sign. Integral part, fractional part and exponent are comprised of a non-empty sequence of decimal digits. Digits may be grouped using the single quote as a digit separator. A digit separator may only appear in between two digits. >>background-color:#f4f4f4 padding:0.5em border:'thin solid gray' whitespace:pre<< '''Examples:''' 0, 42, 12300, 32767 (* whole numbers *) 0.0, 3.1415, 7.531e+12 (* real numbers *) 1'234'500'000, 0.987'654'321e+99 (* with digit separators *) >><< 2015-09-18 07:54
by -
Added lines 42-53:
||Special Syntax+++++++++++ \ ||[@ + @] ||Re-Export Suffix, Enumeration Extension Prefix || || ||[@ * @] ||Wildcard Import Suffix, Restricted Export Prefix || || ||[@ := @] ||Assignment || || ||[@ ++ @] ||Increment Statement Suffix, FOR Loop Ascender || || ||[@ -- @] ||Decrement Statement Suffix, FOR Loop Descender || || ||[@ .. @] ||Subrange Constructor, Slice Range Specifier || || ||[@ ^ @] ||Pointer Dereferencing Suffix || || ||[@ -> @] ||One-Way Dependency ||Blueprint || ||[@ <> @] ||Mutual Dependency Constraint ||Blueprint || ||[@ >< @] ||Mutual Exclusion Constraint ||Blueprint || ||[@ +/- @] ||Unary Minus Binding Specifier ||Blueprint || 2015-09-18 07:29
by -
Added lines 50-55:
||Delimiters+++++ \ ||[@ ' " @] ||Quoted String Literal Delimiters ||Within Expressions || ||[@ ( ) @] ||Expression Grouping, Parameter List Delimiters ||Within Expressions, Procedure Headers || ||[@ { } @] ||Structured Value Delimiters ||Within Expressions, Formal Parameters || ||[@ [ ] @] ||Array Index, Subrange and Slice Delimiters ||Within Expressions || ||[@ << >> @] ||Replacement Text Delimiters ||Within Library Generation Directive || 2015-09-18 07:20
by -
Added lines 53-55:
||Pragmas++ \ ||[@ ? @] ||Value Pragma Query Prefix ||Within Message Pragma || ||[@ <* *> @] ||Pragma Delimiters ||Before or After Certain Tokens || 2015-09-18 07:17
by -
Added lines 50-52:
||Comments++ \ ||[@ ! @] ||Line Comment Prefix ||At First Column of Any Line || ||[@ (* *) @] ||Block Comment Delimiters ||Anywhere Before or After a Token || 2015-09-18 07:08
by -
Changed line 43 from:
||[@ . @]++ to:
||[@ . @]++ ||Name Separator ||Within Qualified Identifier || Changed lines 45-46 from:
||[@ , @] ||Separator ||Within Item List || ||[@ ; @] ||Separator ||Within Declaration and Statement Sequences || to:
||[@ , @] ||Item Separator ||Within Item List || ||[@ ; @] ||List Separator ||Within Declaration and Statement Sequences || Changed lines 48-49 from:
||[@ | @] to:
||[@ | @]++ ||Case Label Prefix ||Within Case Label List || ||Terminator Prefix ||Within Formal Parameters || 2015-09-18 07:05
by -
Changed lines 44-45 from:
||Module Terminator || ||[@ , @] || to:
||Module Terminator ||End of Module || ||[@ , @] ||Separator ||Within Item List || 2015-09-18 07:04
by -
Added lines 42-48:
||Punctuation++++++ \ ||[@ . @]++ ||Name Separator ||Within Qualified Identifier || ||Module Terminator || End of Module || ||[@ , @] ||ISeparator ||Within Item List || ||[@ ; @] ||Separator ||Within Declaration and Statement Sequences || ||[@ : @] ||Head Body Separator ||Within Declarations and Formal Parameters || ||[@ | @] ||Case Label Prefix ||Within Case Label List || 2015-09-18 06:51
by -
Changed line 20 from:
||Arithmetic Operators+++++ \ to:
||Arithmetic [[<<]]Operators+++++ \ Changed line 26 from:
||Relational Operators++++++ \ to:
||Relational [[<<]]Operators++++++ \ Changed line 33 from:
||Set Operators++++++++ \ to:
||Set [[<<]]Operators++++++++ \ 2015-09-18 06:51
by -
Changed line 9 from:
|| class=headrow border=1 cellspacing=0 width= to:
|| class=headrow border=1 cellspacing=0 width=90% 2015-09-18 06:50
by -
Changed line 9 from:
|| class=headrow border=1 cellspacing=0 width= to:
|| class=headrow border=1 cellspacing=0 width=100% 2015-09-18 06:50
by -
Changed lines 21-25 from:
||[@ + @] ||Unary Plus, Addition ||Within Arithmetic Expressions || ||[@ - @] ||Unary Minus, Subtraction || to:
||[@ + @] ||Unary Plus, Addition ||Within Arithmetic Expressions+++++ || ||[@ - @] ||Unary Minus, Subtraction || ||[@ * @] ||Multiplication || ||[@ / @] ||Real Division || ||[@ *. @] ||Dot Product || Changed lines 27-32 from:
||[@ = @] ||Equality Test ||Within Arithmetic Expressions || ||[@ # @] ||Inequality Test || to:
||[@ = @] ||Equality Test ||Within Arithmetic Expressions++++++ || ||[@ # @] ||Inequality Test || ||[@ > @] ||Greater-Than Test || ||[@ >= @] ||Greater-Or-Equal Test || ||[@ < @] ||Less-Than Test || ||[@ <= @] ||Less-Or-Equal Test || Changed lines 34-41 from:
||[@ + @] ||Set Union ||Within Set Expressions || ||[@ \ @] ||Set Difference || to:
||[@ + @] ||Set Union ||Within Set Expressions++++++++ || ||[@ \ @] ||Set Difference || ||[@ * @] ||Set Intersection || ||[@ / @] ||Symmetric Set Difference || ||[@ > @] ||Proper Superset Test || ||[@ >= @] ||Superset Test || ||[@ < @] ||Proper Subset Test || ||[@ <= @] ||Subset Test || 2015-09-18 06:47
by -
Changed line 15 from:
||[@ + - @] ||Exponent Sign to:
||[@ + - @] ||Exponent Sign || 2015-09-18 06:47
by -
Changed line 14 from:
||[@ . @] ||Decimal Point ||Within Real Number Literals+ || to:
||[@ . @] ||Decimal Point ||Within Real Number Literals++ || 2015-09-18 06:47
by -
Changed lines 14-15 from:
||[@ . @] ||Decimal Point ||Within Real Number Literals || ||[@ + - @] ||Exponent Sign || to:
||[@ . @] ||Decimal Point ||Within Real Number Literals+ || ||[@ + - @] ||Exponent Sign ||^^ || 2015-09-18 06:42
by -
Changed line 16 from:
||Special Operators+++ \ to:
||Special [[<<]]Operators+++ \ 2015-09-18 06:41
by -
Changed line 26 from:
|| to:
||Relational Operators++++++ \ Changed line 33 from:
|| to:
||Set Operators++++++++ \ 2015-09-18 06:40
by -
Changed line 11 from:
||Intra-Literal++++ to:
||Intra-Literal++++ \ Changed line 16 from:
||Special Operators+++ to:
||Special Operators+++ \ Changed line 20 from:
||Arithmetic Operators+++++ to:
||Arithmetic Operators+++++ \ Changed line 26 from:
||!Relational Operators++++++ to:
||!Relational Operators++++++ \ Changed line 33 from:
||!Set Operators++++++++ to:
||!Set Operators++++++++ \ 2015-09-18 06:40
by -
Changed lines 10-11 from:
||! to:
||!Category ||!Symbol ||!Usage ||!Lexical Scope || ||Intra-Literal++++ Changed line 16 from:
|| to:
||Special Operators+++ Changed line 20 from:
|| to:
||Arithmetic Operators+++++ Changed line 26 from:
||!Relational Operators to:
||!Relational Operators++++++ Changed line 33 from:
||!Set Operators to:
||!Set Operators++++++++ 2015-09-18 06:04
by -
Changed lines 46-47 from:
|| ||^^ to:
||col2 ||col3 || ||col2 ||col3 || Changed line 49 from:
to:
||col2 ||col3 || 2015-09-18 06:03
by -
Changed lines 41-49 from:
||[@ <= @] ||Subset Test ||Within Set Expressions || to:
||[@ <= @] ||Subset Test ||Within Set Expressions || || class=headrow border=1 cellspacing=0 width=80% ||!Foo ||!Bar ||!Baz || ||Bam+++ ||col2 ||col3 || ||^^ ||col2 ||col3 || ||^^ ||col2 ||col3 || ||Boo+ ||col2 ||col3 || ||^^ ||col2 ||col3 || 2015-09-18 05:36
by -
Changed lines 18-19 from:
||[@ to:
||[@ == @] ||Identity Test ||Within ADT Expressions || ||[@ & @] ||Array, List and String Concatenation ||Within Array, List and String Expressions || Changed lines 21-25 from:
||[@ + @] ||Unary Plus, Addition ||Within Expressions || ||[@ - @] ||Unary Minus, Subtraction ||Within Expressions || ||[@ * @] ||Multiplication ||Within Expressions || ||[@ / @] ||Real Division ||Within Expressions || ||[@ *. @] ||Dot Product ||Within Expressions || to:
||[@ + @] ||Unary Plus, Addition ||Within Arithmetic Expressions || ||[@ - @] ||Unary Minus, Subtraction ||Within Arithmetic Expressions || ||[@ * @] ||Multiplication ||Within Arithmetic Expressions || ||[@ / @] ||Real Division ||Within Arithmetic Expressions || ||[@ *. @] ||Dot Product ||Within Arithmetic Expressions || Changed lines 27-32 from:
||[@ = @] ||Equality Test ||Within Expressions || ||[@ # @] ||Inequality Test ||Within Expressions || ||[@ > @] ||Greater-Than Test ||Within Expressions || ||[@ >= @] ||Greater-Or-Equal Test ||Within Expressions || ||[@ < @] ||Less-Than Test ||Within Expressions || ||[@ <= @] ||Less-Or-Equal Test ||Within Expressions || to:
||[@ = @] ||Equality Test ||Within Arithmetic Expressions || ||[@ # @] ||Inequality Test ||Within Arithmetic Expressions || ||[@ > @] ||Greater-Than Test ||Within Arithmetic Expressions || ||[@ >= @] ||Greater-Or-Equal Test ||Within Arithmetic Expressions || ||[@ < @] ||Less-Than Test ||Within Arithmetic Expressions || ||[@ <= @] ||Less-Or-Equal Test ||Within Arithmetic Expressions || Changed lines 34-41 from:
||[@ + @] ||Set Union ||Within Expressions || ||[@ \ @] ||Set Difference ||Within Expressions || ||[@ * @] ||Set Intersection ||Within Expressions || ||[@ / @] ||Symmetric Set Difference ||Within Expressions || ||[@ > @] ||Proper Superset Test ||Within Expressions || ||[@ >= @] ||Superset Test ||Within Expressions || ||[@ < @] ||Proper Subset Test ||Within Expressions || ||[@ <= @] ||Subset Test ||Within Expressions || to:
||[@ + @] ||Set Union ||Within Set Expressions || ||[@ \ @] ||Set Difference ||Within Set Expressions || ||[@ * @] ||Set Intersection ||Within Set Expressions || ||[@ / @] ||Symmetric Set Difference ||Within Set Expressions || ||[@ > @] ||Proper Superset Test ||Within Set Expressions || ||[@ >= @] ||Superset Test ||Within Set Expressions || ||[@ < @] ||Proper Subset Test ||Within Set Expressions || ||[@ <= @] ||Subset Test ||Within Set Expressions || 2015-09-18 05:33
by -
Added lines 26-32:
||!Relational Operators |||||| ||[@ = @] ||Equality Test ||Within Expressions || ||[@ # @] ||Inequality Test ||Within Expressions || ||[@ > @] ||Greater-Than Test ||Within Expressions || ||[@ >= @] ||Greater-Or-Equal Test ||Within Expressions || ||[@ < @] ||Less-Than Test ||Within Expressions || ||[@ <= @] ||Less-Or-Equal Test ||Within Expressions || Deleted lines 41-47:
||[@ = @] ||Equality Test ||Within Expressions || ||[@ # @] ||Inequality Test ||Within Expressions || ||[@ > @] ||Greater-Than Test ||Within Expressions || ||[@ >= @] ||Greater-Or-Equal Test ||Within Expressions || ||[@ < @] ||Less-Than Test ||Within Expressions || ||[@ <= @] ||Less-Or-Equal Test ||Within Expressions || 2015-09-18 05:27
by -
Changed lines 19-20 from:
||[@ == @] ||Identity Test ||Within Expressions ||||!Arithmetic Operators |||||| to:
||[@ == @] ||Identity Test ||Within Expressions || ||!Arithmetic Operators |||||| 2015-09-18 05:26
by -
Changed lines 12-15 from:
|| || || || to:
||[@ \ @] ||Escape Prefix for LF and TAB ||Within Quoted Literals || ||[@ ' @] ||Digit Separator ||Within Number Literals || ||[@ . @] ||Decimal Point ||Within Real Number Literals || ||[@ + - @] ||Exponent Sign ||Within Real Number Literals || Changed lines 17-24 from:
|| || || || || || || to:
||[@ :: @] ||Type Conversion ||Within Expressions || ||[@ & @] ||Array, List and String Concatenation ||Within Expressions || ||[@ == @] ||Identity Test ||Within Expressions ||||!Arithmetic Operators |||||| ||[@ + @] ||Unary Plus, Addition ||Within Expressions || ||[@ - @] ||Unary Minus, Subtraction ||Within Expressions || ||[@ * @] ||Multiplication ||Within Expressions || ||[@ / @] ||Real Division ||Within Expressions || ||[@ *. @] ||Dot Product ||Within Expressions || Changed lines 26-33 from:
|| || || || || || || || to:
||[@ + @] ||Set Union ||Within Expressions || ||[@ \ @] ||Set Difference ||Within Expressions || ||[@ * @] ||Set Intersection ||Within Expressions || ||[@ / @] ||Symmetric Set Difference ||Within Expressions || ||[@ > @] ||Proper Superset Test ||Within Expressions || ||[@ >= @] ||Superset Test ||Within Expressions || ||[@ < @] ||Proper Subset Test ||Within Expressions || ||[@ <= @] ||Subset Test ||Within Expressions || Changed lines 35-41 from:
|| || || || || || || [@ == @] ||Identity to:
||[@ = @] ||Equality Test ||Within Expressions || ||[@ # @] ||Inequality Test ||Within Expressions || ||[@ > @] ||Greater-Than Test ||Within Expressions || ||[@ >= @] ||Greater-Or-Equal Test ||Within Expressions || ||[@ < @] ||Less-Than Test ||Within Expressions || ||[@ <= @] ||Less-Or-Equal Test ||Within Expressions || 2015-09-18 05:14
by -
Changed line 9 from:
|| class= to:
|| class=headrow border=1 cellspacing=0 width=80% 2015-09-18 05:11
by -
Changed line 11 from:
||! to:
||!Intra-Literal Symbols |||||| 2015-09-18 05:10
by -
Added line 10:
||!Symbol ||!Usage ||!Lexical Scope || Deleted line 11:
Deleted line 16:
Deleted line 19:
Deleted line 25:
Deleted line 34:
2015-09-18 04:52
by -
Changed line 9 from:
|| border=1 cellspacing=0 width=80% to:
|| class=firstrow border=1 cellspacing=0 width=80% Changed line 45 from:
|| [@ == @] ||Identity Test ||Within Expressions || to:
|| [@ == @] ||Identity Test ||Within Expressions || 2015-09-18 04:24
by -
Deleted lines 15-16:
|| border=1 cellspacing=0 width=80% Deleted lines 19-20:
|| border=1 cellspacing=0 width=80% Deleted lines 26-27:
|| border=1 cellspacing=0 width=80% Deleted lines 36-37:
|| border=1 cellspacing=0 width=80% 2015-09-18 04:23
by -
Changed lines 12-15 from:
|| [@ \ @] ||Escape Prefix for LF and TAB ||Within || [@ ' @] ||Digit Separator ||Within || [@ . @] ||Decimal Point ||Within || [@ + - @] ||Exponent Sign ||Within to:
|| [@ \ @] ||Escape Prefix for LF and TAB ||Within Quoted Literals || || [@ ' @] ||Digit Separator ||Within Number Literals || || [@ . @] ||Decimal Point ||Within Real Number Literals || || [@ + - @] ||Exponent Sign ||Within Real Number Literals || 2015-09-18 04:22
by -
Changed line 18 from:
||!Special Operators || to:
||!Special Operators |||||| Changed line 24 from:
||!Arithmetic Operators || to:
||!Arithmetic Operators |||||| Changed line 33 from:
||!Set Operators || to:
||!Set Operators |||||| Changed line 45 from:
||!Relational Operators || to:
||!Relational Operators |||||| 2015-09-18 04:21
by -
Changed line 10 from:
||!Within Literals || to:
||!Within Literals |||||| 2015-09-18 04:21
by -
Changed line 10 from:
||!Within Literals || to:
||!Within Literals || || || Changed line 18 from:
||!Special Operators to:
||!Special Operators || || || Changed line 24 from:
||!Arithmetic Operators to:
||!Arithmetic Operators || || || Changed line 33 from:
||!Set Operators to:
||!Set Operators || || || Changed line 45 from:
||!Relational Operators to:
||!Relational Operators || || || 2015-09-18 04:18
by -
Changed line 26 from:
|| [@ + @] ||Unary Plus, Addition to:
|| [@ + @] ||Unary Plus, Addition ||Within Expressions || Changed lines 28-30 from:
|| [@ * @] ||Multiplication || [@ / @] ||Real Division || [@ \ @] ||Set Difference to:
|| [@ * @] ||Multiplication ||Within Expressions || || [@ / @] ||Real Division ||Within Expressions || Changed line 35 from:
|| [@ + @] || to:
|| [@ + @] ||Set Union ||Within Expressions || Changed lines 37-38 from:
|| [@ * @] || || [@ / @] || to:
|| [@ * @] ||Set Intersection ||Within Expressions || || [@ / @] ||Symmetric Set Difference ||Within Expressions || 2015-09-18 04:16
by -
Added line 8:
Changed lines 10-16 from:
||In-Literal ||[@ \ @] ||Escape Prefix for LF and TAB within Quoted Literals ||Within Literal || || ||[@ ' @] ||Digit Separator within Numeric Literals || || || ||[@ . @] ||Decimal Point within Real Number Literals || || || ||[@ + - @] ||Exponent Sign within Real Number Literals || || ||Non-Arithmetic Operators ||[@ :: @] ||Type Conversion ||Program Text || || ||[@ & @] ||Concatenation || || to:
||!Within Literals !|| ||!Symbol ||!Usage ||!Lexical Scope || || [@ \ @] ||Escape Prefix for LF and TAB ||Within quoted literals || || [@ ' @] ||Digit Separator ||Within number literals || || [@ . @] ||Decimal Point ||Within real number literals || || [@ + - @] ||Exponent Sign ||Within real number literals || || border=1 cellspacing=0 width=80% ||!Special Operators !|| ||!Symbol ||!Usage ||!Lexical Scope || || [@ :: @] ||Type Conversion ||Within Expressions || || [@ & @] ||Array, List and String Concatenation ||Within Expressions || || border=1 cellspacing=0 width=80% ||!Arithmetic Operators !|| ||!Symbol ||!Usage ||!Lexical Scope || || [@ + @] ||Unary Plus, Addition, Set Union ||Within Expressions || || [@ - @] ||Unary Minus, Subtraction ||Within Expressions || || [@ * @] ||Multiplication, Set Intersection ||Within Expressions || || [@ / @] ||Real Division, Symmetric Set Difference ||Within Expressions || || [@ \ @] ||Set Difference ||Within Expressions || || [@ *. @] ||Dot Product ||Within Expressions || || border=1 cellspacing=0 width=80% ||!Set Operators !|| ||!Symbol ||!Usage ||!Lexical Scope || || [@ + @] ||Unary Plus, Addition, Set Union ||Within Expressions || || [@ \ @] ||Set Difference ||Within Expressions || || [@ * @] ||Multiplication, Set Intersection ||Within Expressions || || [@ / @] ||Real Division, Symmetric Set Difference ||Within Expressions || || [@ > @] ||Proper Superset Test ||Within Expressions || || [@ >= @] ||Superset Test ||Within Expressions || || [@ < @] ||Proper Subset Test ||Within Expressions || || [@ <= @] ||Subset Test ||Within Expressions || || border=1 cellspacing=0 width=80% ||!Relational Operators !|| ||!Symbol ||!Usage ||!Lexical Scope || || [@ = @] ||Equality Test ||Within Expressions || || [@ # @] ||Inequality Test ||Within Expressions || || [@ > @] ||Greater-Than Test ||Within Expressions || || [@ >= @] ||Greater-Or-Equal Test ||Within Expressions || || [@ < @] ||Less-Than Test ||Within Expressions || || [@ <= @] ||Less-Or-Equal Test ||Within Expressions || || [@ == @] ||Identity Test ||Within Expressions || 2015-09-18 03:53
by -
Changed lines 13-15 from:
|| ||[@ + - @] ||Exponent Sign within Real Number Literals || || to:
|| ||[@ + - @] ||Exponent Sign within Real Number Literals || || ||Non-Arithmetic Operators ||[@ :: @] ||Type Conversion ||Program Text || || ||[@ & @] ||Concatenation || || 2015-09-18 03:51
by -
Changed lines 11-13 from:
|| ||[@ ' @] ||Digit Separator within Numeric Literals || || to:
|| ||[@ ' @] ||Digit Separator within Numeric Literals || || || ||[@ . @] ||Decimal Point within Real Number Literals || || || ||[@ + - @] ||Exponent Sign within Real Number Literals || || 2015-09-18 03:49
by -
Changed line 8 from:
|| border=1 cellspacing= to:
|| border=1 cellspacing=0 width=80% 2015-09-18 03:49
by -
Changed lines 10-11 from:
||In-Literal ||\ ||Escape Prefix for LF and TAB within Quoted Literals ||Within Literal || || ||' ||Digit Separator within Numeric Literals || || to:
||In-Literal ||[@ \ @] ||Escape Prefix for LF and TAB within Quoted Literals ||Within Literal || || ||[@ ' @] ||Digit Separator within Numeric Literals || || 2015-09-18 03:33
by -
Added lines 1-11:
[[#CharacterSets]] !!! Character Sets By default only the printable characters of the 7-bit [[#Reference.Abbreviations.ASCII|ASCII]] character set, whitespace, tabulator and newline are legal within Modula-2 source text. Unicode characters may be permitted within quoted literals and comments, subject to recognition and verification of the encoding scheme used. [[#SpecialSymbols]] !!! Special Symbols || border=1 ||!Category ||!Symbol ||!Usage ||!Lexical Scope || ||In-Literal ||\ ||Escape Prefix for LF and TAB within Quoted Literals ||Within Literal || || ||' ||Digit Separator within Numeric Literals || || |