DRAKON.SU

Текущее время: Вторник, 17 Июнь, 2025 15:37

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




Начать новую тему Ответить на тему  [ Сообщений: 29 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Прогопедия
СообщениеДобавлено: Вторник, 07 Февраль, 2012 14:01 

Зарегистрирован: Воскресенье, 09 Март, 2008 22:38
Сообщения: 341
Уважаемые коллеги,

Возможно, Вы знаете о существовании в Интернете "энциклопедии языков программирования" - "прогопедии".
Увы, но в разделе "Визуальные языки" она ограничивается лишь G и Sanscript - с весьма сомнительным комментарием:
http://progopedia.ru/paradigm/visual/

Не считаете ли нужным/полезным восполнить недостающее?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Прогопедия
СообщениеДобавлено: Пятница, 05 Апрель, 2013 18:37 

Зарегистрирован: Воскресенье, 24 Февраль, 2008 15:32
Сообщения: 5999
Откуда: Москва
Присоединяюсь к предложению Андрея Александровича.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Прогопедия
СообщениеДобавлено: Понедельник, 08 Апрель, 2013 14:01 

Зарегистрирован: Вторник, 13 Ноябрь, 2007 20:38
Сообщения: 51
Компилятор Дракона - в студию!
После этого можно будет дальше разговаривать.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Прогопедия
СообщениеДобавлено: Понедельник, 08 Апрель, 2013 14:17 
Аватара пользователя

Зарегистрирован: Суббота, 29 Март, 2008 19:27
Сообщения: 1097
Откуда: Россия, Чебоксары
igor писал(а):
Компилятор Дракона - в студию!
А что, язык программирования обязательно должен иметь на выходе исполняемый код?!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Прогопедия
СообщениеДобавлено: Понедельник, 08 Апрель, 2013 16:10 

Зарегистрирован: Воскресенье, 24 Февраль, 2008 15:32
Сообщения: 5999
Откуда: Москва
igor писал(а):
Компилятор Дракона - в студию!
После этого можно будет дальше разговаривать.

Уважаемый Игорь!

Как всегда, Вы ставите законный и интересный вопрос.
Отвечаю.

Часть 1

Вы задали вопрос о спецификациях ДРАКОНа здесь:
viewtopic.php?f=62&t=3797

Я ответил Вам здесь: viewtopic.php?p=74832#p74832

Кроме того, в теме есть ответ от Эдуарда Ильченко и др:
viewtopic.php?p=70155#p70155

Вывод. Язык ДРАКОН имеет строгую спецификацию, описанную в книге «Учись писать, читать и понимать алгоритм», 2012.

Часть 2

Вы задали вопрос о компиляторе (Компилятор Дракона - в студию!).

Вопрос можно переформулировать: позволяет ли ДРАКОН создать исполняемый код?

Ответ. Да, позволяет.

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

Часть 3

Вы исходите из того, что понятие «язык программирования» является неизменным и не подлежит развитию.

В случае ДРАКОНа это не так. В случае ДРАКОНа понятие "язык программирования" отличается от классического образца.

Суть отличия в том, что ДРАКОН — это не один язык, а семейство языков.

Что значит семейство языков? Поясняю.
Цитата:
ДРАКОН можно определить как общедоступный визуальный язык, предназначенный для описания структуры человеческой деятельности, для систематизации, структуризации, наглядного представления и формализации императивных знаний, а также для проектирования, программирования, моделирования и обучения[12].

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

На втором этапе разработки была предложена концепция гибридных языков программирования.

В рамках этой концепции созданы инструментальные средства языка ДРАКОН для гражданских нужд широкого применения в несекретном варианте для эксплуатации на персональных компьютерах: интегрированная среда разработки алгоритмов и программ под названием «ИС Дракон»[2] и ДРАКОН-редактор[3].

В результате ДРАКОН превратился в семейство языков моделирования и программирования.

Программа ИС Дракон поддерживает работу с гибридными языками программирования Дракон-С, Дракон-Delphi, Дракон-1С, Дракон-ASM, Дракон-Oberon.

ДРАКОН-редактор обеспечивает работу с гибридными языками Дракон-Java, Дракон-C#, Дракон-C, Дракон-Python, Дракон-Tcl, Дракон-Javascript, Дракон-Lua, Дракон-Erlang.

Аналогом семейства языков ДРАКОН является «R-технология производства программ, или технология двумерного программирования»[13], созданная в Институте кибернетики имени В. М. Глушкова[14], причем графика дракон-схем в ДРАКОН-семействе служит аналогом графики Р-схем[15] в R-технологии.

В технологическом комплексе программиста RТК[16] принцип обработки информации в компьютере подразумевает деление на R-машину[17], R-язык[18] и R-технологию[19].

ДРАКОН использует тот же принцип, выраженный с помощью другого понятийного аппарата.

Аналогом дракон-схем (как алгоритмического языка моделирования) являются диаграммы поведения языка UML, в частности, диаграмма деятельности[20], диаграмма состояний[21] и некоторые диаграммы взаимодействия, например, диаграмма синхронизации[22].

Другими аналогами дракон-схем являются блок-схема, диаграмма Насси-Шнейдермана, псевдокод (язык описания алгоритмов) и др.

В отличие от блок-схем, дракон-схемы имеют средства для описания работы в реальном времени[22].


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Прогопедия
СообщениеДобавлено: Среда, 10 Апрель, 2013 08:21 

Зарегистрирован: Вторник, 13 Ноябрь, 2007 20:38
Сообщения: 51
Alexey_Donskoy писал(а):
А что, язык программирования обязательно должен иметь на выходе исполняемый код?!

Кто кого должен иметь? :)
На самом деле Ваш вопрос мне понятен, хоть он и задан некорректно. Мой ответ: "Обязательно".


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Прогопедия
СообщениеДобавлено: Среда, 10 Апрель, 2013 08:45 

