/avail/Avail/Foundation/Bootstrap/Special Objects: character
Source: /avail/Avail/Foundation/Bootstrap/Special Objects
Categories: Primitives, Types
Supertypes: nontype
A character is a sign or symbol in the semiotic sense: an entity with distinct identity that is nonetheless generally intended and understood to represent something other than itself. The visual representation of a character is a glyph. A character is necessarily distinct from how it is written or printed. The same character will differ in any two handwritten occurrences, even when the same person is responsible for the production of both. Likewise the printed representation of a character will differ by font or style. So a character has identity independent of any and all glyphs that transcribe it.

Avail is only concerned with character value, not meaning or transcription. A character is always equal to itself and always unequal to another character. Characters are immutable and possess but a single intrinsic property: Unicode code point. Unicode is an international standard for the codification of all widely used characters. A code point is a numeric value that is uniquely associated with a character relative to some system of codification. Thus a character's Unicode code point singularly identifies it within the Unicode scheme.

A character literal is expressed as a cent sign ¢ (U+00A2) followed by a single-character lexeme or length-one string literal. Avail character literal notation is provided by the method ¢…!. The single-character form is sufficient for nearly every character, but the string literal form must be employed when the desired character is a quotation mark " (U+0022), semicolon ; (U+003B), or nonprintable character.