DRAKON.SU

Текущее время: Четверг, 25 Апрель, 2024 01:43

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 36 ]  На страницу Пред.  1, 2
Автор Сообщение
 Заголовок сообщения: Re: Псевдокод вместо ДРАКОН-схем
СообщениеДобавлено: Вторник, 14 Июль, 2009 06:25 

Зарегистрирован: Пятница, 24 Апрель, 2009 16:28
Сообщения: 66
Откуда: Москва
Илья Ермаков писал(а):
Попробуйте переписать на псевдокоде конечно-автоматную логику. Не устану повторять - вычислять и управлять - это не одно и то же. Это существенно разные классы алгоритмов.
Чего там пробовать – выбор в цикле. Или таблица. В первом случае разница с Драконом в том, что варианты в тексте идут последовательно вниз, а в Драконе – вбок. Причем каждая ветка выбора в псевдокоде короче ветки Дракона.

А про существенно разные классы алгоритмов – читайте Дейкстру. На примере задачи "ОБНОВЛЕНИЕ ПОСЛЕДОВАТЕЛЬНОГО ФАЙЛА":
Цитата:
Наконец, эта задача позволяет нам рассеять некоторые сомнения, вызванные тем, что коммерческие программы являются чем-то особенным. (Если уж говорить о чем-то особом, то, скорее, о характере коммерческих программистов... )
Подставьте вместо " коммерческих" слова "управленческих", "ракетных", "встроенных" и т. п., и будет Вам счастие.
А вообще, пример – в студию.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Псевдокод вместо ДРАКОН-схем
СообщениеДобавлено: Вторник, 14 Июль, 2009 11:01 

Зарегистрирован: Четверг, 24 Апрель, 2008 19:41
Сообщения: 31
Peter Almazov писал(а):
Flavy писал(а):
Спасибо за ссылку :D :D Убедили!!! :lol: :lol:
Брукс говорит тоже самое что и Паронджанов:
Во-первых, Брукс говорит о несостоятельности блок-схем.
Во-вторых, если у Вас есть общий план программы в виде блок-схемы на одну страницу, перепишите ее на псевдокоде, получится примерно в три раза короче. И нагляднее. Собственно, с этого и началась тема. Я настоятельно рекомендую Вам взять и лично проделать эту процедуру.
Я предлагаю Вам другой опыт: нарисуйте маршрут на карте а потом опишите его на словах :D
Тут уже многократно говорилось - к чему Вы привыкли то и быстрее. Читать карту надо уметь, и иметь привычку к этому, а иначе словесное описание будет в три раза короче.
А насчет Брукс vs Паронджанов - и тот и другой говорят одно и то же. "Классические" блок схемы это плохо но рациональное зерно в них есть. Брукс остановился а Паронджанов пошел дальше. Короче наш лозунг: больше инструментов хороших и разных! А то, мальчикам нравится псевдокод а девочкам диаграммы :lol: а некоторым обратная польская нотация (форт).


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Псевдокод вместо ДРАКОН-схем
СообщениеДобавлено: Вторник, 14 Июль, 2009 12:16 
Аватара пользователя

Зарегистрирован: Суббота, 29 Март, 2008 19:27
Сообщения: 1098
Откуда: Россия, Чебоксары
Кстати, про Форт... Хоть я и поставил смайлики в предыдущем замечании про Форт, но на самом деле вопрос интересный!
Если худо-бедно, но в классическом процедурном подходе иерархия уровней и программных единиц прослеживается чётко, то в Форте она существенно размазана. Есть ли какое теоретическое исследование на сей счёт, я не знаю, но - интересно.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Псевдокод вместо ДРАКОН-схем
СообщениеДобавлено: Вторник, 14 Июль, 2009 15:23 

Зарегистрирован: Пятница, 24 Апрель, 2009 16:28
Сообщения: 66
Откуда: Москва
Flavy писал(а):
Брукс остановился а Паронджанов пошел дальше.
Брукс остановился потому, что этот путь ведет в никуда. А Паронджанов пошел по нему дальше, согласен.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Псевдокод вместо ДРАКОН-схем
СообщениеДобавлено: Четверг, 16 Июль, 2009 00:11 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 631
Откуда: Россия, Орёл
Итак, конечные автоматы тоже в псевдокоде. Занятное... предложение.

Шалыто, например, тоже идёт "тупиковым путём", раз рисует диаграммы состояний? Придумал какую-то SWITCH-технологию, когда есть обычный switch.

Т.е. предлагается затаскивать любые нелинейные структуры в линейное представление, только потому, что N лет назад были только текстовые терминалы.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Псевдокод вместо ДРАКОН-схем
СообщениеДобавлено: Четверг, 16 Июль, 2009 06:01 

