DRAKON.SU
https://forum.drakon.su/

ДРАКОН: вводный курс
https://forum.drakon.su/viewtopic.php?f=94&t=4364
Страница 1 из 2

Автор:  Степан Митькин [ Суббота, 25 Май, 2013 19:32 ]
Заголовок сообщения:  ДРАКОН: вводный курс

По желаниям трудящихся нарисовал агитку про язык ДРАКОН.
Требуются критические замечания.
http://www.slideshare.net/stepan_mitkin/ss-21902495

Автор:  Александр Ильин [ Суббота, 25 Май, 2013 21:27 ]
Заголовок сообщения:  Re: ДРАКОН: вводный курс

Степан Митькин писал(а):
Требуются критические замечания.
Слайды 9 и 10 не различаются.

Слово "царский" кажется неуместным, особенно на слайде 39.

На слайде 39, на мой взгляд, достаточно двух пунктов: 1. Как называется задача, 2. Из каких частей она состоит.

Общее впечатление - отличная презентация! Кратко и наглядно.

Автор:  ilovb [ Суббота, 25 Май, 2013 22:21 ]
Заголовок сообщения:  Re: ДРАКОН: вводный курс

Присоединяюсь к похвалам. :)

Автор:  Степан Митькин [ Суббота, 25 Май, 2013 23:14 ]
Заголовок сообщения:  Re: ДРАКОН: вводный курс

Спасибо!
Поправил там кое-что.

Исходник
Вложение:
Комментарий к файлу: Исходник
drakon_basics_rus.drn [42 КБ]
Скачиваний: 606


PDF-ка
Вложение:
drakon_basics_rus.pdf [975.1 КБ]
Скачиваний: 455

Автор:  adva [ Понедельник, 27 Май, 2013 14:47 ]
Заголовок сообщения:  Re: ДРАКОН: вводный курс

Очень неплохо для ознакомления.

55 кадр вызывает сомнение насколько правильны такие условия варианта именно для ДРАКОНа, т.к. по сути многие из них, могут быть истинными одновременно. Или в ДРАКОН тоже принят порядок выполнения вариантов?

А в 64 разве может быть подобный выход из цикла?

Автор:  Степан Митькин [ Понедельник, 27 Май, 2013 17:18 ]
Заголовок сообщения:  Re: ДРАКОН: вводный курс

adva писал(а):
55 кадр вызывает сомнение насколько правильны такие условия варианта именно для ДРАКОНа, т.к. по сути многие из них, могут быть истинными одновременно.

Спасибо! Сию минуту исправим-с.
adva писал(а):
А в 64 разве может быть подобный выход из цикла?

Почему нет? Это же выход, а не вход.
Вот аналог на C#
Код:
foreach (var cake in cakes)
{
    Bite(cake);
    if (Full()) break;
}

Запрет на эту конструкцию в ДРАКОНе не имеет смысла.
Так как тогда он станет менее выразительным, чем текстовые языки.

Автор:  Madzi [ Понедельник, 27 Май, 2013 21:09 ]
Заголовок сообщения:  Re: ДРАКОН: вводный курс

Степан Митькин писал(а):
Почему нет? Это же выход, а не вход.
Вот аналог на C#
Код:
foreach (var cake in cakes)
{
    Bite(cake);
    if (Full()) break;
}

Запрет на эту конструкцию в ДРАКОНе не имеет смысла.
Так как тогда он станет менее выразительным, чем текстовые языки.

Вроде как уже не один раз обсуждали подобную конструкцию.
Если вы пишите
Код:
foreach (...) {...}

то читающий, считает (надеется), что проход выполняется по всем элементам (foreach = для всех). В противном случае вы просто не умеете писать цикл линейного поиска.

Автор:  Илья Ермаков [ Понедельник, 27 Май, 2013 22:07 ]
Заголовок сообщения:  Re: ДРАКОН: вводный курс

Вообще, конечно, использовать ДЛЯ и выпрыгивать из середины - действительно, обман :)

Автор:  Владимир Паронджанов [ Среда, 29 Май, 2013 18:32 ]
Заголовок сообщения:  Re: ДРАКОН: вводный курс

Степан Борисович, Вы сделали хорошую презентацию.

Взгляните Вашим опытным глазом на Презентацию Антона Анцелевича (по ДРАКОНу).
viewtopic.php?p=80466#p80466

Может быть, там найдется что-нибудь полезное, как Вы считаете?

Автор:  Степан Митькин [ Суббота, 01 Июнь, 2013 16:11 ]
Заголовок сообщения:  Re: ДРАКОН: вводный курс

Выложил часть 3 вводного курса
http://www.slideshare.net/stepan_mitkin/drakon-advanced-rus
Простые рецепты красоты для ДРАКОН-схем.
Ритм
Метр
Общая судьба

Прошу всех ознакомиться и высказать свои замечания.

Автор:  Владимир Паронджанов [ Суббота, 01 Июнь, 2013 18:53 ]
Заголовок сообщения:  Re: ДРАКОН: вводный курс

Часть 1
Цитата:
По желаниям трудящихся нарисовал ... про язык ДРАКОН.
http://www.slideshare.net/stepan_mitkin/ss-21902495


