PLEX (programming language)
Paradigm | procedural, imperative, concurrent |
---|---|
Developer | Göran Hemdahl |
First appeared | 1970s |
Stable release | |
OS | Ericsson APZ |
License | Proprietary |
Dialects | |
Plex-C, Plex-M |
PLEX (Programming Language for EXchanges) is a special-purpose, concurrent, real-time programming language. The PLEX language is closely tied to the architecture of Ericsson's AXE telephone exchanges which it was designed to control. PLEX was developed by Göran Hemdahl at Ericsson in the 1970s,[2] and it has been continuously evolving since then.[3] PLEX was described in 2008 as "a cross between Fortran and a macro assembler."[4]
The language has two variants: Plex-C used for the AXE Central Processor (CP) and Plex-M used for Extension Module Regional Processors (EMRP).[5]
Execution model
A system is divided into separately compiled and loaded units of code called "blocks." A block waits for one more signals sent from elsewhere in the system which triggers code execution.[5]
Pre-compilers
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:
- Specification and Description Language graphical representation (SDL/GR)
- Plex-SQL, an extension of Plex-C with database facilities
- High Level Plex (HLPLEX) another extension of Plex-C
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.
See also
- Erlang (programming language) - a concurrent language designed at Ericsson in the 1980s
Notes
- ↑ "Plex Media Server - Page 8 — Plex Forums".
- ↑ Joe Armstrong. "A History of Erlang" (PDF). Ericsson AB. Retrieved 2009-03-07.
- ↑ Johan Erikson and Björn Lisper. "A Formal Semantics for PLEX" (PDF). Mälardalen University. Retrieved 2009-03-07.
- ↑ Hague, James. "My Road to Erlang". Programming in the 21st Century.
- 1 2 Johan Erikson and Bo Lindell. "The Execution Model of APZ/PLEX - An Informal Description" (PDF). Mälardalen University. Retrieved 2009-03-07.