Зарегистрирован: Вторник, 13 Ноябрь, 2007 20:38
Сообщения: 51
Уважаемый Владимир Даниелович!

Термин "язык программирования" является устоявшимся, и язык ДРАКОН, по моему мнению, в него не вписывается. Возможно, более точным был бы термин "язык моделирования алгоритмов" или "язык описания алгоритмов", но я не настаиваю на этом.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Прогопедия
СообщениеДобавлено: Среда, 10 Апрель, 2013 09:01 
Аватара пользователя

Зарегистрирован: Суббота, 29 Март, 2008 19:27
Сообщения: 1097
Откуда: Россия, Чебоксары
igor писал(а):
Alexey_Donskoy писал(а):
А что, язык программирования обязательно должен иметь на выходе исполняемый код?!

Кто кого должен иметь? :)
На самом деле Ваш вопрос мне понятен, хоть он и задан некорректно. Мой ответ: "Обязательно".
На самом деле Ваше начальное заявление некорректно, и мой вопрос имел целью эту некорректность показать.
Язык - это всего лишь язык. Формальная система с алфавитом и правилами.
Транслятор - это инструмент, который преобразует текст из одного языка в другой.
Компилятор - частный случай транслятора, где выходной язык - код конкретного исполнителя.

Сайт "Прогопедии" вроде бы посвящён всё-таки языкам, а не инструментам.

Другое дело, если Вы хотите отметить прагматическую ценность языка.
Тогда именно об этом и надо говорить.
Но, оказывается, что прагматическую ценность имеют даже "неполноценные" языки (то есть не доводимые до исполнения на конкретном исполнителе).
Яркий пример - естественный человеческий язык (хотя бы русский). Хотя компилятора для него тоже нет, но программы на нём писать таки можно! :wink:

Upd:
Цитата:
Термин "язык программирования" является устоявшимся
[url=http://slovari.yandex.ru/язык%20программирования/БСЭ/Язык%20программирования/]Посмотрим[/url]:
БСЭ писал(а):
Язык программирования, формальная знаковая система, используемая для связи человека с ЦВМ; предназначена для описания данных (информации) и алгоритмов (программ) их обработки на вычислительной машине.
Так что даже в этом определении вписывается.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Прогопедия
СообщениеДобавлено: Среда, 10 Апрель, 2013 13:27 

Зарегистрирован: Вторник, 13 Ноябрь, 2007 20:38
Сообщения: 51
БСЭ писал(а):
Язык программирования, формальная знаковая система, используемая для связи человека с ЦВМ; предназначена для описания данных (информации) и алгоритмов (программ) их обработки на вычислительной машине.

1. Если компилятора нет, то "связь человека с ЦВМ" оказывается разорванной.
2. ДРАКОН, вроде, не позволяет описывать "данные (информацию)".


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Прогопедия
СообщениеДобавлено: Среда, 10 Апрель, 2013 13:48 
Аватара пользователя

Зарегистрирован: Суббота, 29 Март, 2008 19:27
Сообщения: 1097
Откуда: Россия, Чебоксары
igor писал(а):
1. Если компилятора нет, то "связь человека с ЦВМ" оказывается разорванной.
"ЦВМ" может быть и виртуальной. Никто не запрещает! ;)

igor писал(а):
2. ДРАКОН, вроде, не позволяет описывать "данные (информацию)".
Нет. Но это ни к чему не обязывает.

