DRAKON.SU

Текущее время: Суббота, 27 Апрель, 2024 09:00

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




Начать новую тему Ответить на тему  [ Сообщений: 172 ]  На страницу Пред.  1, 2, 3, 4, 5, 6 ... 9  След.
Автор Сообщение
СообщениеДобавлено: Воскресенье, 12 Май, 2013 16:58 

Зарегистрирован: Воскресенье, 24 Февраль, 2008 15:32
Сообщения: 5851
Откуда: Москва
Ярослав Романченко писал(а):
Так если поудалять все надписи в результирующем коде вообще ничего не будет видно :)


Ярослав Михайлович, Вы совершенно правы.
Без надписей (взятых из икон дракон-схемы) в результирующем коде вообще ничего не будет видно. Это действительно так. И я с Вами согласен.

Но (в данном случае) задача состоит не в том, чтобы этот "усеченный" код сделать понятным.

Задача в другом. А в чем же?

В том, что этот " усеченный" код является математически строгим и точным (хотя и не полным).

Причем этот математически строгий код можно "довести до ума" (превратить в полноценный код) с помощью относительно простой операции. А именно: с помощью последовательного (друг за другом) программирования только одной иконы.
Цитата:
Всё, что нужно — аккуратно запрограммировать ОДНУ икону. Только ОДНУ! Когда будем программировать другую — про предыдущую уже можно не вспоминать. Ефанов


Именно так учит нас работать Сергей Дмитриевич Ефанов в своих 12 тезисах.


Последний раз редактировалось Владимир Паронджанов Воскресенье, 12 Май, 2013 17:08, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 12 Май, 2013 17:04 

Зарегистрирован: Воскресенье, 24 Февраль, 2008 15:32
Сообщения: 5851
Откуда: Москва
Для удобства повторно выкладываю здесь

ДВЕНАДЦАТЬ ТЕЗИСОВ СЕРГЕЯ ЕФАНОВА

viewtopic.php?p=73860#p73860
Эти 12 тезисов сформулировал я на основании статьи Сергея Ефанова.
Я старался очень точно передать основной смысл статьи. Но я, конечно, мог допустить неточности.

Если кто-нибудь обнаружит неточности, просьба указать на них и подсказать, что именно надо исправить.
Я обязательно исправлю.

Цитата:
Тезис 1. Написание программы на языке ДРАКОН распадается на два этапа:
— разработка алгоритма,
— собственно программирование.

Тезис 2. Алгоритм проектируют (рисуют) в графической форме, то есть составляют из графических элементов. Это гораздо легче. Не требуется такое сосредоточение, как обычно.

Тезис 3. Так как нарисованный алгоритм очень понятен — работу можно спокойно прервать в любой момент. Потом легко вернуться к её продолжению.

Тезис 4. Когда весь алгоритм нарисован и «отлизан», переходим к программированию.

Тезис 5. При написании текста программы алгоритм уже не надо держать в голове, как это делается при обычном программировании.

Тезис 6. Управляющие операторы программы писать не нужно, потому что они формируются автоматически при трансляции алгоритма.

Тезис 7. В чём теперь заключается программирование? В том, что для каждой иконы нужно написать код, который выполнит то, что написано на этой иконе. Как правило это 1 строчка.

        На высоких уровнях иерархии проекта — это может быть вызов одной функции, или одного метода класса (заметим, что все функции и классы тоже нарисованы на ДРАКОНЕ). На нижнем уровне — это может быть изменение одного бита.

Тезис 8. В чём сложность программирования? В сложных взаимосвязях между частями программы.

Тезис 9. Сложные взаимосвязи между частями программы полностью показаны в дракон-схеме алгоритма.

Тезис 10. Поэтому на этапе программирования икон об этих сложностях думать уже не надо. (Совсем. Вообще. Никак. Не надо, и всё тут!)

Тезис 11. Всё, что нужно — аккуратно запрограммировать ОДНУ икону. Только ОДНУ! Когда будем программировать другую — про предыдущую уже можно не вспоминать.

