Цитата Сообщение от petera Посмотреть сообщение
А в КДС как?
И не только в КДС
Вы серьёзно или троллите?


Разумеется, вся проблема именно в неопределённости того, в каком порядке должны выполняться элементы на схеме.
В строчном языке порядок явно указывается.
Если сказано
A = A+1
B = A,
то ясно, что сначала A увеличится на 1, а потом B обновится.

В случае же графического языка, нет однозначного порядка выполнения.

Да, можно было бы говорить, что "да в том же КДС есть возможность перенумеровать блоки". Кто-то может сказать, что "и в ОЛ есть возможность пронумеровать блоки".
Но, блин, часто ли этой возможностью пользуются?
Удобно ли следить за этими цифорками и сверять "в нужном ли порядке выполнилась схема"?
А что делать, если схему нужно поменять? Номера же все съезжают.

Даже в мою бытность на форуме много раз поднимались вопросы типа "у меня две одинаковые линии от выхода принимают разные значения".

В этом плане, запрет "циклических связей" на самой схеме позволяет составлять программы вообще без использования "явной нумерации".
В нужных местах добавили линии задержки и ОЛ выстраивает выполнение "как нужно".

Пример с "самозамкнутой операцией AND" показывает лишь то, что две одинаковые линии, выходящие из результата AND по факту принимают разные значения. Одна оказывается равна обновлённому значению, а вторая -- предыдущему. Хотя, визуально они неотличимы.

Да, документацию стоит доработать, но, на мой взгляд, ручная расстановка "линий задержки" гораздо проще для последующего понимания (сразу видно, что значение приходит из прошлого такта), и гораздо проще в разработке-поддержке схем, ведь абсолютно не нужно думать о порядке выполнения блоков. Как нарисовано, так и выполняется.