2.3 Identifiers
Syntax
identifier_start ::=
letter_uppercase
|
letter_lowercase
|
letter_titlecase
|
letter_modifier
|
letter_other
|
number_letter
identifier_extend ::=
mark_non_spacing
|
mark_spacing_combining
|
number_decimal
|
punctuation_connector
An
identifier
shall not contain two consecutive characters in category
punctuation_connector,
or end with a character in that category.
Legality Rules
An
identifier
shall only contain characters that may be present in Normalization Form
KC as defined by Definition D121 of The Unicode Standard, version 15.0.0.
Static Semantics
Two
identifiers
are considered the same if they consist of the same sequence of characters
after applying simple case folding, as defined by Section 3.13 of Unicode
Version 15.0.
After applying simple case folding, an
identifier
shall not be identical to a reserved word.
Implementation Permissions
In a nonstandard mode, an implementation may support
other upper/lower case equivalence rules for
identifiers,
to accommodate local conventions.
NOTE
Identifiers
differing only in the use of corresponding upper and lower case letters
are considered the same.
Examples
Examples of identifiers:
Count X Get_Symbol Ethelyn Marion
Snobol_4 X1 Page_Count Store_Next_Item
Πλάτων -- Plato
Чайковский -- Tchaikovsky
θ φ -- Angles
Ada 2005 and 2012 Editions sponsored in part by Ada-Europe