Vector Pascal is an extended Pascal incorporating:

- Unicode support – New in version 4

· Programs may be input in Unicode, allowing Chinese, Greek, Japanese and Russian characters in variable names.

· Strings can contain Unicode.

· Characters are 16 bit.

· Conversion to and from UTF-8 performed on input and output.

· Mathematical operators √ , ∏, ∑, ≤, ≥, ∈, ÷ can now be entered in Unicode rather than as ASCII surrogates

- Vector Pascal extensions aimed at vector processing. These are derived from APL and similar to the extensions provided in Fortran90. These extensions translate to the SIMD instructions of the Athlon and P4 etc.

·
All operators extended
to arrays eg: *a:=a +b* where *a,b:***array***[y] ***of** *t;*

·
All monadic functions
map over arrays eg: *p:=sin(q);* where *p,q*:**array***[1..n]*
**of **re*al;*

·
**TRANS** transposes a
matrix

· The reduction functional \ can perform array summation etc

·
Array slices of the
form *A[* *i..j]:= K[i+1..j+1]*

· Read and write operate on multidimensional arrays

- New operator extensions

· User defined operators allowed

· Operators +: and -: perform saturated arithmetic

·
**MIN** and **MAX**

- Type system extensions

· Type pixel predefined as fixed point number in range –1 .0 to 1.0

· Sets of strings, reals, etc allowed. – New in version 4

· Dimensioned reals allow distinct and incompatible types for time, distance, mass etc

· Generic Units allow the writing of polymorphic functions

- Many of the features of ISO extended Pascal (see http://www.dcs.gla.ac.uk/~wpc/reports/compilers/compilerindex/iso10206.ps ) in particular

· Schematic array types

·
Extended formats of **Pred**
and **Succ**

· Any type can be returned by a function

·
Operators ** and **POW** for exponentiation and
Power

· >< for set symmetric difference

· Complex numbers

·
**Protected** parameters

· Sets of arbitrary cardinality

·
**For** *x* **in** *y* **do** for set
iteration

- Turbo Pascal features

o Units, Strings, Turbo Pascal style file operations

A comparison with other languages and implementation details are given in Vector Pascal an Array Language .