Enumerated Type - Pascal and Syntactically Similar Languages

Pascal and Syntactically Similar Languages

In Pascal, an enumerated type can be implicitly declared by listing the values in a parenthesised list:

var suit: (clubs, diamonds, hearts, spades);

The declaration will often appear in a type synonym declaration, such that it can be used for multiple variables:

type cardsuit = (clubs, diamonds, hearts, spades); card = record suit: cardsuit; value: 1 .. 13; end; var hand: array of card; trump: cardsuit;

The order in which the enumeration values are given matters. An enumerated type is an ordinal type, and the pred and succ functions will give the prior or next value of the enumeration, and ord can convert enumeration values to their integer representation. Standard Pascal does not offer a conversion from arithmetic types to enumerations, however. Extended Pascal offers this functionality via an extended succ function. Some other Pascal dialects allow it via type-casts. Some modern descendants of Pascal, such as Modula-3, provide a special conversion syntax using a method called VAL; Modula-3 also treats BOOLEAN and CHAR as special pre-defined enumerated types and uses ORD and VAL for standard ASCII decoding and encoding.

Pascal style languages also allow for enumeration to be used as array index

var suitcount: array of integer;

Read more about this topic:  Enumerated Type

Famous quotes containing the words pascal, similar and/or languages:

    Time heals griefs and quarrels, for we change and are no longer the same persons. Neither the offender nor the offended are any more themselves.
    —Blaise Pascal (1623–1662)

    It is surely a matter of common observation that a man who knows no one thing intimately has no views worth hearing on things in general. The farmer philosophizes in terms of crops, soils, markets, and implements, the mechanic generalizes his experiences of wood and iron, the seaman reaches similar conclusions by his own special road; and if the scholar keeps pace with these it must be by an equally virile productivity.
    Charles Horton Cooley (1864–1929)

    The very natural tendency to use terms derived from traditional grammar like verb, noun, adjective, passive voice, in describing languages outside of Indo-European is fraught with grave possibilities of misunderstanding.
    Benjamin Lee Whorf (1897–1934)