Ильченко Эдуард писал(а):
Геннадий Тышов писал(а):
Ильченко Эдуард нарушает язык Дракон - команды параллельным процессам должны передаваться иконой "Параллельный процесс", а не иконой "Вывод".
Передача сообщений - это всего лишь, один из способов передачи команд параллельному процессу и является программной реализацией функций иконы "Параллельный процесс".
Икона "Вывод" не имеет функционального назначения воздействовать на другие процессы, она лишь пересылает информацию.
Икона "Параллельный процесс" запускает таковой, но не передаёт параметры/сообщения уже существующему процессу.
Иконы "Ввод" "Вывод" отлично подходят для передачи сообщений параллельным процессам. В них прописывается кому/куда и что.
Вывод сообщения, например на принтер, это передача сообщения параллельному процессу?
Вы о случаях, описанных
здесь? Вообще при "последовательной алгоритмизации", как это можно назвать словами Закревского, Ваш вопрос, судя по всему, неизбежен...
Кстати, обсуждал возможное решение в
этом посте (каковым и пользуюсь - см.
эту задачу).
В общем, если в
этой ветке в очередной раз поднят вопрос о представлении и контроле качества в части "декларативного знания, содержащегося в исходной программе" (Как улучшить, Рис. 100), то тут мы приходим (и тоже не в первый раз) к вопросу представления "части знания о подразумеваемом исполнителе программы". В ряде методологий разработки, претендующих на гарантоспособность, соотвествующие проблемы так или иначе решены - прежде всего у "автоматчиков" (группой Шалыто по-своему, в Statemate по-своему). Кстати, в ГРАФИТ-ФЛОКС тоже есть решения, как можно понять из описания... так что критиковать её на том основании, что оно, возможно, "частное", нет смысла... кто может - пусть делает то, что считает нужным...
А вот что словарные определения должны включать не только графику, но и неграфическую часть, это да... что получается при игнорировании этого на реальной аудитории, описал
здесь...
Что можно сказать с учётом этого по конкретным замечаниям:
По определению от автора исходного техноязыка,
Параллельный процесс "отлично подходят для передачи сообщений параллельным процессам". Ибо в нём также "прописывается кому/куда и что"... вот только для понимания этого нужно изучать авторские примеры в книгах...
Передача сообщений может трактоваться и как общий механизм взаимодействия процессов. Например, так: для одноранговых систем процессов "Пуск" и "Останов" - это сообщения существующему процессу-адресату возобновиться (начаться) и приостановиться (завершиться). Для иерархических систем (это с вызовами процедур, сиречь Вставками) можно считать, что вход во вставку - это сообщение об инициализации процесса, а выход - о возврате с результатом. Сама же Вставка - сообщение о создании экземпляра процесса (подлежащего ликвидации в дальнейшем по выполнении неких условий). Аналогично можно и для параллельных (одноранговых) процессов определить сообщения "Создать" и "Снять" процесс... вот только выполнять это всё будет не сам процесс, а некие внешние средства... Например, конструкторы/деструкторы процессов... Так?
А Ввод/Вывод могут сочетаться с обменом сообщения в случаях, представленных выше...