Тезис 12. Программирование на этом этапе превратилось в чисто техническую процедуру. Несложную.


Последний раз редактировалось Владимир Паронджанов Воскресенье, 12 Май, 2013 17:15, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 12 Май, 2013 17:11 

Зарегистрирован: Понедельник, 09 Ноябрь, 2009 17:29
Сообщения: 904
Откуда: Россия, Питер
Владимир Паронджанов писал(а):
Но (в данном случае) задача состоит не в том, чтобы этот "усеченный" код сделать понятным.

Задача в другом. А в чем же?

В том, что этот " усеченный" код является математически строгим и точным (хотя и не полным).

Причем этот математически строгий код ...

Если слепыш математически строг и код, полученный из него, математически строг, то, вероятно, Вас не затруднит вопрос
Ильченко Эдуард писал(а):
Как убедиться в адекватности полученного текста оригинальной дракон-схеме?

Хотелось бы получить ответ.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 12 Май, 2013 17:21 

Зарегистрирован: Воскресенье, 24 Февраль, 2008 15:32
Сообщения: 5851
Откуда: Москва
Цитата:
Если слепыш математически строг и код, полученный из него, математически строг


Да, код математически строг, но не полон. Он будет строгим и полным, когда будет закончено программирование всех икон.

Вот тогда (когда будет закончено программирование), можно искать ответ на интересующий Вас вопрос.

========================

Мне кажется, что Вы невнимательно прочитали мой текст:
Цитата:
В том, что этот " усеченный" код является математически строгим и точным (хотя и не полным).

Причем этот математически строгий код можно "довести до ума" (превратить в полноценный код) с помощью относительно простой операции. А именно: с помощью последовательного (друг за другом) программирования только одной иконы.
Здесь ясно сказано, что код "усеченный".

Какой смысл ставить вопрос об адекватности "усеченного" кода?
Мне кажется, это некорректная постановка вопроса.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 12 Май, 2013 17:36 
Аватара пользователя

Зарегистрирован: Суббота, 29 Март, 2008 19:27
Сообщения: 1098
Откуда: Россия, Чебоксары
Владимир Паронджанов писал(а):
Надо разграничить две проблемы:
ИМХО, такое разграничение не имеет ни теоретического, ни практического смысла.

Цитата:
Я хочу — с помощью участников форума — доказать (или опровергнуть) тезис о том, что слепыш языка ДРАКОН почти полностью решают проблему управления и декомпозиции
Задача декомпозиции осложняется тем, что она имеет принципиально иерархические свойства, которые ДРАКОН-подобная нотация не поддерживает должным образом.

Цитата:
превращая сложную проблему императивного программирования в относително простую проблему проектирование и кодирование линейных участков программы.
Нормальный проектировщик, импользуя императивное программирование, оперирует ЗАДАЧАМИ (подзадачами и т.д.).
В так называемых линейных участках схемы большого проекта подзадачи, как правило, сами по себе комплексные и подразумевают дальнейшее раскрытие (уточнение, детализацию). Главное, чтобы грамотное проектирование позволило эти подзадачи локализовать, минимизировав их связи с остальной схемой (сведя до одного входа и одного выхода в случае линейного блока).

Проектировщику приходится решать и такой нетривиальный вопрос: до какой степени детализировать тот или иной участок на схеме текущего рассматриваемого уровня.

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

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

Но эти рассуждения тривиальны (надеюсь).

А вот теперь прошу ВНИМАНИЯ!

Основные задачи, которые решает проектировщик, вовсе не относятся к поставленным Вами проблемам управления и кодирования линейных участков!

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

Я не говорю (пока), что для этого нужен специальный ЯЗЫК. Но специфический инструмент визуализации и редактирования НАД используемым языком - необходим.

В связи с этими соображениями поставленные Вами вопросы не представляются актуальными.

