Protel significa "Lenguaje de aplicación de tipos orientado a procedimientos". Es un lenguaje de programación creado por Nortel Networks y utilizado en sistemas de conmutación de telecomunicaciones como el DMS-100 . [1] [2] Protel-2 es la versión orientada a objetos de Protel. [3] [4]
Los lenguajes PROTEL fueron diseñados para satisfacer las necesidades de la telefonía digital y es la base de la línea DMS-100 de sistemas de conmutación PROTEL es un lenguaje estructurado en bloques fuertemente tipado que se basa en gran medida en PASCAL y ALGOL 68 con estilo de izquierda a derecha de asignación de variables, matrices de tamaño variable y estructuras extensibles. Los diseñadores de PROTEL ampliaron significativamente el PASCAL del día añadiendo compilación externa y ampliando las estructuras de datos disponibles en el lenguaje. [3]
Variables y asignación
Las variables se declaran de manera similar a Pascal.
- VAR MYVAR: INT;
Para asignar un valor:
- 5 -> MYVAR;
Nota : El dígrafo '->' se llama coloquialmente operador gazinta (porque, en el ejemplo anterior, 5 entra en (= gazinta ) MYVAR).
Para declarar una variable de cadena llamada 'FOO':
- VAR FOO ES DESC [1..10] DE CHAR;
Nota : PROTEL se ocupa de las matrices de 1.
Procedimientos
- PROC myprocname ( lista de argumentos ) IS BEGIN ... code ... END
Nota : El alcance del bloque está definido por BEGIN y END.
Funciones
- FUNC myfuncname ( lista de argumentos ) RETURNS INT IS BEGIN ... code ... END
Estructuras
La TABLA es la estructura básica. Se declara y se usa de manera similar a los lenguajes descendientes de Pascal.
Sindicatos
La SUPERPOSICIÓN es la estructura de unión básica. Se declara y se usa de manera similar a los lenguajes descendientes de Pascal.
AREAS
Las áreas son bloques de memoria que se pueden convertir en TABLAS y SUPERPOSICIONES. Se declaran en bytes y, por lo general, se declaran lo suficientemente grandes como para permitir una expansión futura. Esto se debe al deseo de actualizar el software DMS "en vivo" sin necesidad de reiniciar. La naturaleza modular de PROTEL permite que fragmentos de código relativamente pequeños se intercambien en una carga; si las AREA se planificaran de manera inteligente, esto no afectaría la ubicación de los módulos en la memoria, evitando así un reinicio.
MÓDULOS
Los archivos suelen empezar con una declaración MODULE: el módulo es la unidad de compilación.
- MODULE mymodulename ;
Flujo de control
La declaración de cambio NO falla como lo hace en C.
Referencias
- ↑ Krishna, Sundeep Sahay, Brian Nicholson, S. (2003). Outsourcing global de TI: desarrollo de software transfronterizo . Cambridge: Cambridge University Press. pag. 7 . ISBN 978-0521816045.
- ^ Telesis (3), 1989 Falta o vacío
|title=
( ayuda ) - ^ a b “Experiencia con un lenguaje mecanografiado modular: PROTEL” , Actas de ICSE '81 de la 5ª conferencia internacional sobre ingeniería de software
- ^ Dini, P .; Boutaba, R .; Logrippo, L., eds. (1997). Interacciones de características en las redes de telecomunicaciones IV . Ámsterdam: IOS Press. pag. 23. ISBN 978-9051993479.