Дмитрий Бардынин писал(а):
автор дает команду редактору, и тот проверяет корректность нарисованной схемы/проекта. До этого момента мне проверка не нужна, т.к. мой замысел пока не оформлен.
Это крайне ущербный и опасный подход.
Который, к сожалению, свойствен мэйнстриму.
Но это ж как надо было лажануться всему программистскому сообществу, чтобы подсесть на ужасный язык Си, провоцирующий ошибки на каждом шагу, а потом придумывать целый ряд внешних ограничений и проверок (например, правила MISRA, используемые при разработке критически важных приложений)!
Вы сейчас предлагаете то же самое.
Да, из-за отсутствия идеала в информационных системах используются транзакции, внутри которых ведётся работа во временной локализованной области, по окончании которой транзакция либо закрывается, либо откатывается - с сохранением корректного состояния системы в обоих случаях.
Но транзакции при редактировании текста в графическом языке должны организовываться внутри среды разработки, а не в руках программиста.
Разработчику надо помогать!
А что может быть важнее и полезнее НАДЁЖНОСТИ системы программирования?
В понятие надёжности входит, помимо всего прочего, и НЕВОЗМОЖНОСТЬ совершить синтаксическую ошибку.
Не возможность поиска ошибок, а именно невозможность их совершения!
Цитата:
Допустим, что он сам будет ставить отступы, завершать скобками выражения, ставить точки... Я против самодеятельности программ.
Абсолютная демагогия.
Все мы против самодеятельности программ.
Но есть разница между "самодеятельностью", рекомендуемой подсказкой и выбором из допустимых вариантов.
Первое - зло.
Второе - элемент удобства, эргономики, повышения эффективности.
Третье - обязательное требование для надёжных систем.
Цитата:
Правила хороши, когда их выполняют осмысленно.
Правила хороши, когда их невозможно нарушить.
И это не диктат, а обязательное, повторю, правило для надёжной системы программирования.
Цитата:
Как инструмент для общения и творчества не подходит.
Когда в результате вашего "творчества" заказчик влетает на миллиарды или, ещё того хуже, на человеческие жизни - вы измените своё мнение.
Вы измените его даже в том случае, когда для исправления ошибок в коде придётся переться на другой конец страны. Потому что за свой счёт.
И когнитивная эргономика в деле качественного проектирования (в т.ч. предотвращения ошибок) - дело первостепенное.
Именно поэтому ценна любая попытка упорядочить проектирование/программирование малой ценой освоения нового, специально ориентированного на это языка.
Именно поэтому заслуживает внимания Дракон!
А вы проводите совершенно противоположную политику - не как ответственный разработчик, а как капризный школьник! Вот этот инструмент мне, мол, нравится - буду пихать его всюду, куда смогу дотянуться. А вот эти правила (на которых настаивает автор инструмента и которые нужны для той цели, для которой инструмент и был создан) мне, мол, не нравятся - это диктат и насилие...