PLEX (programming language)
![]() | This article needs to be divided into sections. (April 2013) |
Paradigm | procedural, imperative |
---|---|
Developer | Göran Hemdahl |
First appeared | 1970s |
OS | Ericsson APZ |
License | Proprietary |
Dialects | |
Plex-C, Plex-M |
PLEX (Programming Language for EXchanges) is a special-purpose, pseudo-parallel and event-driven real-time programming language. Dedicated for AXE telephone exchanges, it was developed by Göran Hemdahl at Ericsson.[1] Originally designed in the 1970s, it has been continuously evolving since then.[2] The language has two variants: Plex-C used for the AXE Central Processor (CP) and Plex-M used for Extension Module Regional Processors (EMRP).[3]
Several precompilers or code generators exist, to produce source code in Plex-C from higher level languages or graphical models[citation needed]. 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.
Code execution is triggered by specific events, encoded as signals.[3]
An example input string that has been designed for the LI3 (P83-P90) version of the AXE Switch could be STDEP:DEV=LI3-101&&-107; this would print to the users console the current device status (busy, idle, blocked, etc.)
See also
Notes
- ^ 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.
- ^ a b Johan Erikson and Bo Lindell. "The Execution Model of APZ/PLEX - An Informal Description" (PDF). Mälardalen University. Retrieved 2009-03-07.