Сборка программы из "кубиков" - мышью. Язык VPL и другие
От: jangle  
Дата: 10.09.08 09:19
Оценка:
Язык программирования Microsoft Visual Programming Language (VPL) — это средство разработки приложений, в котором используется модель программирования на основе графического потока данных, а не на базе логики управления, которая обычно применяется в программировании. Программа с использованием потока данных — это не набор последовательно выполняемых обязательных команд. Она больше напоминает коллектив рабочих на сборочной линии, которые делают указанную им работу по мере поступления деталей. В результате язык VPL хорошо подходит для программирования различных сценариев с параллельной или распределенной обработкой данных.

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




Интересно, имеет такой язык будущее? Дело в том, что я тоже пытаюсь создать подобный скриптовый язык, для автоматизации в Windows
Re: Сборка программы из "кубиков" - мышью. Язык VPL и другие
От: mkizub Литва http://symade.tigris.org
Дата: 10.09.08 09:35
Оценка: +1
Здравствуйте, jangle, Вы писали:

J>Интересно, имеет такой язык будущее?


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

J>Дело в том, что я тоже пытаюсь создать подобный скриптовый язык, для автоматизации в Windows


Не язык надо создавать, а среду программирования, в которой подобные языки будут реализованы.
SOP & SymADE: http://symade.tigris.org , блог http://mkizub.livejournal.com
Re[2]: Сборка программы из "кубиков" - мышью. Язык VPL и дру
От: jangle  
Дата: 10.09.08 09:42
Оценка: :)
M>Как только человек хоть немного разберётся с языком — ему будет удобнее текстовое или псевдо-текстовое (с форматированием, с иконками) представление.

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

Re[3]: Сборка программы из "кубиков" - мышью. Язык VPL и дру
От: fddima  
Дата: 10.09.08 09:49
Оценка: +7
Здравствуйте, jangle, Вы писали:

int Test = 1;
while (Test < 10) {
    Test++;
}
print("The number is " + Test);


я так понял что это вот это где-то записано? Мамачки... Я даже не уверен что понял что-то в том рисунке, что за странный Merge?
Ну и места занимает многовато...
Re[3]: Сборка программы из "кубиков" - мышью. Язык VPL и дру
От: mkizub Литва http://symade.tigris.org
Дата: 10.09.08 10:02
Оценка:
Здравствуйте, jangle, Вы писали:

M>>Как только человек хоть немного разберётся с языком — ему будет удобнее текстовое или псевдо-текстовое (с форматированием, с иконками) представление.


J>А мне графическое представление больше нравится, наверное из-за того, что я люблю рисованием заниматься.

J>Вот кусок программы, с одного взгяда понятно как это работает, даже код читать не надо

Так я же не говорю, что это вообще плохо. Для первого знакомства с программированием и для некоторых людей — удобно.
Если на этом остановится — то пусть так и будет. А если человек дальше начнёт программировать, писать более сложные программы — такое представление станет неудобным. По крайней мере, пока не изобретут телепатическое общение с компьютером.

Другое дело, если одну и ту-же программу можно по разному отобразить. Отобразить в виде диаграммы, или в виде текста, отобразить одни части более детально, другие поверхностно и т.п. То есть отделить саму программу от способа её отображения. Тогда переход от графического отображения к текстовому не потребует полного переучивания. И наборот, есть части программы которые удобней отобразить, скажем, пиктограммками, а не словами, или нарисовать стрелочки и пр. Поборники строго-текстового представления программы ведь пользуются подсветкой синтаксиса — разными цветами и шрифтами. Это же удобно. Так же было-бы удобно и некоторые части программы отображать в виде иконок или стрелок.
А идея этого VPL, как я понял, заключается в том чтоб всё и всегда отображать графикой. Что ещё менее удобно, чем всё и всегда отображать текстом.
SOP & SymADE: http://symade.tigris.org , блог http://mkizub.livejournal.com
Re: Сборка программы из "кубиков" - мышью. Язык VPL и другие
От: indee  
Дата: 10.09.08 10:06
Оценка: 4 (2)
Насчет будующего именно этого языка трудно сказать,
но подобные языки существуют десятилетиями, например программирование PLS
(LADDER BUILDER) программирование логических цепей или контроллеров.
Такие языки незаменимы в робототехнике например http://www.paa.co.uk/labauto/products/overlord/overlord2.asp
Re[4]: Сборка программы из "кубиков" - мышью. Язык VPL и дру
От: jangle  
Дата: 10.09.08 10:08
Оценка:
Здравствуйте, fddima, Вы писали:


F>я так понял что это вот это где-то записано? Мамачки... Я даже не уверен что понял что-то в том рисунке, что за странный Merge?


Merge это для организации цикла, место куда передается управление
Re: Сборка программы из "кубиков" - мышью. Язык VPL и другие
От: mishaa Россия http://kmmbvnr.livejournal.com
Дата: 10.09.08 10:37
Оценка: 6 (1)
Здравствуйте, jangle, Вы писали:

Scratch — интерпретатор «детского» языка программирования, придуманный в Media Lab (лаборатории эргономики) Массачусетского технологического института. Программа на языке Scratch составляется из блоков, которые вы перетаскиваете мышью и складываете вместе, как кусочки мозаики. Блоки представляют собой выражения, переменные и императивные программные конструкции. Эта среда настолько проста, что написать небольшую игру вы сможете за несколько минут. А для обучения программированию детей ничего проще, наверное, еще и не придумано.

Графическое представление этого детского языка, мне нравится гораздо больше чем те блоки и стрелочки принятые в более "взрослых" вариантах.

J>Язык программирования Microsoft Visual Programming Language (VPL)...

Это вариант от MS лишь бы обшестандартный BPEL не реализовывать?
-- Главное про деструктор копирования не забыть --
Re: Сборка программы из "кубиков" - мышью. Язык VPL и другие
От: mishaa Россия http://kmmbvnr.livejournal.com
Дата: 10.09.08 10:42
Оценка:
Здравствуйте, jangle, Вы писали:

J>Язык программирования Microsoft Visual Programming Language (VPL)...


Для меня основной недостаток таких визуальных сред, это то они заставляют действовать пользователя по модели глагол->существительное. Тогда как анализируя предметную область гораздо проще плюхнуть сущность и подумать что с ней надо сделать, т.е. имхо проще действовать наоборот, по схеме существительное->глагол.
-- Главное про деструктор копирования не забыть --
Re[2]: Сборка программы из "кубиков" - мышью. Язык VPL и дру
От: jangle  
Дата: 10.09.08 11:05
Оценка:
Здравствуйте, mishaa, Вы писали:

M>Здравствуйте, jangle, Вы писали:


M>Scratch — интерпретатор «детского» языка программирования, придуманный в Media Lab


Прикольный язык. Думаю, за такими системами будущее!
Re[2]: Сборка программы из "кубиков" - мышью. Язык VPL и дру
От: ArhAngelVezel Россия  
Дата: 10.09.08 11:59
Оценка:
Здравствуйте, indee, Вы писали:

I> Такие языки незаменимы в робототехнике


Так точно. Такие языки необходимы для разработки реализации многопоточной системы конечных автоматов. А это такие сферы:
— программирование логический цепей
— программирование робототехники
— программирование компьютерных моделей.
— и т.д.
Т.е. там где человек, это внешний фактор на систему, а не её винтик. Если еще точнее сказать то это автоматические системы, а не автоматизированные.
Re: Сборка программы из "кубиков" - мышью. Язык VPL и другие
От: Кодёнок  
Дата: 10.09.08 12:10
Оценка: 1 (1) +3
Здравствуйте, jangle, Вы писали:

J>Язык VPL понятен для начинающих программистов, которые знакомы с такими концепциями, как переменные и логические операции.


Интересно, откуда это бред постоянно всплывает? Если у вас, значит, графика, мышка и дрэг-н-дроп, то оно сразу становится интуитивно понятным, легким в использовании и доступным новичкам? То, что на самом деле понятно новичкам — это ясные объяснения короткими порциями, и предоставление только нужной информации вместо пичканья его мегатоннами документации в духе «вот MSDN, в нем все есть!!!».

J>Интересно, имеет такой язык будущее? Дело в том, что я тоже пытаюсь создать подобный скриптовый язык, для автоматизации в Windows


Это как Apple Automator? Имел бы, если бы все приложения Windows следовали одной спецификации. А так ты кроме соединения плохо документированных COM-объектов (которые реализуют далеко не все) ничего предложить не сможешь.
Re: Сборка программы из "кубиков" - мышью. Язык VPL и другие
От: Maxim Golov Голландия  
Дата: 10.09.08 12:18
Оценка:
J>Интересно, имеет такой язык будущее? Дело в том, что я тоже пытаюсь создать подобный скриптовый язык, для автоматизации в Windows

У графических систем есть большая трудность — это сравнение изменений между двумя версиями. Для обучения (и на этапе продажи системы заказчику ) это не очень важно, но для коммерческого использования это может оказаться очень, очень критичным.
Re: Сборка программы из "кубиков" - мышью. Язык VPL и другие
От: Mamut Швеция http://dmitriid.com
Дата: 10.09.08 12:42
Оценка: +4
J>Язык VPL понятен для начинающих программистов, которые знакомы с такими концепциями, как переменные и логические операции.

