LINUX.ORG.RU

MPS от JetBrains

 , ,


0

1

После более пяти лет разработки, JetBrains опубликовали первую бета-версию своей Meta Programming System.

MPS предназначена для разработки проблемно-ориентированных языков (DSL) в среде JVM.

>>> Подробности

anonymous

Проверено: anonymous_incognito ()

Ответ на: комментарий от theos

> писать ObjectPropertyName вместо Object.Property.Name =) Вот такой изврат я считаю не КС. просто использую "простой" смысл "контекстно-свободная", тоесть синтаксис не зависит от семантики. расплывчато, но надеюсь достаточно)

о. то есть, такая шкала с градусником: на одной стороне REBOL с диалектами, где всё что внутри блока зависит от языка, указанного в заголовке блока (названии диалекта); на другой стороне лисп, где синтаксис не зависит от семантики, потому что синтаксиса нет :))

anonymous
()
Ответ на: комментарий от anonymous

> REPL (напомню, это такая текстовая консолька, в которую вводят команды, без возможности хождения по хистори, элементарных комплишенов и зачастую без банального редактирования)

дядь, выйди из анабиоза. Есть там и хистори, и комплишен, и редактирование. Если из емакса через SLIME подключаться. Понимания семантики правда нет, поэтому в комплишен попадается то, что набираешь, а не DWIM.

anonymous
()
Ответ на: комментарий от www_linux_org_ru

> анонимус, напиши на МПС quasiqoute или прекрати пафос.

а макросы в гиниратырях МПС это разве не quasiquote?

anonymous
()
Ответ на: комментарий от gods-little-toy

>>Для кого и чего удобнее? Чбоы программить - да, удобнее. А что бы создавать доменно спецефичны языки _моделирования_ - не удобнее. Есть подозрение на программизм головного мозга.

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

>не программизм мозга, а наличие оного. Текстовое представление всегда удобнее - его можно говорить, комментировать в почте и тд. Разницу между двумя версиями текста легко увидеть. А вот разница между двумя, например, pdf-ками как? Открыть 2 окна рядом и сколлить вверх-вниз??

откройте для себя структурный diff. *структурный* = понимает содержимое. Разницу между двумя SVG картинками тоже удобнее увидеть наглядно, бок-о-бок, или мигаюче, наложив картинки друг на друга. А не переводить в XML и искать там текстовые диффы, и игнорировать изменения в количестве пробелов, комментариях, и т.п.

anonymous
()

Предлагаю, следую традиция ЛОРа, хоть как то отвлечься и обсдить то рыже существо на лого МПСа. Кто оно? o_O

theos ★★★
()
Ответ на: комментарий от anonymous

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

Вы меня не правильно полняли, я там дальше привёл в качестве примера языка моделирования - рисвание электросхем. Тоесть я обсждал язык моделирования, а не метамодлирования. Возможно моделирование не такое хорошее слово, и лучше "проектирование".

theos ★★★
()
Ответ на: комментарий от theos

> Да, если я проектирую 'электросхемы, мне удобнее эти схемы рисовать, а не описывать в dot стиле. Нагляднее както. А это как раз Domain Specific Modeling language.

рисовать удобнее, да. Но если не рисовать ту же схему на коленке, а сдавать для наладки/запуска, у нее есть поля "разработал/проверил", есть ГОСТы, которым она должна соответствовать, есть неявные требования технологов и сметчиков, что нельзя сюда засунуть *любую* микросхему, которую пожелает "творческий полёт свободной мысли" (или как там у Пелевина в пустоте). То есть, "проектирование" оно ничем никому не обязано, пока это эскиз-набросок на салфетке. Потом оно начинает обрастать скучными подробностями, без которых, увы, никак. И вопрос в том, сложно эти подробности приделать, или наоборот, просто и технологично.

anonymous
()
Ответ на: комментарий от theos

то есть, "проектирование" как и редактор это только одно представление.

anonymous
()
Ответ на: комментарий от theos

> Предлагаю, следую традиция ЛОРа, хоть как то отвлечься и обсдить то рыже существо на лого МПСа. Кто оно? o_O

и почему иконка называется JB? ))

anonymous
()
Ответ на: комментарий от theos

> Предлагаю, следую традиция ЛОРа, хоть как то отвлечься и обсдить то рыже существо на лого МПСа. Кто оно? o_O

Это белочка, неоднократно посещавшая авторов MPS во время работы %)

По ссылке не ходил.

tailgunner ★★★★★
()
Ответ на: комментарий от anonymous

Это смотря насколько вырязителен конкретный DSML. Если говорить о УМЛ - да, это разве что "набросок на солфетке". Ибо не Domain Specific.

theos ★★★
()

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

p.s. а сама java случаем не DSL ;)

dimon555 ★★★★★
()
Ответ на: комментарий от anonymous

Скажи мне, быдло тупое, ты честно slime не видело, иди троллишь как последняя мразь?

anonymous
()
Ответ на: комментарий от r

> Есть аналог MPS symade.com (svn и symade.org кудато провалился) - отдельный подобный проект от автора kiev compiler.

У меня сайт работает (а где svn?). Я так полагал что автор забил на свои идеи -- оказывается нет -- хорошо, надо глянуть.

