Открытый язык программирования ( OPL ) - это встроенный язык программирования для портативных устройств, работающих под управлением операционной системы Symbian .
Парадигма | императивный , структурированный , встроенный |
---|---|
Разработано | ООО "Псион" |
Разработчик | opl-dev проект |
Впервые появился | 1984 |
Стабильный выпуск | 1.56 / 17 июня 2006 г. / 17 июня 2006 г. |
Операционные системы | ОС Symbian , Psion Organizer |
Лицензия | Общественная лицензия ограниченного применения GNU [1] |
Веб-сайт | opl-dev |
Применение
Его можно найти на Nokia 9200, 9300 и 9500 серии Communicator мобильной телефонной связи / персональный цифровой помощник (PDA) и Sony Ericsson P800 , P900 , P910 серии. На классических КПК Psion, таких как Series 3 , 5 / 5mx , Series 7 и netBook / netPad, а также MC218 , OPL является частью стандартного набора приложений. OPL также входит в состав промышленных карманных компьютеров Psion Teklogix, таких как Workabout mx . OPL - это интерпретируемый язык, похожий на BASIC . Также был разработан полностью совместимый с Visual Basic язык OVAL.
История
Изначально этот язык назывался Organizer Programming Language и был разработан Psion Ltd для Psion Organizer . Разработан Колли Майерсом, а первая итерация реализована Ричардом Харрисоном и Мартином Стэмпом. Первая реализация (без графики) была для оригинального Psion Organizer (теперь именуемого Psion Organizer I, 1984) и поставлялась вместе с пакетами данных Science, Finance и Math . Он стал действительно доступным в качестве встроенного программного обеспечения в Psion Organizer II (1986), и этот язык впоследствии использовался в Psion Series 3 и более поздних версиях. После того, как Psion ушла с рынка портативных цифровых помощников , реализация проекта была отложена до 2003 года, когда молодая программа Symbian Developer Program выпустила его с открытым исходным кодом . В настоящее время язык разрабатывается на SourceForge в проекте opl-dev. [ требуется разъяснение ]
Этот язык недоступен в Symbian OS v8 и более поздних версиях, в основном из-за отсутствия интереса и поддержки со стороны основных лицензий на Symbian Nokia и Sony Ericsson. [ необходима цитата ] Следовательно, OPL, скорее всего, никогда не будет доступна для нового поколения телефонов с ОС Symbian, таких как Sony Ericsson P990 , M600 , [ необходима цитата ] W950 , P1i и Nokia E61i и E90 . С 2010 года разработчикам устройств Nokia рекомендуется использовать Python для S60 (см. Python для S60 ). [ необходима цитата ]
Примеры
Вот консольная версия программы Hello world :
PROC основной: ПЕЧАТЬ "Hello World!" ПАУЗА 40ENDP
(Исходный код взят из PCDevPrimer в OPL Wiki.)
А вот версия GUI для пользовательского интерфейса Nokia Series 80:
ПОСТОЯННЫЙ KKeyEnter% = 13PROC привет: dINIT "Привет" dTEXT "", "Hello World!" dBUTTONS "ОК", KKeyEnter% ДИАЛОГENDP
OPL - это язык структурированного программирования . Программы OPL содержат ПРОЦЕДУРЫ, которые очень похожи на функции других языков программирования.
- Ключевое слово dINIT в этом примере инициализирует диалоговое окно (достаточно интуитивно все функции, связанные с диалоговым окном, начинаются с буквы «d»; для ясности, эта буква в нижнем регистре, но язык не зависит от регистра). Первым аргументом диалогового окна является необязательная строка, которая используется для заголовка диалогового окна, отображаемого в строке заголовка.
- Функция dTEXT отображает текст с двумя обязательными аргументами: выровненная по левому краю строка приглашения и основная строка.
- Ключевое слово dBUTTONS позволяет размещать кнопки в диалоговом окне - здесь есть кнопка с текстом «ОК». Второй аргумент каждой кнопки - это специальное обозначение сочетания клавиш для этой кнопки и код возврата диалогового окна, в данном случае клавиша «Enter».
- Наконец, ключевое слово DIALOG требуется для отображения на экране ранее инициализированного диалогового окна.
Тестирование диалоговых ответов
Пример:
PROC test: dINIT "Your Challenge" dTEXT "" , "Вы ответите на этот вопрос отрицательным?" dBUTTONS «Да» , % y , «Нет» , % n ЕСЛИ ДИАЛОГ =% y ПЕЧАТЬ «Нет, не было!» ЕЩЕ ПЕЧАТЬ "Да, это было!" ENDIF ПОЛУЧИТЬ ENDP
В этой жестокой вопросительной программе кнопке «Да» назначено сочетание клавиш Ctrl + y, а кнопке «Нет» - Ctrl + n, обозначенное% y и% n соответственно. Ввод пользователя из DIALOG проверяется оператором IF, который выводит на экран соответствующие ответы. Обратите внимание, что ключевое слово «GET», которое вводит пользовательский ввод без использования диалогового окна, здесь используется просто для ожидания нажатия клавиши перед завершением программы (в противном случае она завершилась бы немедленно, не давая пользователю времени прочитать текст). Вывод DIALOG также может быть сохранен в переменной.
Переменные, относящиеся к процедуре, должны быть объявлены с ключевым словом LOCAL; глобальные переменные определяются ключевым словом GLOBAL.
Типы переменных
В таблице ниже используется пример переменной с именем «var».
Тип данных | Синтаксис |
---|---|
Плавающая запятая | вар |
Целое число | var% |
Длинное целое | var & |
Нить | var $ ( длина ) |
Мелочи
OPL взаимодействует с расширенными функциями Psion Series 3 посредством вызовов операционной системы , но в более поздних версиях Psion Series 5mx это было изменено на так называемую библиотеку OPX, хранящуюся в системном ПЗУ ( диск Z). Библиотеки OPX также стали доступными для коммуникаторов Nokia 9210 , Nokia 9300 и Nokia 9500 , добавив процедуры OPX для обработки SMS и управления связью Bluetooth.
К другим функциям OPL относятся те, в начале которых стоит буква «g» для графических функций; буквы с буквой «м» - для меню; и с буквой «d» для диалогов.
Смотрите также
- История Symbian
- Организатор Psion
Рекомендации
- ^ Лицензия
Внешние ссылки
- OPL-DEV проект
- Вики-сайт OPL в Интернет-архиве, содержащий документы с подробным описанием ключевых слов OPL, интерфейсов OPX и другой информации.
- Блог OPL от Symbian , теперь мертв, но старые версии доступны в Интернет-архиве
- Русский сайт о ЛП
- Руководство по программированию OPL