А с теоретической точки зрения напомню про тему "Что же такое алгоритм?", где показывается, что само понятие алгоритма основательно подвисает в воздухе в зависимости от конкретных особенностей исполнителя.

С практической же точки зрения объём алгоритмического слоя в проекте, как неоднократно указывали здесь, редко превышает 10% :wink:

Обратите, пожалуйста, внимание. Я пишу всё это не для того, чтобы просто возразить и указать на какие-то недостатки.
Я хочу, чтобы усилия и Ваши, и других участников форума были направлены на более актуальные задачи (в том числе теоретические)!


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 12 Май, 2013 19:40 
Аватара пользователя

Зарегистрирован: Пятница, 11 Май, 2007 21:57
Сообщения: 234
Откуда: Украина, Киев
Alexey_Donskoy писал(а):
Я хочу, чтобы усилия и Ваши, и других участников форума были направлены на более актуальные задачи (в том числе теоретические)!
Поддерживаю!


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 12 Май, 2013 19:51 

Зарегистрирован: Понедельник, 09 Ноябрь, 2009 17:29
Сообщения: 904
Откуда: Россия, Питер
Владимир Паронджанов писал(а):
Какой смысл ставить вопрос об адекватности "усеченного" кода?
Мне кажется, это некорректная постановка вопроса.

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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 12 Май, 2013 20:05 

Зарегистрирован: Воскресенье, 01 Ноябрь, 2009 05:13
Сообщения: 1443
Ну да. :) Видимо, это та же разница, что между схемами Янова и схемами Лаврова... на вторых есть передача не только управления, но и предметов труда (структур данных в частном случае). Вот в связи с предметами в основном и возникают вещи, перечисленные Донским...


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 12 Май, 2013 20:38 

Зарегистрирован: Воскресенье, 24 Февраль, 2008 15:32
Сообщения: 5851
Откуда: Москва
Ильченко Эдуард писал(а):
Если из "усечённой" дракон-схемы (слепыша) получается (каким-то образом) "усечённый" код и при этом адекватность не рассматривается, то это тоже самое, что сказать: возьмите любой слепыш, напишите любой "усечённый" код (состоящий только из управляющих конструкций) и радуйтесь. Вы имеете математически строгий слепыш и математически строгий код. Правда ни то, ни другое никогда и никому не пригодится.


Это не так. Мои рассуждения таковы.

1. Если дракон-конструктор построен правильно, он реализует разработанное мною исчисление икон.

2. В основе исчисления лежат две аксиомы: аксиома-примитив и аксиома-силуэт.

3. Из этих аксиом математически строго выводится любой слепыш (шампур-схема).

4. Слепыш (шампур-схема) представляет собой теорему, которая выводится из аксиом методом логического вывода.

5. Это означает, что слепыш не может содержать ошибок (если дракон-конструктор спроектирован правильно).

6. Если маршрутный транслятор спроектирован правильно, он генерирует код, правильно описывающий слепыш.

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

Цитата:
Конструктор алгоритмов – надежный помощник человека. Он умело подсказывает, как нужно составлять алгоритмы. Кроме того, он осуществляет 100%-е автоматическое доказательство правильности дракон-схем, гарантируя принципиальную невозможность ошибок визуального синтаксиса. Иными словами, конструктор алгоритмов полностью исключает ошибки графического синтаксиса.

Паронджанов В.Д. Учись писать, читать и понимать алгоритмы. Алгоритмы для правильного мышления. Основы алгоритмизации. — М.: ДМК-пресс, 2012. — 520с. — С. 11, 434, 506.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 12 Май, 2013 21:13 

Зарегистрирован: Понедельник, 09 Ноябрь, 2009 17:29
Сообщения: 904
Откуда: Россия, Питер
Владимир Паронджанов писал(а):
... Мои рассуждения таковы.
1. ...
2. ...
3. ...
4. ...
5. ...
6. ...
7.

Я совершено не против Ваших рассуждений.
Но
Владимир Паронджанов писал(а):
6. Если маршрутный транслятор спроектирован правильно, он генерирует код, правильно описывающий слепыш.

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

