Интернет, компьютеры, софт и прочий Hi-Tech

Подписаться через RSS2Email.ru

Алгоритмический язык «Дракон»

«Слушайте, граждане,» — сказали советские конструкторы космической техники в далёком 1986-м году, — «а почему это нам приходится постоянно дёргать программистов, даже ради создания несложного софта? Давайте-ка сделаем так, чтобы любой инженер мог самостоятельно справиться!» Так появилась совершенно потрясающая разработка — ДРАКОН, применяемая РосКосмосом в промышленном масштабе с 1996-го. О ней и расскажем.

Суть вкратце

«ДРАКОН» — своеобразная аббревиатура. Расшифровывается она так: Д — Дружелюбный, Р — Русский, А — Алгоритмический язык, К — Который, О — Обеспечивает, Н — Наглядность.

Наглядность обеспечивается на самом деле. Алгоритмы, доступные для создания целостных программ, отображаются в виде блоков на дисплее компьютера. Всякие прямоугольники, соединённые линиями и стрелочками. Внутри них указаны действия. Всё это называется ДРАКОН-схемы. (Причём, некоторые прямоугольники — с закруглёнными углами. Такой дизайн запатентован конторой Apple. Правда, Apple явно побаивается подавать в суд на РосКосмос.)

Так вот, инженер, сконструировав какой-нибудь прибор, может самостоятельно создать программу для управления устройством, просто передвигая блоки — элементы ДРАКОН-схемы. Без ручного написания исходного кода.

Гибриды

Хотя в вышеупомянутом исходном коде разбираться необязательно, обойтись без него всё равно нельзя. Ведь алгоритмы, представленные в виде схем, всё равно нужно преобразовывать в нечто пригодное для компиляции. И одновременно понятное как можно большему количеству среднестатистических специалистов.

Всякие велосипеды, конечно изобретали, но здравомыслие победило: разумные люди принялись прикручивать к ДРАКОН-схемам уже существующие языки программирования (выбрав самые популярные, естественно). Получились гибриды, такие как «Дракон-Си», «Дракон-Java», «Дракон-Perl» и, с особенно красивым названием, «Дракон-Питон».

Следовательно, программисты совсем уж без работы не остались, ведь кому-то же надо заглядывать под прямоугольники, открывать исходные коды и вносить какие-либо поправки, ежели возникает необходимость.

Среда разработки

Конечно же, управление ДРАКОН-схемами происходит не просто так, а внутри какой-то компьютерной программы. Впрочем, почему в какой-то, есть вполне конкретный, пригодный для работы софт: DRAKON Editor 1.13, присутствующий на SourceFordge (вот здесь: sourceforge.net/projects/drakon-editor/files/). По заверениям создателя, Степана Миткина, позволяет изготавливать софт на языках Java, Javascript, C#, C++, C (обычный Си), Python, Tcl, Lua и Erlang.

Можно устанавливать в Windows и Mac OS. Требует поддержки Tcl (доведётся обратиться к проекту ActiveTcl). В GNU/Linux тоже работает, но необходимы компоненты tcl8.5, tk8.5, libsqlite3-tcl, tcllib и libtk-img.

В Windows запускается двойным кликом на файле drakon_editor.tcl, а в Mac OS и GNU/Linux — командой в терминале: tclsh8.5 drakon_editor.tcl (после неё через пробел можно указать имя файла, который нужно открыть в редакторе).

Есть и альтернативное решение: «Интегрированная Среда ДРАКОН», именуемая также «ДРАКОН-редактор». Создатель: Тышов Геннадий Николаевич.

Данный редактор, после расстановки блоков, умеет преобразовывать результат в коды на языках программирования Delphi, Си, Oberon и даже ASM. Правда, запустить его можно только в операционной системе Windows. Да и брать дозволено лишь на девять месяцев, а потом нужно получать какую-то лицензию.

Другие среды разработки или не доведены до ума, или работают в древней ОС MS DOS, или предназначены для внутреннего использования в разных конторах. Например, московский «Научно-производственный центр автоматики и приборостроения» создал продукт под названием «ГРАФИТ-ФЛОКС-система», заточенный под их производственные нужды и не очень-то интересный широким слоям программирующих граждан.

Кому это нужно

Алгоритмический язык ДРАКОН нужен международному проекту «Морской старт», конструкторам космических аппаратов «Фрегат» и ракет-носителей «Протон-М». По непроверенным данным, кто-то также пытался создавать софт для охранных систем, электронных замков, всяких сигнализаций и прочих мелочей.

Широкому распространению и повсеместному внедрению вроде бы ничего не препятствует, однако почему-то никто особо не рвётся популяризировать сей столь удобный и практичный инструмент.

Вот если бы можно было делать приложения для ОС Android (как, например, AppInventor), то популярность пришла бы. А так... Впрочем, Google не дремлет.

Google Blockly

Ценная концепция не должна пропадать, решили в Google, и 13 июля 2012-го года группа энтузиастов анонсировала визуальный язык программирования Blocky.

Человек перетаскивает модули, похожие на элементы цветной головоломки, и таким образом выстраивает алгоритмы в программу. Потом это можно скомпилировать, например, в Python.

Мало того, что код проекта распространяется под лицензией Apache, так ещё и прямо в браузере работает, поскольку написан на JavaScript. Хотя, зачем лишние слова, каждый может зайти на страницу проекта code.google.com/p/blockly/ и выстроить из команд-модулей демонстрационную программу для преодоления лабиринта. Получается даже у детей.

Правда, ничего серьёзного на Blocky пока не сотворить, большие приложения ему не по силам. Проект ведь совсем юный. Это же не ДРАКОН, родившийся в 1986-м.

Заключение

Вот и получается, что если проект ДРАКОН не возьмётся за ум и не адаптируется к современным условиям, то так и останется востребованным лишь аэрокосмическими конторами да парой исследовательских институтов.

Никто не берётся за продвижение и популяризацию? Значит, не судьба. Таковы современные условия.

Даже если Blocky не разовьётся и не окрепнет под крылышком Google, появятся другие аналогичные проекты, ведь свято место, как известно, пусто не бывает в принципе, и хорошие идеи всегда найдут своих реализаторов.

Автор: vanilinkin, специально для xBB.uz, 13.10.2012


Предыдущие публикации:

Биржа долевых инвестиций SIMEX.

Последнее редактирование: 2012-10-13 08:15:32

Метки материала: дракон, язык, алгоритмический язык, язык дракон, язык программирования, программное обеспечение, информационные технологии, программирование, ит, алгоритм, it, компьютерные технологии, hi tech, икт, software, высокие технологии, разработка по, high tech

Оставьте, пожалуйста, свой комментарий к публикации

Представиться как     Антибот:
   

Просьба не постить мусор. Если вы хотите потестить xBB, воспользуйтесь кнопкой предварительного просмотра на панели инструментов xBBEditor-а.


© 2007-2017, Дмитрий Скоробогатов.
Разрешается воспроизводить, распространять и/или изменять материалы сайта
в соответствии с условиями GNU Free Documentation License,
версии 1.2 или любой более поздней версии, опубликованной FSF,
если только иное не указано в самих материалах.