Articulo de referencia

Lenguaje de programación abierto

opl-dev project"},"released":{"wt":"{{Start date and age|1984}}"},"latest release version":{"wt":"1.56"},"latest release date":{"wt":"{{Start date and age|2006|06|17|df=yes}}"},...

Open Programming Language ( OPL ) es un lenguaje de programación para sistemas embebidos y dispositivos móviles que ejecutan los sistemas operativos EPOC y Symbian . Fue lanzado por la compañía británica Psion en 1984.

Usar

Diseñado originalmente para su uso en sus PDA clásicas Psion , como las Series 3 , 5/5mx , Series 7 y netBook -netPad, y el MC218 producido por Psion , OPL se proporcionó como parte del paquete de aplicaciones estándar. También se puede instalar en los teléfonos móviles y asistentes digitales personales (PDA) Nokia 9200, 9300 y 9500 Communicator , y en las series Sony Ericsson P800 , P900 y P910 . OPL también está incluido en los dispositivos portátiles industriales Psion Teklogix, como el Workabout mx, y también apareció en el organizador Oregon 'Osaris', menos conocido, un dispositivo EPOC32 ampliamente compatible que utilizaba exclusivamente la versión 4 del sistema operativo. OPL es un lenguaje interpretado similar a BASIC . También se ha desarrollado OVAL, un lenguaje totalmente compatible con Visual Basic .

Historia

El lenguaje se denominó originalmente Organiser Programming Language (OPL) , desarrollado por Psion Ltd para el Psion Organiser . Diseñado por Colly Myers, la primera versión fue implementada por Richard Harrison y Martin Stamp. La primera implementación (sin gráficos) fue para el Psion Organiser original (ahora conocido como Psion Organiser I, 1984), y venía incluida con los paquetes de datos de Ciencia, Finanzas y Matemáticas . Se hizo realmente accesible como software integrado en el Psion Organiser II (1986), y el lenguaje se siguió utilizando en el Psion Series 3 y posteriores. Tras la retirada de Psion del mercado de asistentes digitales personales , un proyecto destinado a llevar OPL a Symbian se concretó cuando el incipiente Programa de Desarrolladores de Symbian lo publicó como software de código abierto . El lenguaje ahora está disponible en SourceForge en un proyecto llamado opl-dev .

Actualmente, este lenguaje no está disponible para Symbian OS v8 ni versiones posteriores. Tras la retirada de Symbian OS, parece improbable que OPL esté disponible para futuras generaciones de dispositivos Symbian. Desde 2010, se recomienda a los desarrolladores de dispositivos Nokia que utilicen Python para S60 (véase Python para S60 ).

Ejemplos

Aquí está la versión para consola de un programa "¡Hola, mundo!" :

PROC principal: IMPRIMIR "¡Hola mundo!" PAUSA 40 ENDP

(Código fuente tomado del PCDevPrimer en la Wiki de OPL).

Y aquí tenéis una versión con interfaz gráfica de usuario (GUI) para la interfaz de usuario de la Serie 80 de Nokia:

CONST KKeyEnter%=13 PROC hola: dINIT "Hola" dTEXT "","¡Hola mundo!" dBUTTONS "Aceptar",TeclaKEnter% DIÁLOGO ENDP

OPL es un lenguaje de programación estructurado . Los programas OPL contienen PROCEDIMIENTOS, que son muy similares a las funciones ( subrutinas ) en otros lenguajes de programación.

  • En este ejemplo, la palabra clave dINIT inicializa un cuadro de diálogo (como es lógico, todas las funciones relacionadas con los cuadros de diálogo comienzan con la letra 'd'; para mayor claridad, esta letra está en minúscula, pero el lenguaje no distingue entre mayúsculas y minúsculas). El primer argumento del cuadro de diálogo es una cadena opcional que se utiliza para el título, el cual se muestra en la barra de título.
  • La función dTEXT muestra texto, con dos argumentos obligatorios: una cadena de texto alineada a la izquierda para el mensaje y una cadena de texto principal.
  • La palabra clave dBUTTONS permite agregar botones al cuadro de diálogo; aquí hay un botón con el texto "Aceptar". El segundo argumento de cada botón es tanto la notación especial de la tecla de acceso directo para ese botón como el código de retorno del cuadro de diálogo, en este caso la tecla "Intro".
  • Finalmente, la palabra clave DIALOG es necesaria para que el cuadro de diálogo previamente inicializado se muestre en la pantalla.

Prueba de respuestas de diálogo

Un ejemplo:

PROC test: dINIT "Tu desafío" dTEXT "" , "¿Tu respuesta a esta pregunta será no?" dBUTTONS "Sí" , % y , "No" , % n IF DIALOG =% y PRINT "¡No, no lo fue!" ELSE PRINT "¡Sí, lo fue!" ENDIF GET ENDP

En este programa interrogativo tan cruel, al botón Sí se le asigna el atajo Ctrl+y, mientras que al No se le asigna Ctrl+n, representados por %y y %n respectivamente. La entrada del usuario en el cuadro de diálogo se comprueba en la instrucción IF, imprimiendo las respuestas correspondientes en la pantalla. Cabe destacar que la palabra clave 'GET', que obtiene la entrada del usuario sin usar un cuadro de diálogo, se utiliza aquí simplemente para esperar a que se pulse una tecla antes de finalizar el programa (de lo contrario, finalizaría inmediatamente sin darle tiempo al usuario a leer el texto). La salida del cuadro de diálogo también se puede almacenar en una variable.

Las variables específicas de un procedimiento deben declararse con la palabra clave LOCAL; las variables globales se definen con la palabra clave GLOBAL.

Tipos de variables

La tabla que aparece a continuación utiliza una variable de ejemplo llamada var.

Minucias

OPL interactuaba con las funciones avanzadas de Psion Series 3 mediante llamadas al sistema operativo , pero en la posterior Psion Series 5mx esto cambió a una OPXbiblioteca almacenada en la memoria de solo lectura (ROM) del sistema, denominada unidad Z. También se pusieron a disposición bibliotecas 'OPX' para los comunicadores Nokia 9210 , Nokia 9300 y Nokia 9500 , añadiendo rutinas OPX para gestionar el Servicio de Mensajes Cortos ( SMS ) y la comunicación Bluetooth .

Otras características de OPL incluyen aquellas que comienzan con una letra: gpara funciones gráficas, mpara menús y dpara cuadros de diálogo.

Véase también

Referencias

  1. Licencia
  • El proyecto opl-dev
  • Wiki de OPL en Internet Archive que contiene documentos que detallan las palabras clave de OPL, las interfaces OPX y mucha otra información.
  • El blog OPL de Symbian ya no existe, pero las versiones antiguas están disponibles en Internet Archive.
  • Sitio web ruso sobre OPL archivado el 6 de diciembre de 2006 en Wayback Machine.
  • Tutorial de programación OPL