ключевое слово "Если".
Как проверить, что сгенерированный код правильно (адекватно) описывает слепыш?
Как правильно спроектировать транслятор?
Каковы критерии правильности?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 12 Май, 2013 21:21 
Аватара пользователя

Зарегистрирован: Суббота, 29 Март, 2008 19:27
Сообщения: 1098
Откуда: Россия, Чебоксары
Владимир Паронджанов писал(а):
1. Если дракон-конструктор построен правильно, он реализует разработанное мною исчисление икон.
Ох, не знаток я мудрёных математических исчислений, но даже мне очевидно, что любая формальная система на то и формальная, чтобы строго соответствовать объявленным правилам (формализмом).

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

Цитата:
2. В основе исчисления лежат две аксиомы: аксиома-примитив и аксиома-силуэт.
Ни к селу, ни к городу. Так, пара ярлыков на способы организации направленных графов. Ну, во втором случае авторство ярлыка вроде подтверждено, но сам способ организации известен сто лет в обед (хотя, может, и не в области алгоритмизации - тут есть новизна... но опять не очевидна её полезность)...

Цитата:
3. Из этих аксиом математически строго выводится любой слепыш (шампур-схема).
4. Слепыш (шампур-схема) представляет собой теорему, которая выводится из аксиом методом логического вывода.
5. Это означает, что слепыш не может содержать ошибок (если дракон-конструктор спроектирован правильно).
6. Если маршрутный транслятор спроектирован правильно, он генерирует код, правильно описывающий слепыш.
Эти пункты применимы к ЛЮБОЙ формальной системе, применённой к направленным графам.
ЧТО НОВОГО-ТО?!

Цитата:
7. Ошибки пользователя могут появляться только тогда, когда пользователь заполняет иконы программным текстом.
КАТЕГОРИЧЕСКИЙ БРЕД! :twisted:

Автор демагогически смешивает отсутствие синтаксических ошибок (что опять же может гарантировать далеко не один нормальный интерактивный тул разработчика) и отсутствие семантических ошибок в проекте.
На мой взгляд, это мракобесие, несовместимое с целями данного форума!


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 13 Май, 2013 00:06 
Аватара пользователя

Зарегистрирован: Вторник, 04 Октябрь, 2011 17:45
Сообщения: 585
Alexey_Donskoy писал(а):
Задача декомпозиции осложняется тем, что она имеет принципиально иерархические свойства, которые ДРАКОН-подобная нотация не поддерживает должным образом.

Н-да.
Alexey_Donskoy писал(а):
Посмотрим на один только из используемых здесь способов программирования: флаги. Тут требуется инструмент, который бы показал:
- где инициализируется флаг;
- где он взводится и сбрасывается;
- где используется.

Во истину!

Это проблемы огромной практической важности.
Поэтому более или менее вменяемая среда разработки должна иметь внутри себя несколько инструментов:
1. Алгоритмы. Здесь хорошо подходит ДРАКОН. (Процедурное, функциональное или объектно-ориентированное - не важно.)
2. Структуры данных. Диаграммы классов не предлагать.
Требуется видеть не только объекты, но и связи!
Связи - полноценная часть модели данных.
А кроме того, хочется иметь нормальную навигацию по схеме данных.
3. Декомпозиция. В Visual Studio есть инструмент, который показывает, какой метод вызывает какой - Call Tree View.
Но реализован Call Tree View ужасно. Можно смотреть, кто вызывает кого только для одного метода.
Это неприемлемо. Требуется видеть всю картину, всё дерево вызовов.
4. Поведение. В большинстве случаев поведение удобно моделировать автоматами. И здесь ДРАКОН опять нас выручает.
5. Ответ на запросы "кто сюда пишет" и "кто отсюда читает".
Кто (какая процедура) удаляет и создаёт объекты этого типа?
Кто пишет в это поле? Кто читает из него? Непосредственно и опосредованно.
Плюс хорошо бы уметь вводить ограничения типа "в это поле пишет только метод икс".


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 13 Май, 2013 00:15 
Аватара пользователя

