DRAKON.SU https://forum.drakon.su/ |
|
01. Просто о Силуэте https://forum.drakon.su/viewtopic.php?f=142&t=4148 |
Страница 1 из 2 |
Автор: | ==== [ Понедельник, 12 Ноябрь, 2012 20:46 ] |
Заголовок сообщения: | 01. Просто о Силуэте |
В схемах широко применяется "линия групповой связи" по ГОСТ 2.721-74 "ОБОЗНАЧЕНИЯ УСЛОВНЫЕ ГРАФИЧЕСКИЕ В СХЕМАХ" таблица 6в. Смотрит http://www.docload.ru/Basesdoc/4/4604/index.htm. Применение линии групповой связи наиболее знакомо по электрическим схемам. В Драконе схема Силуэт построена с использованием линии групповой связи в петле Силуэта, с обозначением входящих линий иконами Ветка и Адрес в разрыве линий в соответствии с таблицей 6в 1.Примечания 3.б). Происходит графическое разветвление (слияние) линий связи в линию групповой связи. Таким образом в Силуэте петля представляет не 1-у связь, а объединение не связанных связей. Соответственно не правомерно применять к Силуэту схемы Ашкрофта-Манна и по той причине, что в Силуэте нет переменной i и связанной с ней логики. Схему Силуэт В.Д. Пароджанов поясняет схемой Ашкрофта-Манна на рисунке 186 в книге "Дружелюбные алгоритмы ...", в чем нет необходимости. По выше указанной причине так же нет необходимости интерпретировать схему Силуэт автоматом. Смотрите тему ""Силуэт", автомат или нет?" http://forum.oberoncore.ru/viewtopic.php?p=17248#p17248. Для примера, нет автомата в программной реализации схемы Силуэт в сообщении http://forum.oberoncore.ru/viewtopic.php?p=75824#p75824. Отказ от схемы Ашкрофта-Манна и использование линии групповой связи значительно упрощает обоснование языка Дракон, упрощает его понимание, соответствует общепринятой терминологии закрепленной в стандартах. Рассуждения В. Жаринова об "автоматности" здесь являются надуманными. |
Автор: | Дмитрий_ВБ [ Вторник, 13 Ноябрь, 2012 09:10 ] |
Заголовок сообщения: | Re: 01. Просто о Силуэте |
Когда говорится, что силуэт может выполнять функции автомата, то имеет смысл говорить не об обратной петле силуэта (которую действительно можно рссматривать как линию групповых связей), а о ветках силуета. Каждая ветка может содержать и достаточно сложную логику, но в частном случае может выполнять функцию обработки одного из состояний автомата. Т.е. понятно, что понятие "силуэт" шире понятия "автомат", но силуэт может выполнять и функцию автомата, если это будет нужно прогрммисту. |
Автор: | Владимир Паронджанов [ Вторник, 13 Ноябрь, 2012 10:19 ] |
Заголовок сообщения: | Re: 01. Просто о Силуэте |
Дмитрий_ВБ писал(а): понятие "силуэт" шире понятия "автомат", но силуэт может выполнять и функцию автомата, если это будет нужно прогрммисту. Согласен
|
Автор: | ==== [ Вторник, 13 Ноябрь, 2012 18:19 ] |
Заголовок сообщения: | Re: 01. Просто о Силуэте |
Владимир Даниелович, я вас так понял: Вы согласны с Дмитрий_ВБ в части атоматности Силуэта и не имеете возражений относительно Цитата: В Драконе схема Силуэт построена с использованием линии групповой связи в петле Силуэта, с обозначением входящих линий иконами Ветка и Адрес в разрыве линий в соответствии с таблицей 6в 1.Примечания 3.б). Происходит графическое разветвление (слияние) линий связи в линию групповой связи. ... Соответственно не правомерно применять к Силуэту схемы Ашкрофта-Манна и по той причине, что в Силуэте нет переменной i и связанной с ней логики. Сам Дмитрий_ВБ пишет, с чем В.Д. Пароджанов соглашается Цитата: силуэт может выполнять и функцию автомата, если это будет нужно прогрммисту. отсюда следует, если программисту нужен автомат то, он составляет Дракон схему Силуэт алгоритма автомата, а если программисту не нужен автомат, он составляет Дракон схему Силуэт алгоритма не являющегося автоматом.Отсюда следует то, что для Силуэта отображение автомата является частным случаем и не является обязательным свойством. Программирование по определению Грисса является целенаправленной деятельностью. Владимир Даниелович, спасибо за поддержку применения ГОСТ 2.721-74 в части трактовки линии групповой связи, как основы схемы Силуэт. |
Автор: | Владислав Жаринов [ Среда, 14 Ноябрь, 2012 10:37 ] |
Заголовок сообщения: | Re: 01. Просто о Силуэте |
Геннадий Николаевич совершенно прав насчёт "петли силуэта". Что получается, если её буквально трактовать по ГОСТ, как раз показано в этой статье (во второй части). Т.е. раз упрощаем сбор/расщепление веток до "гребёнок", как в переключателе - должны заложить условный выбор. Которого там на самом деле нет, а есть БП на метки - что показано на схеме в этом пункте. Всё думал, когда же кто-нибудь на это же укажет... Насчёт автоматности - слишком непределённое замечание, не ясно, к чему претензии. Если к сказанному о необходимости что-то делать с веточными соединителями при трансляции в структурный код - то в той же статье (в начале) по схемам можно понять, почему... Из сказанного Дмитрием_ВБ в этом посте, кстати, тоже... |
Автор: | Владислав Жаринов [ Четверг, 15 Ноябрь, 2012 01:30 ] |
Заголовок сообщения: | Просто о "петле силуэта" :) |
Насчёт интерпретации "петли силуэта" (как частного случая схемного кросса - наряду с шинами ЕСКД-типа), если чуть подробнее и всё-таки принимая во внимание смысл, то можно добавить вот что. 1. Силуэтный кросс - действительно пул связей между веточными соединителями Адрес и Имя. И графическое кодирование его гребёнкой (подразумевающей "точки распайки") - да, вряд ли можно считать правомерным. В остальном же выбор обозначения для этого пула не так прост. Дело в том, что в электрических схемах (вообще материальных систем) все связи в шине (линии групповой связи) или любая их совокупность предполагаются актуальными одновременно. Тогда как силуэт - пример схемы "идеальной системы". И тут смысл в том, что актуальна одновременно одна связь - по которой переходим от "выходного разъёма" (Адрес) на "входной" (Имя) в порядке исполнения (чтения схемы) алгоритма. Вот хорошо бы как-то это представлять...
Тем более, что когда "лист-схема" представляет систему связей материала (понятий) - она, по сути, становится сетью. Т.е. по смыслу ничем не отличается от материальных схем - и также требует явной шины. Каковая и употребляется (по недавно представленному "графитолковому словарю" читатель мог в этом убедиться). 2. Укладка в кросс по правилам "петли силуэта" также подразумевает единое направление ведения связей (по стрелке силуэта). Это приводит к тому, что и связи, по определению направленные "по шампуру", - т.е. представляющие следование, но с разрывом для силуэтной укладки на плоскости - зрительно кодируются как "зацикленные" (из-за общего ШМ-толкования стрелки как указывающей направление "против шампура"). Это и связи по главному маршруту силуэта (всегда следование), и те связи по побочным выходам неконечных веток, которые ведут также не на конечную ветку (следование или зацикливание - определяется из условий, обсуждавшихся здесь: viewtopic.php?p=70770#p70770). Отсюда и необходимость специально обозначать именно те связи от побочных выходов неконечных веток, которые дают цикл: viewtopic.php?p=73652#p73652.
3. О том, шире ли силуэт автомата. Да, конечно - связность по веточным соединителям ведь ограничена только "нарезкой" изоморфного примитива на ветки так, чтобы вход в каждую из них был единственным, и запретом связей иначе, чем на такой вход с выхода ветки. Потому и соединители эти имеют императивную семантику goto - только слегка ограниченную вышесказанным. Так что можно представить в принципе любые структуры управления, реализуемые на машине, описанной фон Нейманом - знай себе выбирай точки деления да раскидывай цепочки следования по веткам... В частности, любые переходы, возможные в таком автокоде, как ФОРТРАН... структуры управления которого (особенно в Ф-66) м.б. весьма далеки как от автоматных, так и вообще от любых, сколько-нибудь упорядочивающих представление о потоке управления (особенно замечательны дополнительные входы, кои м.б. полностью "абстрагированы" от состояния исполнения - не то, что задачные в Аде)... Тут вспомним, что силуэт ведь использовался, в частности, для схемного представления текстовой записи потока управления на одном из диалектов ФОРТРАНа... а м.б. и был создан изначально для этого (из сказанного здесь это неясно)... |
Автор: | Владимир Паронджанов [ Пятница, 23 Ноябрь, 2012 22:16 ] |
Заголовок сообщения: | Re: 01. Просто о Силуэте |
Уважаемый Геннадий Николаевич! Большое спасибо за то, что Вы открыли эту тему. 1. Благодаря этому Дмитрий Владимирович Барановский сформулировал чрезвычайно важное утверждение: Дмитрий_ВБ писал(а): Понятие "силуэт" шире понятия "автомат", но силуэт может выполнять и функцию автомата, если это будет нужно программисту. 2. Хочу напомнить, что ранее Дмитрий Барановский предложил еще один важный термин «Силуэтное программирование». 3. «Силуэтное программирование» — это новая парадигма программирования. Геннадий Тышов писал(а): Сам Дмитрий_ВБ пишет, с чем В.Д. Паронджанов соглашается Цитата: силуэт может выполнять и функцию автомата, если это будет нужно прогрммисту. отсюда следует, если программисту нужен автомат то, он составляет Дракон схему Силуэт алгоритма автомата, а если программисту не нужен автомат, он составляет Дракон схему Силуэт алгоритма не являющегося автоматом.Да, это правильно. Причем ИС Дракон поддерживает обе эти функции силуэта. Геннадий Тышов писал(а): Владимир Даниелович, я вас так понял: Вы не имеете возражений относительно: Цитата: В Драконе схема Силуэт построена с использованием линии групповой связи в петле Силуэта, с обозначением входящих линий иконами Ветка и Адрес. Происходит графическое разветвление (слияние) линий связи в линию групповой связи. Да, я согласен, что рамку силуэт можно трактовать как линию групповой связи. Это безусловно правильно. Но… важно ли это? Мне кажется, что это не очень важно. И вот почему. Соображения о линии групповой связи хорошо известны Вам (и мне), как специалистам по электротехнике, радиоэлектронике и вычислительной технике, которые имеют опыт работы со схемами электрическими принципиальными. Но большинство программистов ничего не знают о линиях групповой связи. И преподаватели курсов программирования вряд ли будут знакомить студентов с «линиями групповой связи». Иное дело метод Ашкрофта-Манны. Это фундаментальный результат, во многом объясняющий суть силуэта как математической конструкции. Геннадий Тышов писал(а): не правомерно применять к Силуэту схемы Ашкрофта-Манна по той причине, что в Силуэте нет переменной i и связанной с ней логики. Не могу с Вами согласиться. Да, действительно, в силуэте нет переменной состояния i. Но! Переменная состояния i легко (и математически строго) преобразуется в имена веток (адресов). Это легко можно проверить.Как это можно проверить? Очень просто. Прочитайте 12 страниц, проверьте все математические выкладки. Сравните их с преобразованиями дракон-схемы силуэт. Эти 12 страниц показывают, каким образом переменная состояния i превращается в стандартные переменные силуэта. Глава 35. Метод Ашкрофта-Манны и алгоритмическая структура «силуэт» стр. 436–448 http://drakon.su/_media/biblioteka/chas ... drakon.pdf |
Автор: | Дмитрий_ВБ [ Пятница, 11 Январь, 2013 15:15 ] |
Заголовок сообщения: | Re: 01. Просто о Силуэте |
Набросал для примера граф переходов (не связанный с каким-либо реальным алгоритмом) Вложение: Вот таблица переходов для этого графа: Код: сост. переходы ------------------------------ Начало 1 1 2, 5, 7, 10, Конец 2 3, 9, Конец 3 4, 8, Конец 4 5, 7, Конец 5 1, 6, 8, 10, Конец 6 1, 3, 7, 9, 10, Конец 7 4, 8, Конец 8 3, 6, 9, Конец 9 2, 5, 10, Конец 10 1, 3, 5, 7, Конец Конец Соответствующий этому графу переходов силуэт выглядит так: Вложение: А теперь вопрос: можно ли считать корректным для языка ДРАКОН приводимый ниже силуэт, если считать, что адрес перехода определяется внутри блока условия переключателей (и поэтому заголовки блока переключателей не нужны) ? Вложение:
|
Автор: | Владислав Жаринов [ Пятница, 11 Январь, 2013 15:47 ] |
Заголовок сообщения: | Re: 01. Просто о Силуэте |
А что Вас смущает? В "исчислении слепышей с межстраничными соединителями веток" фактически корректность переходов по соединителям определяется только выражениями, данными на этом рисунке (прежде всего в надписях между схемами). В тезисах этого, конечно, нет, но есть же здравый смысл... У Вас как раз наглядно видно, что значения "переменной силуэта" - это енум из индексов веток (адресов силуэтных goto)... |
Автор: | Ильченко Эдуард [ Пятница, 11 Январь, 2013 22:59 ] |
Заголовок сообщения: | Re: 01. Просто о Силуэте |
Дмитрий_ВБ писал(а): А теперь вопрос: можно ли считать корректным для языка ДРАКОН приводимый ниже силуэт, если считать, что адрес перехода определяется внутри блока условия переключателей (и поэтому заголовки блока переключателей не нужны) ? Конечно, можно, если проигнорировать стандартный ДРАКОН. Но лучше заголовки оставить. По ним сразу можно понять какая ситуация спровоцировала переход именно по этому адресу. |
Автор: | Дмитрий_ВБ [ Суббота, 12 Январь, 2013 23:28 ] |
Заголовок сообщения: | Re: 01. Просто о Силуэте |
Еще один вопрос: Какой из трех силуэтов визуально воспринимается лучше ? (пояснение: все 3 силуэта отображают логику одной и той же процедуры из файла u_files.pas текущей версии программы dalvjaz2 от 4.12.12; в логике этой процедуры уровень для логической структуры процедуры соответствует отступу в структурированном исходном коде программы) Интересно что 3-й силует фактически выполняет роль просмотрщика текста процедуры, разбитого на следующие друг за другом логические фрагменты, при помощи горизонтальной полосы прокрутки. Вложение: Вложение: Вложение:
|
Автор: | Владислав Жаринов [ Понедельник, 14 Январь, 2013 04:01 ] |
Заголовок сообщения: | Re: 01. Просто о Силуэте |
Третий... А лучше всего воспринимался бы тот четвёртый (которого здесь нету ), где:
* развилки внутри ЦС-ветви шли бы "полуторамерно" (как на алгосхемах в этом примере и как описано здесь: viewtopic.php?p=73919#p73919); * действия при следовании были бы типизированы, что отражалось бы в графике их вершин. Разные организации развилок отражают (хотя бы укрупнённо) подразделение пространства состояний процесса, о чём говорилось, в частности, здесь: viewtopic.php?p=76065#p76065. Действия типизируются, как показано здесь: viewtopic.php?p=77108#p77108. |
Автор: | Владислав Жаринов [ Понедельник, 14 Январь, 2013 05:57 ] |
Заголовок сообщения: | Re: 01. Просто о Силуэте |
Да, вспомнил, к чему ещё мысли Дмитрия. Есть вот такая книга: http://www.ozon.ru/context/detail/id/4611214/. Там автор утверждает, что для сеть-графика есть предел насыщения дугами. После чего каждая новая дуга будет идти уже не так, как думает сочинитель... |
Автор: | Дмитрий_ВБ [ Пятница, 18 Январь, 2013 09:03 ] |
Заголовок сообщения: | Re: 01. Просто о Силуэте |
Привожу свое сообщение, скопированное из темы Пересмотр терминологии ДРАКОН-а, Четверг, 17 Январь, 2013 18:28 ------------------------------------------------------------------------------------------ Википедия: Силуэт - ограниченное контуром отображение чего-либо ... так что здесь слово по смыслу подходит и при этом не является жаргонизмом (ну может совсем чуть-чуть). А что касается всяких "икон", "шампуров", "лиан" - то тут я с Алексеем Донским согласен, ну не технические это термины, да и в быту они используются совсем в других контекстах, чем предлагает Владимир Даниелович. Но вопрос в другом - в перечисленных плюсах и минусах "силуэта", буду называть так, потому что это название на форуме уже устоялось. Да, минусы, связанные с неявным возвратом к программированию с помощью переходов присутствуют, да и если эти переходы обозначены не цифрами, а названиями, то их отследить еще труднее при больших размерах силуэта. Именно поэтому Геннадий Николаевич в своей программе ввел пунктирными линиями связи между адресами веток и ветками. И у Алексея Донского минусов больше чем плюсов. Значит все, пиши пропало ? Но ведь люди почему-то заинтересовались. Я думаю потому, что "силуэт" - это пробный шаг к переходу от вертикального способа просмотра информации к горизонтальному. А саккады (непроизвольные движения глаз) являются главным образом горизонтальными. Так что переход к горизонтальному способу просмотра информации с точки зрения эргономики представляется вполне оправданным - осталось только найти удобную форму отображения информации. Возможно такой формой (в одном из его вариантов) силуэт и является. ----------------------------------------------------------------------- А теперь пример на просмотр текста при помощи горизонтальной полосы прокрутки: Вложение:
|
Автор: | Владислав Жаринов [ Пятница, 18 Январь, 2013 09:54 ] |
Заголовок сообщения: | Re: 01. Просто о Силуэте |
Можно и так... только автоматически возникает конфликт с направлением чтения текста "по-европейски"... Неструктурированный текст мы читаем, как читаем... а вот если ограничиться "информатически строгим" (программой/инструкцией, только в всей полноте)... и довести его структуризацию до уровня ПЕКАНа: viewtopic.php?p=68848#p68848 (а лучше с учётом сказанного здесь: viewtopic.php?p=72538#p72538)... то тогда можно предложить читателю новые правила чтения... Но и это - только гипотеза... подлежащая проверке... |
Автор: | Дмитрий_ВБ [ Пятница, 18 Январь, 2013 10:03 ] |
Заголовок сообщения: | Re: 01. Просто о Силуэте |
Владислав Жаринов писал(а): Можно и так... только автоматически возникает конфликт с направлением чтения текста "по-европейски"... Это проблемы европейцев Цитата: Неструктурированный текст мы читаем, как читаем... а вот если ограничиться "информатически строгим" (программой/инструкцией, только в всей полноте) см. мой пост от 13 января, силуэты 1-3 Цитата: ... и довести его структуризацию до уровня ПЕКАНа: viewtopic.php?p=68848#p68848 (а лучше с учётом сказанного здесь: viewtopic.php?p=72538#p72538)... то тогда можно предложить читателю новые правила чтения... Но и это - только гипотеза... подлежащая проверке... ... а дальше будет видно, если будут свободное время и желание. |
Автор: | Владислав Жаринов [ Пятница, 18 Январь, 2013 10:08 ] |
Заголовок сообщения: | Re: 01. Просто о Силуэте |
Так там именно программный текст представлен... |
Автор: | Дмитрий_ВБ [ Четверг, 24 Январь, 2013 11:41 ] |
Заголовок сообщения: | Re: 01. Просто о Силуэте |
Возвращаяюсь к моим постам от 13 и 18 января: viewtopic.php?f=62&t=4148&p=77304#p77080 viewtopic.php?f=62&t=4148&p=77304#p77297 Из них следуют следующие вопросы: 1) какая плотность представления информации на визуальной схеме является оптимальной ? под плотностью информации на схеме я имею в виду отношение площади информационных блоков схемы к площади всего пространства схемы; 2) какая степень детализации алгоритма является оптимальной для визуальной схемы ? 3) должна ли визуальная схема по высоте обязательно целиком помещаться в окне просмотра ? (в контексте перехода от вертикального просмотра информации к горизонтальному - кстати, на сайтах, посвященных веб-программированию, можно встретить такие вот цитаты: I think there a lot of unexplored design ideas available with the horizontal scroll layout.) Ну и по поводу соседней темы, о помощи Президенту: Цитата: Владимир Паронджанов писал(а): Ведь это не просто демонстрация дракон-редактора. Идея состоит в том, чтобы заметно преобразовать систему государственной службы. По сравнению с этим идея перехода от вертикального просмотра информации к горизонтальному выглядит совсем даже нереволюционно (мало ли что они там еще придумют, это все дизайнерское баловство, а в будущем может будут по диагонали текст просматривать) |
Автор: | Владимир Паронджанов [ Четверг, 24 Январь, 2013 14:12 ] |
Заголовок сообщения: | Re: 01. Просто о Силуэте |
Дмитрий_ВБ писал(а): понятие "силуэт" шире понятия "автомат", но силуэт может выполнять и функцию автомата, если это будет нужно программисту. Дмитрий Владимирович, это исключительно важное утверждение. К сожалению, оно слишком краткое. Надо тщательно и всесторонне осветить вопрос. Потому что (для многих) это сложная и не до конца ясная проблема. Желательно провести глубокое исследование вопроса и детально выявить отличие понятий СИЛУЭТ и АВТОМАТ. Наилучший способ для этого — открыть специальную тему под названием «Силуэт и автомат. В чем разница?». Было бы замечательно, если бы Вы согласились стать автором темы и исследователем этой удивительно интересной проблемы, которую именно Вы открыли и впервые сформулировали. |
Автор: | Дмитрий Дагаев [ Четверг, 24 Январь, 2013 14:52 ] |
Заголовок сообщения: | Re: 01. Просто о Силуэте |
Владимир Паронджанов писал(а): Наилучший способ для этого — открыть специальную тему под названием «Силуэт и автомат. В чем разница?». Уже было: http://forum.oberoncore.ru/viewtopic.php?f=62&t=1085 Но автоматом не обойдемся, нужно рассматривать ограниченные сети Петри. |
Страница 1 из 2 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |