Письмо В.И. Шелехова от 6 ноября 2014 года
От кого: Vladimir Shelekhov ⚁
Кому: Паронджанов Владимир
6 ноября, 17:51
Здравствуйте, Владимир Данилович!
Хотел бы встретиться с Вами, разумеется при условии, что у Вас есть к этому желание и возможность. Для меня это возможно либо 12-13 ноября, либо 16 ноября, Если ответ положительный, сообщите, пожалуйста, мне в течении пары дней, чтобы определиться с авиабилетами.
Моя цель: поговорить о возможности сотрудничества с Вами лично и с Вашим институтом НПЦАП по следующим вопросам:
-- адаптация технологии автоматного программирования
в рамках технологии программирования на базе языка Дракон;
-- разработка дуального (текстового и графического) представления программы на базе графической оболочки языка Дракон.
В прошлом письме Вам я писал, что автоматная программа соответствует конструкции "силуэт" при отсутствии внутренних циклов внутри веток, а также при отсутствии горизонтального и вертикального объединений.
Отсюда следует, что почти все положения технологии автоматного программирования, включая золотые правила программирования, могут быть перенесены и адаптированы в рамках технологии на базе языка Дракон.
В планах работ моей лаборатории на 2016г. включена работа по построению дуального представления для автоматных программ на языке P в рамках системы предикатного программирования (
http://persons.iis.nsk.su/files/persons ... lang12.pdf )
с использованием графической оболочки языка Дракон.
Конечно, хотелось бы вести разработку на базе существующего редактора для языка Дракон с добавлением новой иконки "гиперфункция".
Краткая информация о моем опыте работы.
Наш институт более 15 лет сотрудничает с Институтом Прикладной Механики (сейчас - Информационные Спутниковые Системы), г. Железногорск. Мы поставили им технологию программирования на базе языка Модула-2.
В начале 1990-ых полномасштабное сотрудничество было свернуто. Наше взаимодействие с ними через Андрея Колташева ограничивается сейчас поддержкой трансляторов с языка Модула-2.
Лично я сделал для них мощный статический анализатор семантических ошибок периода исполнения для программ на Модула-2.
В 1980-ых я возглавлял бригаду программистов по разработке транслятора Алгол-Эльбрус с работой по ночам на Эльбрус-2 в ИТМ и ВТ и ежегодной военной приемкой.
Вы писали о двух ссылках на Ваши работы, а их три. О них Вам, возможно, сообщил Андрей Тюгашев. Третья ссылка находится во втором абзаце обзора на стр. 2 в работе
http://persons.iis.nsk.su/files/persons ... q_tech.pdf Сегодня на Вашем форуме увидел информацию о моей работе по алгоритмам вставки в AVL-деревья.
Я буду публиковать эту работу, собирался доработать ее и лишь потом сообщить о ней Вам.
Голосование на форуме по сравнению текстового представления на Oberon-2 и графического на языке Дракон не могу признать объективным. Нужен опрос гораздо большего числа людей и не только приверженцев языка Oberon.
Главное однако то, что алгоритм объективно сложный вне зависимости от представления. Именно поэтому я воспринял данную ситуацию как личный вызов. Но были и другие причины.
В моих планах, прописанных в гранте, тема по алгоритмам эффективной трансформации алгебраических типов, представителями которых являются деревья.
Я впечатлен большим разнообразием примеров по системам реального времени в Вашей книге.
Ранее я усердно искал примеры систем реального времени по разным отечественным и зарубежным учебникам.
Везде с примерами очень плохо.
Моя точка зрения, что язык Дракон в большей степени ориентирован на автоматные программы (большая часть бортовых программ - автоматные), чем на вычислительные программы, которые в моей классификации относятся к программам-функциям.
Настораживает, что математических алгоритмов в книге немного и они все простые. Не так, как у Д.Кнута.
Конечно, цель у книги другая -- подробно описать эргономические принципы построения программ, а на бытовых алгоритмах это лучше получается.
Другой вопрос, почему Дракон не используется для спецификации требований в системной инженерии, в частности требований при разработки разнообразной аппаратуры в КА.
Дракон для этого хорошо подходит. Это моя точка зрения.
Есть многочисленные применения Дракона в самых разных областях. Однако описываемые там алгоритмы лишь в редких случаях можно считать требованиями.
С уважением,
Шелехов Владимир