PLEX (Lenguaje de programación para intercambios) es un lenguaje de programación concurrente, de propósito especial y en tiempo real . El lenguaje PLEX patentado está estrechamente relacionado con la arquitectura de las centrales telefónicas AX de Ericsson, para las que fue diseñado. PLEX fue desarrollado por Göran Hemdahl en Ericsson en la década de 1970, [1] y ha evolucionado continuamente desde entonces. [2] PLEX fue descrito en 2008 como "un cruce entre Fortran y un ensamblador de macros ". [3]
Paradigma | procesal , imperativo , concurrente |
---|---|
Desarrollador | Göran Hemdahl |
Apareció por primera vez | 1970 |
SO | Ericsson APZ |
Licencia | Propiedad |
Dialectos | |
Plex-C, Plex-M | |
Influenciado | |
Erlang |
El lenguaje tiene dos variantes: Plex-C utilizado para el procesador central AX (CP) y Plex-M utilizado para los procesadores regionales del módulo de extensión (EMRP). [4]
Ericsson inició un proyecto a mediados de la década de 1980 para crear un lenguaje sucesor que resultó en Erlang . Según el co-creador Joe Armstrong , "Erlang fue fuertemente influenciado por PLEX y el diseño de AX". [1] Erlang no reemplazó a PLEX, pero se usó junto con él.
Modelo de ejecución
Un sistema se divide en unidades de código compiladas y cargadas por separado llamadas "bloques". Un bloque espera una o más señales enviadas desde otra parte del sistema que desencadenan la ejecución del código. [4]
Precompiladores
Existen varios precompiladores o generadores de código para producir código fuente en Plex-C a partir de lenguajes de nivel superior o modelos gráficos. Estos pueden generar Plex-C a partir de:
- Representación gráfica del lenguaje de especificación y descripción (SDL / GR)
- Plex-SQL , una extensión de Plex-C con facilidades de base de datos
- High Level Plex (HLPLEX) otra extensión de Plex-C
El código fuente en Plex-C se compila en el lenguaje ensamblador ASA210C. La forma binaria de ASA210C se interpreta mediante una combinación de hardware y microcódigo , o se compila mediante un compilador justo a tiempo en código de máquina nativo para un microprocesador de alta capacidad .
Referencias
- ^ a b . doi : 10.1145 / 1238844.1238850 . Cite journal requiere
|journal=
( ayuda );Falta o vacío|title=
( ayuda ) - ^ Johan Erikson y Björn Lisper. "Una semántica formal para PLEX" (PDF) . Universidad de Mälardalen . Consultado el 7 de marzo de 2009 .
- ^ Haya, James. "Mi camino a Erlang" . Programación en el siglo XXI .
- ^ a b Johan Erikson y Bo Lindell. "El modelo de ejecución de APZ / PLEX - Una descripción informal" (PDF) . Universidad de Mälardalen . Consultado el 7 de marzo de 2009 .