DRAKON.SU

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

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




Начать новую тему Ответить на тему  [ Сообщений: 34 ]  На страницу Пред.  1, 2
Автор Сообщение
СообщениеДобавлено: Пятница, 04 Май, 2012 11:16 

Зарегистрирован: Вторник, 15 Декабрь, 2009 11:43
Сообщения: 83
Цитата:
Сергей Прохоренко пишет:
Уже сейчас есть есть более десятка визуальных средств разработки типа
Scratch, которые по своим возможностям и эргономике многократно
превосходят Дракон.
... что Дракон реализован (кстати, далеко не полностью) ...

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


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

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


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

Зарегистрирован: Воскресенье, 08 Июль, 2007 00:38
Сообщения: 82
Откуда: Москва
Владислав Жаринов писал(а):
в силу образности мышления.


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

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

Конструкция "комментированный блок" в базовый язык программирования предложена мною не просто для свертки подробностей, а для полной замены в блоках Дракон-схемы исходного кода на специальные комментарии - для облегчения восприятия Дракон-схемы. Эта конструкция должна восприниматься транслятором как комментарий.


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

Зарегистрирован: Воскресенье, 08 Июль, 2007 00:38
Сообщения: 82
Откуда: Москва
Дмитрий_ВБ писал(а):
Слишом общее заявление:


На странице PureBuilder внизу есть ссылки на множество визуальных средств разработки. Часть из них обладает всеми достоинствами Дракона, которые Вы описываете.

Дмитрий_ВБ писал(а):
Как Вы определяете эргономические параметры ? Возможность раскраски
текста, обведения его цветным контуром сложной формы, вставки красивых
рисунков и значков ?


Разумеется, всё это не важно. Главное - формирование программного кода из готовых визуальных шаблонов и невозможность синтаксических ошибок. Но это только первый слой визуализации программы. Более сложные средства визуализации описаны в PureBuilder. Кстати, в PureBuilder нет цветовой раскраски текста, но есть выделение ключевых слов жирным шрифтом - как в книгах.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 04 Май, 2012 13:16 

Зарегистрирован: Вторник, 15 Декабрь, 2009 11:43
Сообщения: 83
Сергей Прохоренко писал(а):
Главное - формирование программного кода из готовых визуальных шаблонов и невозможность синтаксических ошибок.


1) А все-таки есть желание у программистов набирать исходный код вручную :-)
2) Визуальная сборка из кубиков - это реальная альтернатива: программирование как
виртуальный сборочный конвейер. А как отлаживаться при неправильной сборке ?
Или проще собрать заново ?
3) Другая альтернатива - общение с компьютером на естественном языке. А чем плохо ?
Надо только знать, что приказать (минус: слово не воробей, вылетит - не поймаешь).

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

Ну и в чем тогда неразрешимое противоречие ?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 04 Май, 2012 13:41 

Зарегистрирован: Воскресенье, 01 Ноябрь, 2009 05:13
Сообщения: 1443
Дмитрий_ВБ писал(а):
...
2) Визуальная сборка из кубиков - это реальная альтернатива: программирование как
виртуальный сборочный конвейер. А как отлаживаться при неправильной сборке ?
Или проще собрать заново ?
...
Видимо, так: viewtopic.php?p=72527#p72527 ?.. Т.е., если "кубики" правильные - то и их композиция будет правильной?.. :)


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 04 Май, 2012 13:53 

Зарегистрирован: Воскресенье, 01 Ноябрь, 2009 05:13
Сообщения: 1443
Сергей Прохоренко писал(а):
Владислав Жаринов писал(а):
в силу образности мышления.


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

Сергей Прохоренко писал(а):
...
Конструкция "комментированный блок" в базовый язык программирования предложена мною не просто для свертки подробностей, а для полной замены в блоках Дракон-схемы исходного кода на специальные комментарии - для облегчения восприятия Дракон-схемы. Эта конструкция должна восприниматься транслятором как комментарий.
Т.е. это вариант содержания блока - как "управленческое приложение" в Ты-среде?..


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 04 Май, 2012 14:22 
Аватара пользователя

Зарегистрирован: Воскресенье, 08 Июль, 2007 00:38
Сообщения: 82
Откуда: Москва
Дмитрий_ВБ писал(а):
Сергей Прохоренко писал(а):
Главное - формирование программного кода из готовых визуальных шаблонов и невозможность синтаксических ошибок.


1) А все-таки есть желание у программистов набирать исходный код вручную :-)
2) Визуальная сборка из кубиков - это реальная альтернатива: программирование как
виртуальный сборочный конвейер. А как отлаживаться при неправильной сборке ?
Или проще собрать заново ?
3) Другая альтернатива - общение с компьютером на естественном языке. А чем плохо ?
Надо только знать, что приказать (минус: слово не воробей, вылетит - не поймаешь).

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

Ну и в чем тогда неразрешимое противоречие ?


Я против безнадежной идеи естественного языка для программирования - его и соотечественники не всегда правильно понимают, что уж там говорить о компьютере!

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

Противоречие в том, что PureBuilder - это программирование в структурной парадигме в форме 1D с отступами (ветвями) (кроме автоматически генерируемых 2D схем межмодульного взаимодействия и т.п.), а Дракон - это блок-схема 2D, манипулирование которой неоправданно трудоемко (вдобавок тесно связанная с GOTO).