Зарегистрирован: Вторник, 04 Октябрь, 2011 17:45
Сообщения: 585
Ильченко Эдуард писал(а):
ключевое слово "Если".
Как проверить, что сгенерированный код правильно (адекватно) описывает слепыш?
Как правильно спроектировать транслятор?
Каковы критерии правильности?


А как проверить, что компилятор выдаёт машинный код, соответствующий исходному тексту программы?
1. Построить мат. модель.
2. Нарисовать кучу тестовых диаграмм. Сгенерить по ним код. Сличить получаемое и ожидаемое. Не забываем про крайние случаи.
3. Создать гигабайты реальных программ. Протестировать, выпустить. Практика - критерий истины.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 13 Май, 2013 00:25 
Аватара пользователя

Зарегистрирован: Вторник, 04 Октябрь, 2011 17:45
Сообщения: 585
Владимир Паронджанов писал(а):
1. Возьмите какой-нибудь сложный слепыш.

2. Подайте его на вход Вашего Маршрутного транслятора.

3. Зафиксируйте результат маршрутной трансляции.

4. Выложите здесь:


Это не проблема. Я рассматриваю вопрос преобразования слепышей в дерево процедурной программы в целом решённым.
DRAKON Editor генерит себя из ДРАКОН-схем. Считаю это практическим доказательством данного вопроса.
Конечно, можно и нужно сделать трансляцию более красиво и более эффективно.


Вложения:
slepysh.zip [1.78 КБ]
Скачиваний: 297
slepysh_small.png
slepysh_small.png [ 25.5 КБ | Просмотров: 14456 ]
slepysh_big.png
slepysh_big.png [ 107.52 КБ | Просмотров: 14456 ]
Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 13 Май, 2013 03:38 

Зарегистрирован: Воскресенье, 06 Апрель, 2008 14:43
Сообщения: 1657
Вся эта тема пустая.

Вся возня со слепышами, оторвана от практики, поглощает массу энергии у участников и поглотила праздничное время.

Основана эта возня на словоблудии.

Совершенно бессмысленные комбинации терминов:
шампур-схема,
Слепыш (шампур-схема) представляет собой теорему
исчисление икон,
аксиома-примитив и аксиома-силуэт,
код, правильно описывающий слепыш,
устремленные графы.

Жалко студентов, которым придется весь этот бред повторять.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 13 Май, 2013 08:38 

Зарегистрирован: Воскресенье, 24 Февраль, 2008 15:32
Сообщения: 5851
Откуда: Москва
Геннадий Тышов писал(а):
Вся эта тема пустая.
Это не так.

Геннадий Тышов писал(а):
Вся возня со слепышами оторвана от практики.
Это не так.

Геннадий Тышов писал(а):
Основана эта возня на словоблудии.
Речь идет об искусственном интеллекте.
Логическое исчисление и логический вывод — это методы искусственного интеллекта.

На первый взгляд, метод искусственного интеллекта кажется сложным и не нужным на практике. Но в действительности это не так.

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

Геннадий Тышов писал(а):
Жалко студентов, которым придется весь этот бред повторять.
Это не бред, а математика. Пользователям ДРАКОНа знать эту математику не нужно.

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


Последний раз редактировалось Владимир Паронджанов Понедельник, 13 Май, 2013 08:55, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 13 Май, 2013 08:52 
Аватара пользователя

Зарегистрирован: Суббота, 29 Март, 2008 19:27
Сообщения: 1098
Откуда: Россия, Чебоксары
Степан Митькин писал(а):
Это проблемы огромной практической важности.

Требуется видеть не только объекты, но и связи!
...
5. Ответ на запросы "кто сюда пишет" и "кто отсюда читает".
Кто (какая процедура) удаляет и создаёт объекты этого типа?
Кто пишет в это поле? Кто читает из него? Непосредственно и опосредованно.
Вот именно.
Самое смешное, что многие это понимают. Ещё лет 20 назад мы всё это в ФИДО обсуждали, а воз и ныне там...