Конечно, "язык описания алгоритмов" точнее. Но остаётся подмножеством языков программирования.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Прогопедия
СообщениеДобавлено: Среда, 10 Апрель, 2013 13:51 
Аватара пользователя

Зарегистрирован: Пятница, 11 Май, 2007 21:57
Сообщения: 234
Откуда: Украина, Киев
igor писал(а):
1. Если компилятора нет, то "связь человека с ЦВМ" оказывается разорванной.
Трансляторы в промежуточный язык программирования есть
igor писал(а):
2. ДРАКОН, вроде, не позволяет описывать "данные (информацию)".
ДРАКОН прекрасно описывает маршрутную (алгоритмическую) часть.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Прогопедия
СообщениеДобавлено: Четверг, 11 Апрель, 2013 09:05 

Зарегистрирован: Вторник, 13 Ноябрь, 2007 20:38
Сообщения: 51
Скажите, пожалуйста, есть ли принципиальная возможность создания исполняемого программного модуля исключительно при помощи ДРАКОНА (и его компилятора), не прибегая к помощи настоящих (!) языков программирования? То есть не применяя гибридных языков, про которые говорил Владимир Даниелович.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Прогопедия
СообщениеДобавлено: Четверг, 11 Апрель, 2013 09:23 
Аватара пользователя

Зарегистрирован: Пятница, 11 Май, 2007 21:57
Сообщения: 234
Откуда: Украина, Киев
Язык Си в Вашем понимании - настоящий язык?
Так, вот, в чистом (настоящем) языке Си Вы ничего не смогли-бы написать сложнее чем Hello world! не будь у Си мощного препроцессора.
По аналогии с Си можно ДРАКОН тоже рассматривать как мощный алгоритмический препроцессор для любого настоящего языка программирования.
А если прикрутить к ДРАКОН-редактору кодогенератор можно получать на выходе и исполнимые модули. но зачем-же ограничивать Вашу свободу выбора? Выбирайте любой Ваш любимый настоящий язык программирования и пишите на гибридном языке ДРАКОН-"настоящий язык".
Что-бы не быть голословным, привожу ссылку на свой проект. Проект транслятора гибридного языка ДРОН (ДРакон-активный оберОН). http://sage.com.ua/ru.shtml?e6l0
После трансляции ДРАКОН-схемы на выходе получается практически гарантированно (если не было допущено ошибок при вводе) компилируемый модуль на Активном Обероне. А поскольку компилятор Активного Оберона работает молниеносно быстро (как и компиляторы всего Оберон симейства), то через несколько миллисекунд можно получить и исполнимый модуль. Если в транслятор добавить вызов компилятора, это будет ещё быстрее. Микро- милли- секунды это критичное время?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Прогопедия
СообщениеДобавлено: Четверг, 11 Апрель, 2013 09:56 
Аватара пользователя

Зарегистрирован: Пятница, 11 Май, 2007 21:57
Сообщения: 234
Откуда: Украина, Киев
Из одной переписки:
Цитата:
Navaro (15:39:15 22/04/2007)
Ярослав, добрый день!
Navaro (15:39:48 22/04/2007)
Вам пишет участник форума под ником iron_man.
Navaro (15:40:26 22/04/2007)
Форум на сайте Компьютерры, обсуждение статьи
http://www.computerra.ru/readitorial/418507/
Navaro (15:41:23 22/04/2007)
Ваша разработка - единственный работающий продукт, который почему-то Паронджанов и Со постеснялись показать сразу.
Navaro (15:42:27 22/04/2007)
Мне бы очень хотелось пообщаться с Вами на эту тему.
ЗЫ. Год тогда был 2009-й а не 2007-й :mrgreen:


Последний раз редактировалось Ярослав Романченко Четверг, 11 Апрель, 2013 11:20, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Прогопедия
СообщениеДобавлено: Четверг, 11 Апрель, 2013 11:05 
Аватара пользователя

Зарегистрирован: Суббота, 29 Март, 2008 19:27
Сообщения: 1097
Откуда: Россия, Чебоксары
igor писал(а):
Скажите, пожалуйста, есть ли принципиальная возможность создания исполняемого программного модуля исключительно при помощи ДРАКОНА (и его компилятора)
Конечно, есть.
Просто сейчас никому не было нужно.
Да, вероятно, и не будет. Многие среды визуального проектирования, да и обычные IDE используют генерацию в промежуточный текст и его компиляцию сторонними компиляторами...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Прогопедия
СообщениеДобавлено: Четверг, 11 Апрель, 2013 11:29 