3D - это вообще завиральное детище режиссеров киберпанка. Мне нравится этот жанр, но иногда он вызывает смех.


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

Зарегистрирован: Вторник, 15 Декабрь, 2009 11:43
Сообщения: 83
Сергей Прохоренко писал(а):
Дракон - это блок-схема 2D, манипулирование которой неоправданно трудоемко (вдобавок тесно связанная с GOTO).

1) Это для текущего положения вещей.
Может через 5 лет, а может и гораздо быстрее кто-нибудь придумает интерфейс,
который решит эту проблему (трудоемкости работы с блок-схемами)

2) Чтобы приспособить силуэт к документированию структурного исходного кода, я
отвязался от GOTO.
Ввод визуальной схемы в программе dal_vjaz_2 (выложена в теме "AB_VJAZ и DAL_VJAZ" 17.03.2012)
выполняется при помощи структурно-текстового интерфейса, заимствованного из интерфейса
структурных редакторов.
А перевод из одномерной логической структуры процедуры (аналог структурной записи в
структурном редакторе) в визуальную схему 2D программа выполняет сама.


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

Зарегистрирован: Воскресенье, 08 Июль, 2007 00:38
Сообщения: 82
Откуда: Москва
Дмитрий_ВБ писал(а):
Чтобы приспособить силуэт к документированию структурного исходного кода, я
отвязался от GOTO.


Преобразование "исходный код" -> "Дракон" не требует существования GOTO (поэтому я не возражаю против использования Дракона в иллюстративных целях). Но обратное преобразование "Дракон" -> "исходный код" в общем случае требует существования GOTO.


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

Зарегистрирован: Вторник, 15 Декабрь, 2009 11:43
Сообщения: 83
Я использовал подмножество маршрутных операторов ДРАКОНа, в которое GOTO не входит.
При генерации исходного кода в него вставляются служебные комментарии, например
(*i*) if ( ...

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


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

Зарегистрирован: Воскресенье, 01 Ноябрь, 2009 05:13
Сообщения: 1443
В общем случае (многоадресный силуэт и/или неатомарно пересаженные лианы в теле примитива/ветки силуэта) - да, требует. Но если не пользуемся этими возможностями - то нет. А межветочные БП в одноадресном силуэте убираются элементарно. Если многоадресный силуэт сделан исключительно для укладки петель циклов в петлю силуэта - то дело ненамного сложнее чисто логически(межветочные БП превращаются в точках начала ВМЦ в начальные соединители обычных циклов). Но алгоритмически реализовать, наверное, м.б. не так просто.
Ну и как у Дмитрия_ВБ - эмулируем ЦД - можно и с силуэтом имеющимся поступить. Но это уже работа для сочинителя скорее...


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Суббота, 26 Май, 2012 00:58 

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


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

Зарегистрирован: Воскресенье, 01 Ноябрь, 2009 05:13
Сообщения: 1443
Ну, как цифр, так и ответов на пункты вопросников... которые всё равно надо составлять...
Насчёт заявления - тут нужно уточнить, что понимается под визуальной частью. Помнится, Сергей писал:
Сергей Прохоренко в viewtopic.php?p=70290#p70290 писал(а):
...
Нет, речь не идет о блок-схемах, требующих от пользователя (т.е., программиста) недюжинных способностей компоновки и отрывающих его время на эту компоновку. Визуализация означает:
  • манипулирование смысловыми блоками кода и его отдельными элементами как графическими объектами,
  • широкое использование графических нетекстовых элементов кода (границ блоков кода, маркеров ветвей, локальных пиктограмм действий) для структуризации и манипулирования кодом,
  • использование различных графических представлений кода (таблицы объявлений, структурные схемы, таблицы зависимостей и т.д.).

См. также PureBuilder
А также:
Сергей Прохоренко в viewtopic.php?p=47586#p47586 писал(а):
...
На этой схеме (http://valexey.blogspot.com/2010/05/blog-post.html) очень хорошо видно, что грамматика языка Oberon-2 состоит всего из пяти разделов:
1. Импорт
2. Объявления
3. Последовательность инструкций
4. Выражения
5. Идентификаторы

Мне представляется, что эти разделы должны реализовываться совершенно различными графическими средствами семантического редактора:
    импорт - древовидными схемами (наподобие зависимостей в Microsoft Access);
    объявления - таблицами;
    последовательность инструкций - блочным гипертекстом и коллекциями шаблонов элементов;
    выражения - построителем выражений (примерно как в Microsoft Access);
    идентификаторы - построителем идентификаторов (наподобие довольно распространенных средств для выбора имен веб-сайтов, дополненных тематическими каталогами, словарями и средствами поддержки стиля).

Похоже, это всё в основном не предмет техноязыка (кроме последовательностей инструкций - т.е. потока управления). Хотя м.б. и взгляды Сергея в чём-то изменились?..
Нужно, правда, иметь в виду и такое замечание: viewtopic.php?p=47521#p47521.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Суббота, 26 Май, 2012 10:16 

Зарегистрирован: Воскресенье, 01 Ноябрь, 2009 05:13
Сообщения: 1443
Вот, кстати, к вопросу о структуризации - интересны источники отсюда: viewtopic.php?p=28927#p28927 (и последующее обсуждение).


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

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


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

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


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

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