Часть 3
Цитата:
Выложил часть 3 вводного курса
http://www.slideshare.net/stepan_mitkin ... vanced-rus


А где Часть 2? Или я что-то пропустил?

Автор:  Степан Митькин [ Суббота, 01 Июнь, 2013 20:47 ]
Заголовок сообщения:  Re: ДРАКОН: вводный курс

Владимир Паронджанов писал(а):
А где Часть 2? Или я что-то пропустил?

Часть 2 пока не готова. Скоро будет...

Автор:  Степан Митькин [ Воскресенье, 02 Июнь, 2013 20:29 ]
Заголовок сообщения:  Re: ДРАКОН: вводный курс

"Поступила в продажу" часть 2 вводного курса.

Вот они, все вместе:
Часть 1
Часть 2
Часть 3

Прошу конструктивно критиковать!

Автор:  Ильченко Эдуард [ Воскресенье, 02 Июнь, 2013 23:20 ]
Заголовок сообщения:  Re: ДРАКОН: вводный курс

Степан Митькин писал(а):
"Поступила в продажу" часть 2 вводного курса.

Если не ошибаюсь, подобные конструкции
Вложение:
s.png
s.png [ 62.17 КБ | Просмотров: 18529 ]
в языке ДРАКОН отсутствуют.

Автор:  Степан Митькин [ Понедельник, 03 Июнь, 2013 09:04 ]
Заголовок сообщения:  Re: ДРАКОН: вводный курс

Ильченко Эдуард писал(а):
Если не ошибаюсь, подобные конструкции в языке ДРАКОН отсутствуют.

Какое-то время назад велись ожесточённые споры о том, как изображать параллельные алгоритмы в ДРАКОНе.
Вот некоторые отголоски этих споров: viewtopic.php?p=61683
В конечном итоге Владимир Даниелович придумал вот что:
Вложение:
parallel_new.png
parallel_new.png [ 4.45 КБ | Просмотров: 18515 ]

Автор:  Ильченко Эдуард [ Понедельник, 03 Июнь, 2013 11:53 ]
Заголовок сообщения:  Re: ДРАКОН: вводный курс

Степан Митькин писал(а):
Вот некоторые отголоски этих споров: viewtopic.php?p=61683
В конечном итоге Владимир Даниелович придумал вот что:

По указанной Вами ссылке подобных конструкций не обнаружил.

Автор:  Степан Митькин [ Понедельник, 03 Июнь, 2013 13:39 ]
Заголовок сообщения:  Re: ДРАКОН: вводный курс

Ильченко Эдуард писал(а):
По указанной Вами ссылке подобных конструкций не обнаружил.

И вправду нет их там, в той ветке...
Но обвинения в шарлатанстве и самозванстве я отвергаю. :)

В любом случае, конструкция хороша.
1. Простая и понятная, без мишуры. В духе ДРАКОНа.
2. Шампур не ломает.
3. Двойная линия только в одном месте. Значит, разветвление и слияние не перепутаешь.

Да, есть ограничения по топологии. Но это хороший компромисс.
Для особо изощрённых случаев зависимости параллельных задач
можно взять сети Петри или сетевой график.

Автор:  Александр Ильин [ Понедельник, 03 Июнь, 2013 13:53 ]
Заголовок сообщения:  Re: ДРАКОН: вводный курс

Степан Митькин писал(а):
Ильченко Эдуард писал(а):
По указанной Вами ссылке подобных конструкций не обнаружил.
И вправду нет их там, в той ветке...
А это разве не то?
download/file.php?id=2324&mode=view

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

Автор:  Степан Митькин [ Понедельник, 03 Июнь, 2013 15:54 ]
Заголовок сообщения:  Re: ДРАКОН: вводный курс

Александр Ильин писал(а):
Только там для сведения параллельных процессов необходимо использовать треугольник

Треугольник плюс несколько изломов линий.

Это зрительный шум, избыточная сложность.
Поэтому Владимир Даниелович и предложил от этого отказаться.

Автор:  Владимир Паронджанов [ Понедельник, 03 Июнь, 2013 17:25 ]
Заголовок сообщения:  Re: ДРАКОН: вводный курс

Мне нравится предложение Степана Митькина.
Объясню почему.

1. Строго говоря, я раньше такого (в письменном виде) не предлагал.
Но я, как говорится, подумывал об этом. Но вслух не произносил.

2. Для меня остались почти одинаковыми по ценности два варианта:

— жирные линии как в UML (по подсказке Эдуарда Ильченко);

— параллельные линии (как в ГОСТе на блок-схемы), которые реализовал Геннадий Тышов.

3. Особенно я стал думать об этом, при анализе литовских (медицинских) учебников. Там проблема была простой. В большинстве случаев в бригаде скорой помощи нужны только два параллельных алгоритма. Или как они сами пишут "НУЖНЫ ДВА ЧЕЛОВЕКА".
Именно такой случай они и рассматривают.

4. Как же литовцы решили эту "параллельную" проблему?
Не буду говорить как, но решили они ее не лучшим образом.
Поэтому я подумал, что решать ее нужно именно так, как предложил Степан Митькин.
В точности так.

Страница 1 из 2 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/