PEARL supports both fixed-point and floating-point numeric values, character and character string data as well as bit values. It also provides facilities for structures and multi-dimensional arrays. Both typed and untyped pointers are also supported, along with typecasting. Due to existence of this language, Wall discovered the existing PEARL programming language before Perl's official release and changed the spelling of the name.

PEARL is a higher programming language, which allows a comfortable, secure and almost processor independent programming of multitasking- and realtime problems and has been standardized since 1977 at various stages of its development, the last time 1998 as PEARL-90 (DIN 66253-2 1998, Berlin, Beuth-Verlag, 1998).

Besides the simple possibility to map process technical problems, an important principle at the development of PEARL was the easy learning by the programmer.

All basic data types and language structures of other procedural programming languages exist in PEARL. In addition PEARL offers comfortable language elements for the handling of multitasking- and realtime tasks.

Like most other high-level languages, PEARL supports procedures and functions, and passing parameters to these can be done by value or by reference (via pointers).