P.S. Владимир Даниелович, да ведь все эти суждения про теоремы и аксиомы справедливы не только здесь, но и для всех формальных систем!
Просто по определению...

Так зачем тут тавтологией заниматься?!
Ни новизны, ни пользы..


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 13 Май, 2013 10:00 

Зарегистрирован: Четверг, 21 Январь, 2010 18:06
Сообщения: 63
Откуда: Нижний Новгород
Пример реализации маршрутной трансляции "слепыша" (язык Си) программой DrakonAToTxt.
Схема преобразована из реально работающей с удалением текстов.

Замечание. По моему "слепые" (неименованные) ветки и адреса невозможно странслировать в маршрут!?

Вложение:
Слепышь_39.png
Слепышь_39.png [ 17.56 КБ | Просмотров: 14431 ]

Код:
Слепышь()
{

   /*0*/
   .
   .
   .
   .
   if(!(.))
      goto L115;
   else
   {
      .(.);
      .(.);
      .(.);
      .
      .(.);
      .
   }

   /*1*/
L62:
   .(.);
   .
   /*.*/
   .
   switch(.)
   {
      case .:
         .
         break;
      case .:
         .();
         break;
      case .:
         goto L85;
   }
   goto L62;

   /*2*/
L85:
   .
   .
   .
   if(.)
   {
      switch(.)
      {
         case .:
            break;
         case .:
            /*.*/
            .();
            if(.)
            {
               .(.);
               goto L113;
            }
            break;
         case .:
            .(.);
            .(.);
            goto L113;
      }
   }
   .
L113:
   goto L62;

   /*3*/
L115:
   .
   /*.*/
   .
   .();
   .();
}


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 13 Май, 2013 10:17 

Зарегистрирован: Воскресенье, 24 Февраль, 2008 15:32
Сообщения: 5851
Откуда: Москва
Петр, спасибо
Цитата:
Замечание. По моему "слепые" (неименованные) ветки и адреса невозможно странслировать в маршрут!?
Да, конечно.
"Слепые" (неименованные) ветки и адреса невозможно странслировать в маршрут.

Но от слепыша это и не требуется.

Моя цель проста: показать, что слепыш математически точно выполняет свою работу.

Вы, Петр, привели прекрасное подтверждение этих слов. Подтверждение, взятое из реально работающей схемы (из икон которой удален текст). Именно об этом я и мечтал.

При использовании гарантоспособного слепыша работа распадается на две части:

1. Создание слепыша (математически точного слепыша и соответствующего ему математически точного кода). Это трудная задача. Очень трудная. Чрезвычайно трудная. Прелесть в том, что она выполняется БЕЗОШИБОЧНО. И это есть большое достижение.

2. Последовательное программирование икон. Это сравнительно легкая задача. Ошибки пользователя возможны только на этом этапе.

Высказывая эти соображения, я привожу не свои мысли. Я всего лишь повторяю рассуждения Сергея Ефанова (с которым я полностью согласен).

Хочу особо подчеркнуть, что основная логика этих рассуждений создана именно Сергеем Ефановым.
За что ему огромное спасибо.

==========================

Петр, еще раз огромное спасибо за прекрасный пример и прекрасный код.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 13 Май, 2013 11:20 
Аватара пользователя

Зарегистрирован: Суббота, 29 Март, 2008 19:27
Сообщения: 1098
Откуда: Россия, Чебоксары
Владимир Паронджанов писал(а):
2. Последовательное программирование икон. Это сравнительно легкая задача. Ошибки пользователя возможны только на этом этапе.
Ну сколько можно нести один и тот же бред?! :twisted:

Основные ошибки всегда именно в проектировании на 1 этапе: то забыли проверить какой-то из вариантов, то не вовремя проверку организовали и т.д. и т.п.

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

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


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

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


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

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


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

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