Представитель Шуры Люберецкого в ЖЖ (brat_luber) wrote,
Представитель Шуры Люберецкого в ЖЖ
brat_luber

Railway Oriented Programming

В подтверждение записи о том, что работа программиста – это придумывание языков программирования. В одном англоязычном блоге обнаружил пример этого подхода, так сказать, в действии. Рассматривается простая задачка, элементарная последовательность действий, каждый шаг в которой может привести к какой-либо ошибке. Постановка задачи и начало ее решения, прямо скажем, не впечатляют. Но во второй части, как раз и названной “Railway Oriented Programming” – как раз и происходит самое интересное.

Диаграммка типа “поток данных” в принципе, выглядит вполне привычно для многих. Слева вход, справа выход(ы), в квадратиках написаны какие-то функции – все замечательно. Но для того, чтобы перевести ее в реальный программный код на “классическом” ЯП – нужно выполнить некоторую формальную процедуру. Предлагается что-то типа “универсального” языка – который одновременно и изображает конструкции с диаграммы (используются железнодорожные аналогии – типа “стрелка”, “тупик” и т. п.) – и одновременно позволяет записывать программы. Что это, если не язык программирования?

Не так давно мне пришлось освоить одну систему “программирования мышкой”. Нет, это не мейнстримное “визуальное программирование”, обычно понимаемое, как “накидать компонентов на форму”. Та система, с которой мне пришлось столкнуться (что-то типа “русского LabVIEW на коленке”) – это в чистом виде “программирование мышкой”, но идеологически очень близкое к вышеописанному подходу. Изображенные на некоей двумерной схеме “виртуальные приборы” соединяются линиями (”виртуальными проводами”). Авторы утверждают, что с помощью подобной системы можно разрабатывать какие угодно SCADA-приложения (SCADA – это Supervisory Control and Data Acquisition, “диспетчесрское управление и сбор данных”). Как может убедиться практически любой, “каркас” такой системы реализуется на подходящем языке программирования с помощью нескольких десятков строк кода.

Запись опубликована в блоге Шуры Люберецкого. Вы можете оставлять свои комментарии там, используя свое имя пользователя из ЖЖ (вход по OpenID).

Tags: программирование
Subscribe

  • В пизду таких переводчиков

    Нашел на рутрекере подборку разных вариантов рок-оперы Jesus Christ Superstart (”Иисус Христос – суперзвезда”). Для начала…

  • Аргоннский лес, или песня сапера

    Один из персонажей “Трех товарищей” Ремарка очень любил напевать песню “Аргоннский лес”. Я думал, что вряд ли можно найти…

  • Ария – Через все времена

    В очередной раз попытался впасть в счастливое говнарьское детство и скачал свежий альбом “Арии”. Что могу сказать? “Ария”…

Comments for this post were disabled by the author