Microsoft представляет язык для Интернета вещей

Благодаря новому языку моделирование и программирование приложений Интернета вещей превращаются в единый процесс


15:39 01.11.2016   |   3214 |  Пол Крил |  InfoWorld, США

Рубрика Технологии



Платформа с открытым кодом P предназначена для асинхронного программирования встроенных систем, проектирования драйверов устройств и создания распределенных сервисов.

Корпорация Microsoft представила язык P, распространяемый с открытым кодом и предназначенный для асинхронного событийного программирования и создания приложений Интернета вещей.

Язык, разработанный для проектирования встроенных систем, драйверов устройств и распределенных сервисов, ориентирован на опеделенные области применения. Программы, написанные на нем, компилируются в код на языке Си, который также широко используется во встроенных системах и Интернете вещей. «Цель разработки P заключалась в создании языковых конструкций, которые лаконично и точно взаимодействовали бы с протоколами, применяемыми для организации связи между отдельными компонентами», – поясняют Этан Джексон и Шаз Кадир из Microsoft в учебнике по программированию на P.

Благодаря P моделирование и программирование превращаются в единый процесс. «Программа на P не только компилируется в исполняемый код, но и проверяется при помощи средств систематического тестирования, – говорится в документации по языку, размещенной на GitHub. – Язык P использовался, в частности, для реализации и проверки стека драйверов USB-устройств, включенного в состав операционных систем Microsoft Windows 8 и Windows Phone».

В Microsoft язык P характеризуют как средство «безопасного» событийного программирования. В своем учебнике Джексон и Кадир описывают программы на P как вычислительную модель, ориентированную на обмен сообщениями между конечными автоматами. Именно такой подход повсеместно применяется при создании встроенных, сетевых и распределенных систем.

У каждого конечного автомата имеются своя входная очередь, набор состояний, обработчики событий и локальное хранилище для коллекции переменных. Конечные автоматы работают одновременно, выполняя событийный цикл и извлекая сообщения из входной очереди. Конечный автомат проверяет состояние своего локального хранилища, отправляет сообщения и может создавать другие автоматы. В P операции отправки не блокируются; сообщение просто помещается во входную очередь целевого автомата. В программе описываются коллекции событий и создаются определения автоматов.

Microsoft предлагает также открытую реализацию языка P#, являющегося расширением C# и ориентированного на асинхронное программирование.

В июне была представлена модифицированная версия языка Си с открытым кодом – Checked C, в которую добавлены новые типы и синтаксические конструкции. Цель этой разработки заключается в повышении безопасности Си.


Теги: Разработка ПО Интернет вещей
На ту же тему: