Владимир Паронджанов писал(а):
Рассмотрим стандарт ГОСТ 19.701.90. "Схемы алгоритмов, программ, данных и систем. Условные обозначения и правила выполнения".
В этом стандарте для обозначения геометрических фигур используется термин "символ" (а не знак, и не блок).
С учетом этого уточнения укажу принципиальное отличие между символами в блок-схемах и дракон-схемах.
В блок-схемах символ определяет геометрическую фигуру безотносительно к тому, каким образом к ней присоединяются линии. В пункте 3.3. Символы линий сами линии тоже рассматриваются как символы.
Способы присоединения линий к символам никак не определены, но показаны в примерах
В отличие от блок-схем в языке ДРАКОН иконы и макроиконы строго определены ВМЕСТЕ с присоединенными к ним линиями.
С учетом этого обстоятельства
в дракон-схемах (как и в прочих инженерных чертежах аналогичного типа) иконы и макроиконы не изменяют свою семантику
На этом отличии и был акцент выше. В блок-схемах, UML-диаграммах и в подобных прочих алгосхемах, инженерных материальных схемах, дорожных знаках и пр. -- т.е. инженерные чертежи, где ключевые символы имеют образы геометрических фигур -- этим символам (фигурам) назначают роль номинативного знака (общее лингвистическое понятие) -- роль семантической единицы, отображающей повторяющиеся элементы представлений/ситуаций (как, например, слова). Линии играют роль вспомогательных знаков (как, напр., знаки препинания для соединения слов в предложения).
В ДРАКОН-е икона как номинативный знак не изменяют свою семантику, однако определяется не только фигурой, но и линиями (или "кусочками" линий). Поэтому если смотреть на ДРАКОН как на блок-схему (исходя из тезиса: ДРАКОН — это упорядоченная блок-схема), то окажется, что линии в ДРАКОН-е не только упорядочивают фигуры, но и изменяют или уточняют предназначение символов-фигур. В блок-схемах же, напр., символ "параллельный процесс" не изменял бы предназначение на "событие" (как и "процесс" на "параметры") согласно примеру ранее:
https://forum.drakon.su/viewtopic.php?f=62&t=6588#p103323По ссылке выше, скорее, не "стандартный" ДРАКОН. Однако, видимо, пользователи языка не имеют ограничений для подобных расширений и полагаются на некие фундаментальные принципы. В самом деле, пример эксперимента подобного рода, недавно имевший место на форуме -- введение и обоснование иконы "временная вставка":
https://forum.drakon.su/viewtopic.php?f=78&t=6263&start=60#p102511И затронутая (вновь) проблематика, фактически, коррелирует с темой возможной стандартизации ДРАКОН-а:
https://forum.drakon.su/viewtopic.php?f=62&t=6589В блок-схемах бы конструкция:
была бы, скорее всего, некорректной. В блок-схемах символы-линии (сплошные) предназначены для указания либо потока управления, либо потока данных. В данном случае, при интерпретации фрагмента рисунка как блок-схемы, на потоке управления находится лишь фигура "включить маяк" (поскольку поток управления -- от входа к выходу во внешнюю среду), а такие возможные "боковые" соединения этой фигуры могли бы быть лишь данными или вспомогательными отношениями (параметры, свойства и т.п.).
Видимо, фундамент потенциального ДРАКОН-стандарта отличен от такового в блок-схемах, определялся бы как что-то вроде "зазубривание иероглифов". К примеру, согласно рисунку выше, если ограничиться лишь знаниями о "синхронизаторе", то пользователь, не зная особенностей новой иконы "временная ставка", вероятно, понимал бы конструкт так: сначала сработает "синхронизатор", затем одновременно (как совместные действия) "включить маяк" и "опросить клавиатуру". Но нет, необходимо знать формальную конкретику каждого возможного сочетания фигур и линий.
Всё же, гипотетическая замена стандарта блок-схем на некий ДРАКОН-вариант привнесёт не только упорядоченность фигур.