Открытый язык программирования
![]() | В этой статье есть несколько проблем. Пожалуйста, помогите улучшить его или обсудите эти проблемы на странице обсуждения . ( Узнайте, как и когда удалять эти шаблонные сообщения )
|
Парадигмы | императивный , структурированный , встроенный |
---|---|
Семья | БАЗОВЫЙ |
Разработано | Колли Майерс, Ричард Харрисон, Мартин Стэмп |
Разработчики | ООО "Псион" проект opl-dev |
Впервые появился | 1984 год |
Стабильная версия | 1,56
/ 17 июня 2006 г |
Дисциплина набора текста | Статический , сильный |
Объем | Лексический |
ТЫ | EPOC , Symbian ОС , Органайзер Psion |
Лицензия | Меньшая общественная лицензия GNU [1] |
Веб-сайт | opl-dev |
Открытый язык программирования ( OPL ) — язык программирования для встраиваемых систем и мобильных устройств , работающих под управлением операционных систем EPOC и Symbian . Он был выпущен британской компанией Psion в 1984 году.
Использовать
[ редактировать ]Первоначально разработанный для использования на классических КПК Psion , таких как Series 3 , 5/5mx , Series 7 и нетбук производства Psion -netPad, а также на MC218 , OPL поставлялся как часть стандартного пакета приложений. Его также можно установить на серий Nokia 9200, 9300 и 9500 Communicator мобильные телефоны и персональные цифровые помощники (КПК) , а также на серии Sony Ericsson P800 , P900 , P910 . OPL также включен в промышленные портативные компьютеры Psion Teklogix, такие как Workabout mx, а также появился в менее известном органайзере Oregon Osaris, широко совместимом устройстве EPOC32, которое уникально использовало версию 4 ОС. 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 ушла с рынка персональных цифровых помощников , проект, направленный на внедрение OPL в Symbian, был реализован, когда молодая программа Symbian Developer Program выпустила его как программное обеспечение с открытым исходным кодом . Язык теперь доступен на SourceForge в проекте opl-dev .
В настоящее время этот язык недоступен для Symbian OS v8 и более поздних версий. С последующим прекращением выпуска ОС Symbian кажется маловероятным, что OPL будет доступен для последующих поколений устройств Symbian. С 2010 года разработчикам устройств Nokia было предложено вместо этого использовать Python для S60 (см. Python для S60 ). [ нужна ссылка ]
Примеры
[ редактировать ]Вот консольная версия «Hello, World!» программа :
PROC main: PRINT "Hello World!" PAUSE 40 ENDP
(Исходный код взят из PCDevPrimer в OPL Wiki.)
А вот версия GUI для пользовательского интерфейса Nokia Series 80:
CONST KKeyEnter%=13 PROC hello: dINIT "Hello" dTEXT "","Hello World!" dBUTTONS "OK",KKeyEnter% DIALOG ENDP
OPL — структурированный язык программирования . Программы OPL содержат PROCedures, которые очень похожи на функции ( подпрограммы ) в других языках программирования.
- Ключевое слово dINIT в этом примере инициализирует диалоговое окно (достаточно интуитивно понятно, что все функции, связанные с диалоговым окном, начинаются с буквы «d»; для ясности эта буква написана строчными буквами, но язык не зависит от регистра). Первый аргумент диалогового окна — это необязательная строка, которая используется в качестве заголовка диалогового окна, отображаемого в строке заголовка.
- Функция dTEXT отображает текст с двумя обязательными аргументами: строкой «подсказки» с выравниванием по левому краю и основной строкой.
- Ключевое слово dBUTTONS позволяет разместить кнопки в диалоговом окне — здесь есть кнопка с текстом «ОК». Вторым аргументом каждой кнопки является как специальное обозначение сочетания клавиш для этой кнопки, так и код возврата диалогового окна, в данном случае клавиша «Ввод».
- Наконец, ключевое слово DIALOG требуется для отображения на экране ранее инициализированного диалогового окна.
Тестирование диалоговых ответов
[ редактировать ]Пример:
PROC test:
dINIT "Your Challenge"
dTEXT "","Will your answer to this question be no?"
dBUTTONS "Yes",%y,"No",%n
IF DIALOG=%y
PRINT "No it wasn't!"
ELSE
PRINT "Yes it was!"
ENDIF
GET
ENDP
В этой жестокой программе вопросов кнопке «Да» присвоено сочетание клавиш Ctrl+y, а кнопке «Нет» присвоено сочетание клавиш Ctrl+n, представленное %y и %n соответственно. Ввод пользователя из DIALOG проверяется в операторе IF, выводя соответствующие ответы на экран. Обратите внимание, что ключевое слово GET, которое получает пользовательский ввод без использования диалогового окна, здесь используется просто для ожидания нажатия клавиши перед завершением программы (в противном случае она немедленно завершится, не давая пользователю времени прочитать текст). Вывод DIALOG также можно сохранить в переменной.
Переменные, специфичные для процедуры, должны быть объявлены с ключевым словом LOCAL; глобальные переменные определяются с помощью ключевого слова GLOBAL.
Типы переменных
[ редактировать ]В таблице ниже используется пример переменной с именем var
.
Тип данных | Синтаксис |
---|---|
Плавающая точка | наш |
Целое число | наш% |
Длинное целое число | наш& |
Нить | вар$( длина ) |
мелочи
[ редактировать ]OPL взаимодействует с расширенными функциями Psion Series 3 посредством вызовов операционной системы , но в более поздней версии Psion Series 5mx это было изменено на так называемый OPX
библиотека , хранящаяся в постоянном запоминающем устройстве (ПЗУ) системы, называемом диском Z. Библиотеки OPX также были доступны для коммуникаторов Nokia 9210 , Nokia 9300 и Nokia 9500 , в них были добавлены процедуры OPX для обработки службы коротких сообщений ( SMS ) и управления связью Bluetooth .
Другие функции OPL включают те, которые начинаются с буквы: g
для графических функций, m
для меню и d
для диалогов.
См. также
[ редактировать ]Ссылки
[ редактировать ]Внешние ссылки
[ редактировать ]- opl -dev Проект
- Вики-сайт OPL в Интернет-архиве, содержащий документы с подробным описанием ключевых слов OPL, интерфейсов OPX и много другой информации.
- Блог OPL от Symbian , сейчас мертв, но старые версии доступны в Интернет-архиве.
- Российский сайт об OPL. Архивировано 6 декабря 2006 г. в Wayback Machine.
- Учебное пособие по программированию OPL