Зарегистрирован: Пятница, 24 Апрель, 2009 16:28
Сообщения: 66
Откуда: Москва
Итак, что мы имеем.
Сначала Илья Ермаков предлагает
Илья Ермаков писал(а):
Попробуйте переписать на псевдокоде конечно-автоматную логику.
Ему дается конкретный ответ, как это сделать. Причем псевдокод тут вообще не причем, так обычно и реализуются автоматы на неэкзотических языках программирования.

Далее Илья Ермаков неадекватен
Илья Ермаков писал(а):
Т.е. предлагается затаскивать любые нелинейные структуры в линейное представление, только потому, что N лет назад были только текстовые терминалы.
Нет, не предлагается. Предлагается понять, что если изначально дана диагамма состояний конечного автомата, то это и есть практически идеальная программа. К сожалению, ее нельзя оставить в таком виде и приходится портить - приводить к виду, пригодному для записи на языке программирования. Один из вариантов решения – это выбор в цикле. Плохо ли это? Да, плохо и ненаглядно. Но при переводе диагаммы состояний на Дракон вы точно также испортите ее. Только ветки выбора на рисунке пойдут параллельно, а не последовательно, как в тексте. В данном случае у Дракона нет ни малейших преимуществ.

Что касается Шалыто, то он просто шизанулся на автоматах, считает себя молотком, а весь мир кажется ему гвоздями.


Последний раз редактировалось Peter Almazov Пятница, 25 Сентябрь, 2009 13:16, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Псевдокод вместо ДРАКОН-схем
СообщениеДобавлено: Четверг, 16 Июль, 2009 10:13 

Зарегистрирован: Понедельник, 30 Июль, 2007 10:53
Сообщения: 112
Откуда: Беларусь, Минск
Изначально, представленный графом КА - это просто переходы. Большая часть семантики описывается отдельно. В при записи КА на Драконе он перестаёт быть только переходами, поэтому при сравнении с классическим представлением КА можно говорить о "порче". Но даже в этом случае и на основе этого утверждения некорректно говорить, что на псевдокоде нагляднее. Это Вам Илья и заметил.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Псевдокод вместо ДРАКОН-схем
СообщениеДобавлено: Четверг, 16 Июль, 2009 11:02 

Зарегистрирован: Пятница, 24 Апрель, 2009 16:28
Сообщения: 66
Откуда: Москва
Вы не понимаете, о чем речь. Семантика здесь вообще не причем. "При записи КА на Драконе" Вы граф портите и разрушаете исходную наглядность диаграммы переходов. Самая замысловатая диаграмма будет сведена к конструкции "выбор в цикле". Мощность Дракона и псевдокода в данном случае абсолютно одинакова. Как говорил тов. Сталин, "оба хуже".
Поэтому мне непонятно когда Илья Ермаков восторгается возможностями Дракона для программирования КА.
Причем я даже не писал, что "на псевдокоде нагляднее", это Вы придумали. Я писал, что короче. А наглядность здесь дело вкуса, как упоминалось, девочки считают блок-схемы наглядными.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Псевдокод вместо ДРАКОН-схем
СообщениеДобавлено: Четверг, 16 Июль, 2009 16:54 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 631
Откуда: Россия, Орёл
Peter Almazov писал(а):
Итак, что мы имеем.
Сначала Илья Ермаков предлагает
Илья Ермаков писал(а):
Попробуйте переписать на псевдокоде конечно-автоматную логику.
Ему дается конкретный ответ, как это сделать. Причем псевдокод тут вообще не причем, так обычно и реализуются автоматы на неэкзотических языках программирования.

Спасибо, я переписал этих автоматов весьма и весьма. И именно поэтому махаться с текстом для управляющей логики желания осталось мало.

Цитата:
Нет, не предлагается. Предлагается понять, что если изначально дана диагамма состояний конечного автомата, то это и есть практически идеальная программа. К сожалению, ее нельзя оставить в таком виде и приходится портить - приводить к виду, пригодному для записи на языке программирования.

Если некое представление является идеальным для задачи - то нормальный подход - брать и делать инструментарий под это представление. CASE, хотя я не очень люблю сам этот термин; но другого нет...
Такова моя (практическая) позиция по этому вопросу.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Псевдокод вместо ДРАКОН-схем
СообщениеДобавлено: Четверг, 16 Июль, 2009 16:57 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 631
Откуда: Россия, Орёл
Peter Almazov писал(а):
Что касается Шалыто, то он просто шизанулся на автоматах, считает себя молотком, а весь мир кажется ему гвоздями.


Лично я не в восторге от SWITCH-технологии, но она - одна из семейства, которое кажется перспективным. Дракон вписывается в эту автоматную линейку, но при этом позволяет бесшовно совместить и алгоритмическую, и автоматную логику.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Псевдокод вместо ДРАКОН-схем
СообщениеДобавлено: Четверг, 16 Июль, 2009 17:04 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 631
Откуда: Россия, Орёл
На самом деле, тут в дискуссии неявно идёт вот какой вопрос - не о том, как программа выглядит, а о том, как она представлена технически.

