PLEX (programming language): Difference between revisions

Content deleted Content added
mNo edit summary
clean-up pass
Line 24:
}}
 
'''PLEX''' (''Programming Language for EXchanges'') is a special-purpose, pseudo-parallel and event-driven, real-time [[programming language]]. DedicatedThe forPLEX language is closely tied to the architecture of Ericsson's [[AXE telephone exchange]]s, which it was designed to control. PLEX was developed by Göran Hemdahl at [[Ericsson]]. in the 1970s,<ref name=ErlangHistory>{{cite web |url= http://www.cs.chalmers.se/Cs/Grundutb/Kurser/ppxt/HT2007/general/languages/armstrong-erlang_history.pdf|title= A History of Erlang|accessdate=2009-03-07 |author= Joe Armstrong|date= |work= |publisher=Ericsson AB}}</ref> Originally designed in the 1970s,and it has been continuously evolving since then.<ref name=Semantics>{{cite web |url= http://cdc.ioc.ee/appsem04/webproc/short/erikson-lisper.pdf|title= A Formal Semantics for PLEX|accessdate=2009-03-07 |author= Johan Erikson and Björn Lisper|date= |work= |publisher=Mälardalen University}}</ref> PLEX was described in 2008 as "a cross between Fortran and a macro assembler."<ref>{{cite web|last1=Hague|first1=James|title=My Road to Erlang|url=http://prog21.dadgum.com/22.html|website=Programming in the 21st Century}}</ref>

The language has two variants: ''Plex-C'' used for the AXE Central Processor (CP) and ''Plex-M'' used for Extension Module Regional Processors (EMRP).<ref name=Execution>{{cite web |url= http://www.mrtc.mdh.se/publications/0802.pdf|title= The Execution Model of APZ/PLEX - An Informal Description|accessdate=2009-03-07 |author= Johan Erikson and Bo Lindell|date= |work= |publisher=Mälardalen University}}</ref> PLEX was described in 2008 as "a cross between Fortran and a macro assembler."<ref>{{cite web|last1

=Hague|first1=James|title=MyExecution Road to Erlang|urlmodel=http://prog21.dadgum.com/22.html|website=Programming in the 21st Century}}</ref>
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.<ref name=Execution/>
 
==Pre-compilers==
Line 34 ⟶ 39:
 
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.
 
==Features==
Code execution is triggered by specific events, encoded as signals.<ref name=Execution/>
 
==See also==
* [[Erlang (programming language)]] - a concurrent language designed at Ericsson in the 1980s
 
==Notes==