Нифига он не понятен. Именно из-за этого. Потому что кому-то понадобилось ясные и четкие инструкции вроде for, = (в смысле присваивание), if и прочие не упростить, а усложнить. Потому что сами слова никуда не делись, появилась куча вспомогательных слов (Variable, Data), были заменены какие-то термины (Merge, Join), все это еще позамалевывалось квадратиками и стрелочками.

Похоже на гибрид блок-схем и UML. Будущего у такого нет, потому что блок-схемами и умлем многого не нарисуешь — замучаешься все это потом на листах A0 печатать и пытаться понять, что с чем связано.

Для мелкого и заранее определенного чего-то пожалуйста. Среди популярных примеров Yahoo! Pipes и Apple Automator


dmitriid.comGitHubLinkedIn
Re[3]: Сборка программы из "кубиков" - мышью. Язык VPL и дру
От: Mamut Швеция http://dmitriid.com
Дата: 10.09.08 12:44
Оценка:
I>> Такие языки незаменимы в робототехнике

AAV>Так точно. Такие языки необходимы для разработки реализации многопоточной системы конечных автоматов. А это такие сферы:

AAV>- программирование робототехники

Интересно, что VPL для этого и предназначен: http://msdn.microsoft.com/en-us/robotics/aa731536.aspx


dmitriid.comGitHubLinkedIn
Re: Сборка программы из "кубиков" - мышью. Язык VPL и другие
От: z00n  
Дата: 10.09.08 12:51
Оценка:
J>Интересно, имеет такой язык будущее? Дело в том, что я тоже пытаюсь создать подобный скриптовый язык, для автоматизации в Windows
Такие языки давно сущствуют и комерциализованы. Lustre- Estrel-SCADE, функционально-реактивное программирование, CAL Gem Cutter.
http://upload.wikimedia.org/wikipedia/en/7/71/SCADE_Suite_6_in_Windows_XP.png

Подобный подход чаcто применяют в пакетах 3D графики: Virtools, XSI 7.0 ICE
Re[2]: Сборка программы из "кубиков" - мышью. Язык VPL и дру
От: z00n  
Дата: 10.09.08 13:08
Оценка:
Здравствуйте, Mamut, Вы писали:

J>>Язык VPL понятен для начинающих программистов, которые знакомы с такими концепциями, как переменные и логические операции.


M>Нифига он не понятен. Именно из-за этого. Потому что кому-то понадобилось ясные и четкие инструкции вроде for, = (в смысле присваивание), if и прочие не упростить, а усложнить. Потому что сами слова никуда не делись, появилась куча вспомогательных слов (Variable, Data), были заменены какие-то термины (Merge, Join), все это еще позамалевывалось квадратиками и стрелочками.


M>Похоже на гибрид блок-схем и UML.


Забавно, там где вы видите UML — я вижу Dataflow programming
На SCADA пишут изрядного размера программы для mission-critical и ничего. Не уверен, правда, что в там есть присваивание или for в привычном понимании
Re[3]: Сборка программы из "кубиков" - мышью. Язык VPL и дру
От: Mamut Швеция http://dmitriid.com
Дата: 10.09.08 13:10
Оценка:
Z>Забавно, там где вы видите UML — я вижу Dataflow programming
Z>На SCADA пишут изрядного размера программы для mission-critical и ничего. Не уверен, правда, что в там есть присваивание или for в привычном понимании

Ну, как тут уже заметили, в некоторых специфических задачах оно может быть полезно Но как, грубо говоря, язык общего назначения — никак


dmitriid.comGitHubLinkedIn
Re[2]: Сборка программы из "кубиков" - мышью. Язык VPL и дру
От: Lloyd Россия  
Дата: 10.09.08 13:24
Оценка:
Здравствуйте, mishaa, Вы писали:

J>>Язык программирования Microsoft Visual Programming Language (VPL)...

M>Это вариант от MS лишь бы обшестандартный BPEL не реализовывать?

Будет бипел в следующем WF.
... << RSDN@Home 1.2.0 alpha 4 rev. 1111>>
Re[2]: Сборка программы из "кубиков" - мышью. Язык VPL и дру
От: Plague Россия 177230800
Дата: 10.09.08 13:33
Оценка:
Здравствуйте, z00n, Вы писали:

Z>Подобный подход чаcто применяют в пакетах 3D графики: Virtools, XSI 7.0 ICE


Я бы сюда добавил операторы 3Д пакета Houdini. Говорят, что это очень удобный и быстрый в программировании/настройке подход.
... << RSDN@Home 1.2.0 alpha rev. 787>>
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.