Зарегистрирован: Воскресенье, 24 Февраль, 2008 15:32
Сообщения: 5999
Откуда: Москва
Ярослав Романченко писал(а):
Navaro (15:39:48 22/04/2007)
Вам пишет участник форума под ником iron_man.

Насколько я понимаю, iron_man — это Альберт Адиятуллин.

Если на форуме Компьютерры щелкнуть на Альберт Адиятуллин, попадаем в профиль iron_man


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Прогопедия
СообщениеДобавлено: Четверг, 11 Апрель, 2013 12:10 
Аватара пользователя

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Прогопедия
СообщениеДобавлено: Четверг, 11 Апрель, 2013 12:49 

Зарегистрирован: Вторник, 13 Ноябрь, 2007 20:38
Сообщения: 51
Ярослав Романченко писал(а):
После трансляции ДРАКОН-схемы на выходе получается практически гарантированно (если не было допущено ошибок при вводе) компилируемый модуль на Активном Обероне.

В таком случае промежуточное представление в виде исходного текста на Активном Обероне (полученное автоматически, ведь так?) можно в принципе исключить, - это дело техники. Настораживает другое:
Цитата:
На первых порах пришлось "приспособить" под декларативную часть блок "комметнарий", с разделением соответсвующих секций, собственно: комментариев, импорта, констант, типов и переменных. принадлежность той или инной секции определяется первым считанным из блока элементом, соответственно (*, IMPORT, CONST, TYPE и VAR.

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Прогопедия
СообщениеДобавлено: Четверг, 11 Апрель, 2013 12:53 

Зарегистрирован: Вторник, 13 Ноябрь, 2007 20:38
Сообщения: 51
Владимир Паронджанов писал(а):
Насколько я понимаю, iron_man — это Альберт Адиятуллин.

Вероятно, этот ник происходит от названия одного известного хита 1971 года группы "Black Sabbath".


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Прогопедия
СообщениеДобавлено: Четверг, 11 Апрель, 2013 13:22 
Аватара пользователя

Зарегистрирован: Пятница, 11 Май, 2007 21:57
Сообщения: 234
Откуда: Украина, Киев
igor писал(а):
Комментарий не должен нести никакой смысловой нагрузки. Видимо, поэтому Вы такое решение обозначили как временное ("на первых порах").
Именно. Это было временным решением.
igor писал(а):
Далее, в качестве развития идеи Вы предлагаете для описания декларативной части использовать табличные формы. Это работает, но это уже не ДРАКОН!
Ну, не совсем не ДРАКОН. ДРАКОН там всё-же останется, в императивной части модуля.
igor писал(а):
Программирование - это не только программная логика, но и сложные структуры данных. Как там у Вирта? "Программы = алгоритмы + данные". Правда, однако, очень проста: в ДРАКОНЕ не было и нет средств для описания (или рисования) декларативной части, и ничего не предлагается в замен.
Есть ещё другая вполне жизненная идея.
Представьте, что у Вас есть обычный модуль на любом языке программирования. В модуле традиционным способом описаны различные типы данных, реализованы какие-то процедуры... И где-то в тексте в закоментированном блоке находится ДРАКОН-схема в компактном текстовом представлении (XML, JSON). В IDE естественно должен быть установлен плагин, "понимающий", что в подобных закоментированных блоках хранятся ДРАКОН-схемы. Плагин должен обеспечивать возможность просмотра, редактирования этих "вшитых" ДРАКОН-схем и обеспечивать генерацию из них исходного кода. т.е. схему открыли, подредактировали, закрыли и автоматически под блоком коментария получили обновлённый код процедуры. Такой плагин был-бы очень полезен даже профессиональным программистам для реализации очень сложных алгоритмов, различных сетевых протоколов и т.д. Для этого нужен легковесный компонент ДРАКОН-редактор который можно было-бы компилировать под разные платформы, собирать в виде ActiveX, .Net компонентов, собирать в виде законченных приложений ДРАКОН-редакторов (такие редакторы были-бы полезны на стадии составления технических заданий при общении с заказчиком, при продумывании архитектуры систем), и т.д. Ничего этого как Вы понимаете нет. Есть только неповоротливая "и.с. Дракон" Тышова и странный редактор Митькина.
igor писал(а):
Получается, что ДРАКОН - недоязык программирования. В этом нет ничего плохого или страшного. Сам по себе ДРАКОН очень ценен. Просто не нужно его выдавать в качестве того, чем он не является.
Получается, что так. ДРАКОН слишком преждевременно стали пиарить, что и показало обсуждение на форуме Компьютерры. На сегодня король голый!

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


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

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


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

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


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

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