Copyright Digital Equipment Corp. All rights reserved.

Examples

1.  VARIABLES

 A variable can be in an expression:

      foo           -'foo' is a predefined variable of some type
      new[1]        -the first position of array 'new'
      rec.field     -a field of record 'rec'
      pointer^      -the pointer variable of the pointer type 'pointer'
      cast::INTEGER -the variable 'cast' type cast as an integer

2.  STRING CONSTANTS

 A string constant can have the following forms:

      name-string
          or
      {name-string ({constant-expression},...)}... [[name-string]]

 The 'name-string' is a quoted sequence of spaces, tabs, and  any
 other  printing  characters.   An apostrophe is expressed as ''.
 For example, 'hello there' is a name-string.

 The '{name-string ({constant-expressions},...)}... [[name-string]]' 
 is a sequence that makes up a name-string.   For  example,  when
 the  list  ('bell  ' (7) 'character') is output to the terminal,
 you will see the string 'bell character' and the bell will  ring
 (as indicated by the constant expression '(7)').

 Additionally, VSI Pascal allows string constants  to  be  formed
 with  double  quotes.   Inside  of  these  double-quoted  string
 constants, VSI Pascal is able to  recognize  special  characters
 that are specified with a backslash, as follows:

  o  "\a" (Alert (bell) character)

  o  "\b" (Backspace character)

  o  "\f" (Forfeed character)

  o  "\n" (New line or line feed character)

  o  "\r" (Carriage return character)

  o  "\t" (Horizontal tab character)

  o  "\v" (Vertical tab character)

  o  "\\" (Backslash character)

  o  "\"" (Double quotation mark character)

  o  "\'" (Single quotation mark character)

  o  "\nnn (Character whose value is nnn, where nn  is  an  octal
     number from 00 to 377.)

  o  "\xnn"  (Character  whose  value  if  nn,  where  nn  is   a
     hexadecimal number from 00 to FF.)



3.  CONSTANT IDENTIFIER

 A constant identifier is an identifier of a  type  that  can  be
 determined  at  compile  time.   The  following  are examples of
 constant identifiers:

      CONST
        Foo = 3;
        Exp = 8 * 9;
        Func = MAX( 3, 2, 4 );

4.  EXPRESSION IDENTIFIER

 An  expression  identifier  is  an  expression  in   parentheses
 optionally followed by a type cast structure.  Examples are:

      ( a + b ) - 'a' and 'b' are predeclared variable identifiers

      ( Foo ) :: INTEGER - expression 'Foo' type cast as an integer

5.  FUNCTION IDENTIFIER

 A function identifier is the name of a predeclared function.  If
 the function has formal parameters, the function identifier must
 be followed by one actual parameter for  each  formal  parameter
 listed.  For example:

      FUNCTION Foo ( VAR n : INTEGER; start : Boolean ) : REAL;

 A call to function 'Foo' could look like the following:

      Foo( bar, TRUE )

 Function 'Foo' returns a REAL value.