Т.е. хорошо или нет, что вместо текста мы имеем некую графовую структуру (и, в общем, почти наверняка - так проще - двоичный формат)?
Я исхожу из того, что иметь двоичные структуры вместо текстовых - это хорошо. И просто, можно сказать, сплю и вижу, когда программа будет храниться даже не в виде составного документа, как в Блэкбоксе, а прямо в виде семантического графа. Текстовый формат - стопор для инструментальщика.
Поэтому Дракон меня устраивает, как жёсткая структура представления (в отличие от других виз. языков, которые являются "векторной графикой", а не строгой по топологии структурой).

Возможно, Пётр считает, что любой отказ от текстового формата нежелателен. Отсюда и непонимание, "чего ж вы в драконе такого нашли, чтоб на такое пойти"...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Псевдокод вместо ДРАКОН-схем
СообщениеДобавлено: Четверг, 16 Июль, 2009 20:02 

Зарегистрирован: Вторник, 29 Ноябрь, 2005 21:41
Сообщения: 53
Alexey_Donskoy писал(а):
Если худо-бедно, но в классическом процедурном подходе иерархия уровней и программных единиц прослеживается чётко, то в Форте она существенно размазана. Есть ли какое теоретическое исследование на сей счёт, я не знаю, но - интересно.
Про него не так много можно сказать, поскольку мал. В Форте иерархия не определена. Есть базовый набор программных единиц, над которым достраиваются модули расширений.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Псевдокод вместо ДРАКОН-схем
СообщениеДобавлено: Четверг, 16 Июль, 2009 21:48 

Зарегистрирован: Пятница, 24 Апрель, 2009 16:28
Сообщения: 66
Откуда: Москва
Илья Ермаков писал(а):
Возможно, Пётр считает, что любой отказ от текстового формата нежелателен.
Нет, я так не считаю. Наоборот, можно сказать, нахожусь в постоянном поиске хорошей графической нотации. К сожалению, пока не вижу ничего хорошего. Вполне возможно, что из за узости кругозора.
Единственное исключение - ARIS.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Псевдокод вместо ДРАКОН-схем
СообщениеДобавлено: Пятница, 17 Июль, 2009 11:06 

Зарегистрирован: Понедельник, 30 Июль, 2007 10:53
Сообщения: 112
Откуда: Беларусь, Минск
Peter Almazov писал(а):
Вы не понимаете, о чем речь. Семантика здесь вообще не причем. "При записи КА на Драконе" Вы граф портите и разрушаете исходную наглядность диаграммы переходов. Самая замысловатая диаграмма будет сведена к конструкции "выбор в цикле". Мощность Дракона и псевдокода в данном случае абсолютно одинакова. Как говорил тов. Сталин, "оба хуже".
Граф не портится. Он выбрасывается. Вместо него берутся действия (и переходы, которые были на графе).

Peter Almazov писал(а):
Причем я даже не писал, что "на псевдокоде нагляднее", это Вы придумали.
Peter Almazov писал(а):
Во-вторых, если у Вас есть общий план программы в виде блок-схемы на одну страницу, перепишите ее на псевдокоде, получится примерно в три раза короче. И нагляднее.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Псевдокод вместо ДРАКОН-схем
СообщениеДобавлено: Пятница, 17 Июль, 2009 11:39 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 631
Откуда: Россия, Орёл
Valery Solovey писал(а):
Граф не портится. Он выбрасывается. Вместо него берутся действия (и переходы, которые были на графе).

Да. Граф управления - двойственный, в известном отношении, к графу состояний.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Псевдокод вместо ДРАКОН-схем
СообщениеДобавлено: Пятница, 17 Июль, 2009 15:07 

Зарегистрирован: Пятница, 24 Апрель, 2009 16:28
Сообщения: 66
Откуда: Москва
Valery Solovey писал(а):
Peter Almazov писал(а):
Причем я даже не писал, что "на псевдокоде нагляднее", это Вы придумали.
Peter Almazov писал(а):
Во-вторых, если у Вас есть общий план программы в виде блок-схемы на одну страницу, перепишите ее на псевдокоде, получится примерно в три раза короче. И нагляднее.
Это не относилось к КА. Я различаю эти случаи. В случае с КА при переходе к текстовой записи (и к Дракону тоже!) наглядность сильно теряется. Поэтому я совершенно сознательно про нее не говорил.
Peter Almazov писал(а):
Причем каждая ветка выбора в псевдокоде короче ветки Дракона.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 36 ]  На страницу Пред.  1, 2

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 29


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
cron
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2008-2024, участники конференции «DRAKON.SU», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB