PEARL, or Process and experiment automation realtime language, is a
computer
A computer is a machine that can be Computer programming, programmed to automatically Execution (computing), carry out sequences of arithmetic or logical operations (''computation''). Modern digital electronic computers can perform generic set ...
programming language
A programming language is a system of notation for writing computer programs.
Programming languages are described in terms of their Syntax (programming languages), syntax (form) and semantics (computer science), semantics (meaning), usually def ...
designed for multitasking and
real-time programming. Being a
high-level language, it is fairly
cross-platform
Within computing, cross-platform software (also called multi-platform software, platform-agnostic software, or platform-independent software) is computer software that is designed to work in several Computing platform, computing platforms. Some ...
. Since 1977, the language has undergone several standardization iterations by the
Deutsches Institut für Normung. The current version is PEARL-90, which was standardized in 1998 as DIN 66253-2.
Features
PEARL supports both
fixed-point and
floating-point
In computing, floating-point arithmetic (FP) is arithmetic on subsets of real numbers formed by a ''significand'' (a Sign (mathematics), signed sequence of a fixed number of digits in some Radix, base) multiplied by an integer power of that ba ...
numeric values, character and character
string data as well as bit values. It also provides facilities for structures and multi-dimensional
arrays
An array is a systematic arrangement of similar objects, usually in rows and columns.
Things called an array include:
{{TOC right
Music
* In twelve-tone and serial composition, the presentation of simultaneous twelve-tone sets such that the ...
. Both typed and untyped pointers are also supported, along with
typecasting.
PEARL is a higher level programming language, which allows comfortable, secure and almost processor independent programming of multitasking and realtime solutions. It has been standardized since 1977 at various stages of its development. The last time was in 1998 as PEARL-90 (DIN 66253-2 1998, Berlin, Beuth-Verlag, 1998).
Besides the simple possibility to map process technical problems, an important principle in the development of PEARL was ease of 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).
Example
MODULE (HELLOWORLD);
SYSTEM;
TERMINAL:DIS<->SDVLS(2);
PROBLEM;
SPC TERMINAL DATION INOUT ALPHIC DIM(,) TFU MAX FORWARD CONTROL (ALL);
MAIN:TASK;
OPEN TERMINAL;
PUT 'Hello World!' TO TERMINAL;
CLOSE TERMINAL;
END;
MODEND;
External links
PEARL 90 - Language Report(PDF)
Procedural programming languages
Statically typed programming languages
Real-time computing
Programming languages created in 1977
Programming languages with a DIN standard
{{Compu-lang-stub