From Wikipedia, the free encyclopedia
PLEX
(Programming Language for EXchanges) is a special-purpose, concurrent, real-time
programming language
. The proprietary PLEX language is closely tied to the architecture of Ericsson's
AXE telephone exchanges
which it was designed to control. PLEX was developed by Goran Hemdahl at
Ericsson
in the 1970s,
[1]
and it has been continuously evolving since then.
[2]
PLEX was described in 2008 as "a cross between
Fortran
and a
macro assembler
."
[3]
The language has two variants:
Plex-C
used for the AXE Central Processor (CP) and
Plex-M
used for Extension Module Regional Processors (EMRP).
[4]
Ericsson started a project in the mid-1980s to create a successor language which resulted in
Erlang
. According to co-creator
Joe Armstrong
, "Erlang was heavily influenced by PLEX and the AXE design."
[1]
Erlang did not replace PLEX, but was used alongside it.
Execution model
[
edit
]
A system is divided into separately compiled and loaded units of code called "blocks." A block waits for one or more signals sent from elsewhere in the system which triggers code execution.
[4]
Pre-compilers
[
edit
]
Several
precompilers
or code generators exist, to produce
source code
in
Plex-C
from
higher level
languages or graphical models. These can generate
Plex-C
from:
Source code in
Plex-C
is compiled into the assembly language
ASA210C.
The binary form of
ASA210C
is either interpreted by a combination of hardware and
microcode
, or is compiled by a
just-in-time compiler
into native
machine code
for a high-capacity
microprocessor
.
References
[
edit
]