Здравствуйте, Qbit86, Вы писали:
N>>Тем более что в разных странах разные традиции. Q>Но логика одна: читая «промежуточный» сигнал светофора, водитель должен понимать, что за ним последует — разрешающий или запрещающий сигнал.
Ты уводишь в оффтопик.
Давай уже тогда вспоминать светофоры с индикацией времени, сколько осталось до переключения сигнала (половина Киева уже имеет такое на пешеходных светофорах). Зачем какие-то промежуточные сигналы, если ты видишь, что до переключения осталось 5...4...3...2...1... секунд? "It's the final countdown!"
В рамках темы, ты наталкиваешь на другую мысль. Что будет, если потребовать таких индикаторов в данной схеме? Останется она "двумерной" в терминах авторов Дракона или станет трёхмерной, потому что цикл смены показаний времени в пределах одного сигнала это отдельная "вложенная" сущность?
Здравствуйте, netch80, Вы писали:
N>Я очень хочу понять, почему Вы выдвигаете такие предположения в мой адрес. Я не вижу ни одной причины, по которой это можно было бы сделать.
Уважаемый Валентин Нечаев!
Это произошло в результате ошибки. Приношу свои извинения.
N>В Вашем высказывании содержится утверждение про точку роста научного знания… N>…………………………………………………………………………….. N>поэтому соответствующий эмоциональный слой высказывания отношу исключительно на счёт Вашей заинтересованности в данной работе.
Вы правы.
N>...меня до сих пор тема языка Дракон и связанных с ним технологий не интересовала никак. N>………………………………………………… N>Простой вопрос навстречу: Вы можете привести какой-то понятный большинству пример, где использование ваших средств даёт принципиальное облегчение рассмотрения сути задачи и соответственно построения решения?
Боюсь, один пример ничего не даст. Могу дать ссылку на 124 страницы. http://drakon-practic.ru/drakon.pdf
N>Вы сами, насколько я понимаю, придумываете графические средства для того, чтобы воспользоваться тем, что визуализация N>позволяет значительно быстрее понять суть (разумеется, если правильно сделана).
Нельзя говорить, что я сам. Это совместный труд ФГУП «НПЦАП» им. Пилюгина
и Института прикладной математики им. Келдыша РАН .
Все началось с Бурана.
N>Поэтому я не стал глубоко вчитываться в теоретические основы, а начал с рассмотрения картинок. N>Вопрос: Вы представляете что-то кроме блок-схем алгоритма?
Я написал десяток книг по блок-схемам (дракон-схемам), в том числе три для детей.
Но в них ни слова (почти) про структуры данных.
N>Если нет, то чем оно поможет большинству программистов, N>задачи которых далеко выходят за пределы одиночного алгоритма?
В Вашем вопросе содержится неточность.
Вы (не только Вы, но и весь мир) мыслите одиночными алгоритмами.
Когда задачи ДАЛЕКО ВЫХОДЯТ за пределы одиночного алгоритма, возникают проблемы.
Вы (и вместе с Вами весь мир) научились с помощью РАЗЛИЧНЫХ СПОСОБОВ преодолевать эти проблемы.
Вы (и вместе с Вами весь мир) считаете, что это хорошие способы.
Предположим, что сегодня существует N способов преодолевать эти проблемы.
Я предлагаю еще один, N+1-й способ.
Не вместо существующих, а в дополнение к ним. Этот способ называется ДРАКОН.
Что такое ДРАКОН?
Это принципиально новая нотация для записи алгоритмов ЛЮБОЙ сложности.
Не только одиночных алгоритмов, а огромной совокупности огромных алгоритмов.
Чем сложнее алгоритм, тем больше выгода от использования ДРАКОНа.
ДРАКОН превращает сложные и непонятные (точнее, трудные для понимания) алгоритмы
в простые и понятные (точнее, более легкие для понимания).
Не только одиночные алгоритмы, но и огромные совокупности огромных алгоритмов.
Я отчетливо сознаю, что не ответил на Ваши вопросы.
Попытаюсь (если будет возможность) продолжить ответ через несколько дней.
Здравствуйте, Владимир Паронджанов, Вы писали:
N>>Я очень хочу понять, почему Вы выдвигаете такие предположения в мой адрес. Я не вижу ни одной причины, по которой это можно было бы сделать. ВП>Уважаемый Валентин Нечаев! ВП>Это произошло в результате ошибки. Приношу свои извинения.
Протестую! Эта ветка про светофор!
ВП>Что такое ДРАКОН? ВП>Это принципиально новая нотация для записи алгоритмов ЛЮБОЙ сложности.
To all: Кто-нибудь кроме меня вспомнил Шахиджаняна?
Глаза у меня добрые, но рубашка — смирительная!
Re[10]: Мерность как самостоятельная характеристика
Здравствуйте, VladZharinov, Вы писали:
VZ>Здравствуйте, samius, Вы писали:
S>>С трудом понимаю вашу терминологию. Согласно определению, в основе структурного программирования лежит представление программы в виде иерархической структуры блоков. И я не вижу повода размышлять о мерности такого представления. Почему вы традиционное структурное программирование назвали одномерным? Структура блоков может быть достаточно сложна, что бы граф мог не быть планарным. И обычное текстовое представление кода неплохо с этим справляется при наличии развитой IDE. Кстати, текст не менее двумерен, чем картинка-схема. VZ>Вы имели в виду что-то типа сказанного здесь?..
Да, что-то типа того. С поправкой на то, что я обычный текст (и даже один символ) считаю двумерным объектом.
Одномерный — это что-то вроде азбуки Морзе, или представления текста в виде строки в памяти компьютера. Текст, который мы видим глазами, безусловно двумерен (как минимум).
Здравствуйте, Владимир Паронджанов, Вы писали:
ВП>Книга продается на каждом углу.
Владимир, вы уже вплотную подошли к бану. Если вы хотите рекламировать коммерческую литературу — оплатите, пожалуйста, размещение баннера или текстовой рекламы по официальным расценкам.
Форумы здесь посвящены обсуждению проблем программирования, и на вопросы принято отвечать бесплатно.
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Здравствуйте, Qbit86, Вы писали:
Q>Здравствуйте, Владимир Паронджанов, Вы писали:
N>>>Я очень хочу понять, почему Вы выдвигаете такие предположения в мой адрес. Я не вижу ни одной причины, по которой это можно было бы сделать. ВП>>Уважаемый Валентин Нечаев! ВП>>Это произошло в результате ошибки. Приношу свои извинения.
Q>Протестую! Эта ветка про светофор!
В связи с программами и спецификациями? Скажем, как у Карпова?..
ВП>>Что такое ДРАКОН? ВП>>Это принципиально новая нотация для записи алгоритмов ЛЮБОЙ сложности.
Q>To all: Кто-нибудь кроме меня вспомнил Шахиджаняна?
Можно и другое вспомнить. Правда, не совсем понятно, что Вы имели в виду. Скажем, такие вещи: N>>Если нет, то чем оно поможет большинству программистов, N>>задачи которых далеко выходят за пределы одиночного алгоритма?
ВП>В Вашем вопросе содержится неточность. ВП>Вы (не только Вы, но и весь мир) мыслите одиночными алгоритмами.
ВП>Когда задачи ДАЛЕКО ВЫХОДЯТ за пределы одиночного алгоритма, возникают проблемы.
ВП>Вы (и вместе с Вами весь мир) научились с помощью РАЗЛИЧНЫХ СПОСОБОВ преодолевать эти проблемы.
ВП>Вы (и вместе с Вами весь мир) считаете, что это хорошие способы.
— возможно, просто несинхронизация со смыслом высказывания корреспондента (имею в виду употребление выделенного у участников жирным шрифтом)...
Здравствуйте, Sinclair, Вы писали:
S>Форумы здесь посвящены обсуждению проблем программирования, и на вопросы принято отвечать бесплатно.
Попробую дать бесплатный ответ. В ветке про ГРАФИТ-ФЛОКС указывалось, какие структуры данных поддерживает эта технология. Скажем, здесь. Т.е. это ячейки памяти. Надо абстрактные типы вводить — потребуется создать и соответствующий графовый синтаксис. Можно так, как здесь описано. Пример применения... ну хотя бы здесь.
Тут недавно говорили и про рекурсию на схемах — так в Примере 95 как раз видно, что именно на схемах типов можно решить задачу её указания. Другой путь — вписывать данные о рекурсивных вызовах в вершины конца схем алгоритмов.
А ВП создал такой способ описания структур данных, какой нужен был для ГРАФИТ-ФЛОКС-исполнителя (БЦВМ).
Здравствуйте, VladZharinov, Вы писали:
Q>>Протестую! Эта ветка про светофор! VZ>В связи с программами и спецификациями? Скажем, как у Карпова?..
Q>>To all: Кто-нибудь кроме меня вспомнил Шахиджаняна? VZ>Можно и другое вспомнить. :) Правда, не совсем понятно, что Вы имели в виду.
Ваш комментарий содержит ссылки на сообщения форума OberonCore (без малейшего намёка на то, как это связано с моим сообщением). Последние в свою очередь содержат ссылки на какие-то мутные источники. Причём среди них в качестве автора фигурирует, прошу прощения, Шалыто. Вы явно переоцениваете моё желание читать труды подобной публики. Хватит с меня того, что я, даже видя forum.oberoncore.ru в адресе ссылки, всё равно туда перешёл. О чём незамедлительно пожалел, так как обычно стараюсь блюсти гигиену мозга.
Какой-то Карпов, какой-то разбор Резуна, одна ссылка удивительней другой просто.
Глаза у меня добрые, но рубашка — смирительная!
Re[11]: Мерность как самостоятельная характеристика
Здравствуйте, samius, Вы писали:
S>Да, что-то типа того. С поправкой на то, что я обычный текст (и даже один символ) считаю двумерным объектом. S>Одномерный — это что-то вроде азбуки Морзе, или представления текста в виде строки в памяти компьютера. Текст, который мы видим глазами, безусловно двумерен (как минимум).
Ага... всё собираюсь развить как раз в том же ключе — что есть физически одномерные представления типа той же азбуки Морзе. Тогда как обычные буквы надо читать в двух измерениях.
И в то же время текст логически может представлять одномерную структуру — без каких-то нелинейных связей содержания.
Здравствуйте, Qbit86, Вы писали:
Q>Здравствуйте, VladZharinov, Вы писали:
Q>>>Протестую! Эта ветка про светофор! VZ>>В связи с программами и спецификациями? Скажем, как у Карпова?..
Q>>>To all: Кто-нибудь кроме меня вспомнил Шахиджаняна? VZ>>Можно и другое вспомнить. Правда, не совсем понятно, что Вы имели в виду.
Q>Ваш комментарий содержит ссылки на сообщения форума OberonCore (без малейшего намёка на то, как это связано с моим сообщением). Последние в свою очередь содержат ссылки на какие-то мутные источники. Причём среди них в качестве автора фигурирует, прошу прощения, Шалыто.
Не, там конкретно не Шалыто. Карпов просто как раз разбирал, как проверять программы, в частности, на примере светофора...
Q>Какой-то Карпов, какой-то разбор Резуна, одна ссылка удивительней другой просто.
Я так понял, что упоминанием Шахиджаняна Вы намекаете на "методы внедрения идей"... Хотя, возможно, имелось в виду что-то другое?..
Тут есть, мне кажется, один аспект — человек вроде как придумал, как можно исчислять схемы. И то, что его посты могут заставлять вспомнить Шахиджаняна (и не только), не значит, что в этом нет чего-то полезного...
Здравствуйте, VladZharinov, Вы писали:
VZ>Здравствуйте, samius, Вы писали:
S>>Да, что-то типа того. С поправкой на то, что я обычный текст (и даже один символ) считаю двумерным объектом. S>>Одномерный — это что-то вроде азбуки Морзе, или представления текста в виде строки в памяти компьютера. Текст, который мы видим глазами, безусловно двумерен (как минимум). VZ>Ага... всё собираюсь развить как раз в том же ключе — что есть физически одномерные представления типа той же азбуки Морзе. Тогда как обычные буквы надо читать в двух измерениях.
Даже если мы будем считать один символ точечным объектом, двумерность текста все равно будет иметь значение.
VZ>И в то же время текст логически может представлять одномерную структуру — без каких-то нелинейных связей содержания.
Конечно же содержание и связи — это вопрос контекста. Когда мы смотрим на текст как на последовательность codepoint-ов, то нет в нем никакого содержания и связей, кроме самой последовательности. Но если мы скормим эту последовательность браузеру — можем увидеть нечто интересное. Скормим другую компилятору — можем получить программу, решающую какую-то задачу. А если посмотрим на текстовое представление сами, то увидим что-то другое.
Потому сопоставлять исходные тексты программы с одномерной последовательностью символов совершенно нелепо.
Re[13]: Мерность как самостоятельная характеристика
... VZ>>И в то же время текст логически может представлять одномерную структуру — без каких-то нелинейных связей содержания. S>Конечно же содержание и связи — это вопрос контекста. Когда мы смотрим на текст как на последовательность codepoint-ов, то нет в нем никакого содержания и связей, кроме самой последовательности. Но если мы скормим эту последовательность браузеру — можем увидеть нечто интересное. Скормим другую компилятору — можем получить программу, решающую какую-то задачу. А если посмотрим на текстовое представление сами, то увидим что-то другое. S>Потому сопоставлять исходные тексты программы с одномерной последовательностью символов совершенно нелепо.
Во-во... И если мы хотим представить для текста программы маршруты его исполнения — то можем просто расположить участки этих маршрутов по порядку выбора, переводя строку после каждого оператора. Без всякой замены маршрутных ключевых слов на графику вершин и линий... И физическое расположение фраз на плоскости станет представлять двумерную логику в смысле сказанного у Ермакова и Жигуненко в п.3:
Последовательность действий выстраивается по вертикали сверху вниз, переключение семантических состояний системы (переходы между маршрутами) выполняются по горизонтали слева направо (расщепление) и справа налево (объединение).
Здравствуйте, michael_isu, Вы писали:
_>Оператор if — это наверное самый зловещий оператор, которым мне приходилось пользоваться. Он является основной причиной возникновения спагетти-кода и как следствие причиной сильной головной боли, когда проект развивается много лет. Только вот пока не додумал, как от него избавиться совсем. Какие варианты? или мне пора в ФП?
Очень простое решение заменить оператор if с помощью pattern matching
Так что бы вместо if и switch
int fib(int n) {
if (n==0) return 1;
if (n==1) return 1;
return fib(n-1)+fib(n-2);
}
можно было писать так
int fib(int n) { return fib(n-1)+fib(n-2); }
int fib(int n==0) { return 1; }
int fib(int n==1) { return 1; }
это способно убрать длинные портянки if-ов и статические switch-и заменит расширяемыми.
ps: оператор if и goto бессмертны. не возможно убить то чего нет.
Re[13]: Мерность как самостоятельная характеристика
S>Даже если мы будем считать один символ точечным объектом, двумерность текста все равно будет иметь значение.
Откуда взялась двухмерность?
Текст или одномерный — как последовательность считываемых символов,
или многомерный (где кол-во измерений переваливает за не один десяток) — если речь идет о формируемых текстом смысловых пространств.
Re[14]: Мерность как самостоятельная характеристика
Здравствуйте, DarkGray, Вы писали:
S>>Даже если мы будем считать один символ точечным объектом, двумерность текста все равно будет иметь значение.
DG>Откуда взялась двухмерность?
Возможно от тэртерийцев, если верить википедии. Но на самом деле несложно проследить двумерность от наскальной живописи.
DG>Текст или одномерный — как последовательность считываемых символов,
кроме последовательности символов текст обладает так же и форматированием (отступы, табуляция и т.п.). Да, сейчас их засунули в последовательность символов, но это не всегда было так.
DG>или многомерный (где кол-во измерений переваливает за не один десяток) — если речь идет о формируемых текстом смысловых пространств.
Нет, я не об этом. Я о том, что таблицу (например) можно представить текстом. Но если смотреть на этот текст как на последовательность символов, то можно не увидить того, что видно в таблице.
Re[15]: Мерность как самостоятельная характеристика
DG>>Откуда взялась двухмерность? S> Но на самом деле несложно проследить двумерность от наскальной живописи.
Если занудничать, то наскальная живопись — это 6-ти мерное пространство:
— 3-оси поверхности скалы (которая не тождественна двухмерному пространству)
— цвет
— фактура
— шершавость
Может добавляться еще время, если прыгающий свет факела или двигающийся луч солнца подчеркивал какие-то участки рисунка в зависимости от изменения времени.
DG>>или многомерный (где кол-во измерений переваливает за не один десяток) — если речь идет о формируемых текстом смысловых пространств. S>Нет, я не об этом. Я о том, что таблицу (например) можно представить текстом. Но если смотреть на этот текст как на последовательность символов, то можно не увидить того, что видно в таблице.
Если в виде таблицы представлен многомерный куб, то если на таблицу смотреть как на двухмерное пространство, то можно вообще ничего не увидеть.
Поэтому я еще раз повторю свой вопрос: почему акцент делается именно на двухмерности? а не допустим хотя бы на 4-х мерности (размерность окружающего пространства + время)?
Re[16]: Мерность как самостоятельная характеристика
Здравствуйте, DarkGray, Вы писали:
DG>>>Откуда взялась двухмерность? S>> Но на самом деле несложно проследить двумерность от наскальной живописи.
DG>Если занудничать, то наскальная живопись — это 6-ти мерное пространство:
Нет желания отвечать на занудство
S>>Нет, я не об этом. Я о том, что таблицу (например) можно представить текстом. Но если смотреть на этот текст как на последовательность символов, то можно не увидить того, что видно в таблице.
DG>Если в виде таблицы представлен многомерный куб, то если на таблицу смотреть как на двухмерное пространство, то можно вообще ничего не увидеть.
верно
DG>Поэтому я еще раз повторю свой вопрос: почему акцент делается именно на двухмерности? а не допустим хотя бы на 4-х мерности (размерность окружающего пространства + время)?
Потому что 5-7 тысяч лет текст читается с двумерной проекции того, на чем он написан, на плоскость. И лишь в последнее время его стали записывать в виде последовательности символов для машинного представления. Для чтения его человеком нужна как минимум двумерная картинка.
Re[17]: Мерность как самостоятельная характеристика
S>Потому что 5-7 тысяч лет текст читается с двумерной проекции того, на чем он написан, на плоскость.
Мозг человека за последние 5-7 тысяч лет не менялся. Он как был многомерным, так и остался. От того что в истории был период, когда накопленная информация преимущественно передавалась в двухмерном виде — на человека никак не повлияло.
Re[18]: Мерность как самостоятельная характеристика
Здравствуйте, DarkGray, Вы писали:
S>>Потому что 5-7 тысяч лет текст читается с двумерной проекции того, на чем он написан, на плоскость.
DG>Мозг человека за последние 5-7 тысяч лет не менялся. Он как был многомерным, так и остался. От того что в истории был период, когда накопленная информация преимущественно передавалась в двухмерном виде — на человека никак не повлияло.
И, собственно, что из этого следует? Разве текст перестает представляться в двумерном виде? Или в письменности начинают преобладать драконовские схемы?