www_linux_org_ru ★★★★★
()
Ответ на: комментарий от anonymous

Пока что делать то же, что может делать mbase (в котором есть некоторые элементы настоящего Лиспа) этот MPS не умеет. И Microsoft Oslo тоже не умеет. Так что Лисп рулит и педалит.

anonymous
()
Ответ на: комментарий от tailgunner

Ниче не знаю про их продукты вообще, но Питерская тусовка Хаскеллистов собирается именно у них (см. ru_lambda в ЖэЖэ).

anonymous
()
Ответ на: комментарий от dimon555

Ну давайте всё в писать в nano ;) Ты думаешь что программы на ДСЛ - это максимум 50 строчек? Представь большой проект, для каждой части - свои ДСЛ, при это всё это работает вместе. Вот для этого нужно ИДЕ.

theos ★★★
()
Ответ на: комментарий от anonymous

>Пока что делать то же, что может делать mbase (в котором есть некоторые элементы настоящего Лиспа) этот MPS не умеет.

Примеры, пожалуйста.

theos ★★★
()

Microsoft Oslo, Opensource Bobro Vilfred edition..

anonymous
()
Ответ на: комментарий от thevery

> People, you have never heard of Lisp?

Бля ещё один, иди ветку читай. Тут дело в IDE для DSL.

anonymous
()
Ответ на: комментарий от www_linux_org_ru

>У меня сайт работает (а где svn?).

.com работает .org с свном пропал. В понедельник у него спошу.

>Я так полагал что автор забил на свои идеи -- оказывается нет -- хорошо, надо глянуть.


Не. Даже проекты с помощью него делает.

r ★★★★★
()
Ответ на: комментарий от anonymous

> "Профессор" Луговскер несколько лет пилил свой невнятный DSL Engine, да так и не допилил.

Потому что понты и черезмерно раздутое ЧСВ (см. http://lugovsky.narod.ru/prog.html) ничего не дают для реальной работы, нацеленной на реальной результат. :)

Молодцы Jet-брейны! Хоть и не очень я большой поклонник ИДЕИ, но здесь ребята явно постарались.

Bioreactor ★★★★★
()
Ответ на: комментарий от Bioreactor

> Ничего не понял! Учите албанский.

Ты не понял - тебе и учить.

Безотносительно к качеству их английского, фраза "We have taken look at lisp, we know what it is" рулит безмерно. Это гораздо круче, чем "мне Иойша напел" %)

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

> Ты не понял - тебе и учить.

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

> фраза "We have taken look at lisp, we know what it is" рулит безмерно

РуЛит. Рулит. Еще как рулит, учитывая, что LISP пишется как "LISP" или "Lisp", но никак не "lisp"

(to) lisp - дословно "шепелявить", (a) lisp - "шепелявость", со строчной буквы - это в Америкосии означает произносить "z" и "s" как "th". Запомните это, чтобы следующий раз не облажаться.

:))))))))))))))))))))))))))))))))))))))))))

Bioreactor ★★★★★
()
Ответ на: комментарий от Bioreactor

> (a) lisp - "шепелявость", со строчной буквы - это в Америкосии означает произносить "z" и "s" как "th". Запомните это, чтобы следующий раз не облажаться.

Зайди на JetBrains, скажи им. И comp.lang.lisp тоже просвети :D

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

А вот Васе-куну ссылочка http://en.wikipedia.org/wiki/Gay_lisp ROTFL! Это посильнее "we have taken look" вместо "we have taken А look" будет. LOL! Вася-кун, приезжайте из своего Приозерска таки на Брайтон. :))) Таки уже можно малька подучиться не только Джаве, но и Инлишу. :)

Bioreactor ★★★★★
()
Ответ на: комментарий от tailgunner

Ну все, теперь можно лисперов с ЧСВ "> 9000" (c) троллить этой ссылочкой. :)) Масса лулзов обеспечена. :)))

Bioreactor ★★★★★
()
Ответ на: комментарий от Bioreactor

Это опять ты, ничтожество?

До тебя всё не доходит, что ты быдло, а те, кто что-то серьёзное и новое делают - вовсе не быдло ни разу? Те, кто играет с plan9 или inferno - не быдло, а те, кто пишет на жабе и не желает ничего другого знать - быдло и мразь.

anonymous
()
Ответ на: комментарий от anonymous

> Не надо! JetBrains - анклав махровых хаскеллистов.

Почему же они тогда свои продукты на хаскелле не пишут? Вместо того, чтобы махрово дрочить на него.

anonymous
()

Привет всезнающий Алл!!!

А для чего нужно создавать DSL? в каких случаях нужны эти DSL а когда нет?

К примеру в приложении задаются правила для рассчета цены товара. Нужно ли на эти правила создавать DLS?

Правила: Если арбуз то цена 5р; если фрукт то +3р; если ягода, но не арбуз +3р. И так далее.

VoDA ★★
()
Ответ на: комментарий от VoDA

Если тебе нужно потратить X часов на написание DSLя, и Y часов на написание кода или внесения данных используя этот DSL, а работа с обычными языками/средствами займёт Z часов, то при X+Y < Z имеет смысл написать этот DSL. Если он ещё не написан ;)

mkz
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.