Deutsch
Germany.ruФорумы → Архив Досок→ Программирование

Использует кто-нибудь ​DSL ?

428  
Murr патриот16.03.17 15:43
Murr
NEW 16.03.17 15:43 

Использует кто-нибудь ДСЛ ?


В смысле - Domain-Specific Language?


Вроде как интересно, но уперся в невозможность создать проект в Коммуниты Студио...


Кто-то ковырял эту радость?

#1 
pavel-hh коренной житель16.03.17 17:20
pavel-hh
16.03.17 17:20 
в ответ Murr 16.03.17 15:43
С ИКС-ТЕКСТОМ как то "ковырялся", генерился си-код по интерфейсам описанным в ДСЛе. Ощущение создалось - интересная игрушка. Не больше. В том проекте пытались стандартизировать интерфейсы всех модулей. Что бы все сначала описывалось в ДСЛе, а потом только имлементировалось.
Linux is like a Wigwam. No Windows! No Gates! And Apache inside.
#2 
Murr патриот16.03.17 19:00
Murr
NEW 16.03.17 19:00 
в ответ pavel-hh 16.03.17 17:20

Хммм...

Имею мелкософтовские примеры...

Имею статью с Хабра...

И нефига разобраться не получается... только дома, а это не более часа-полутора...


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

#3 
pavel-hh коренной житель17.03.17 04:09
pavel-hh
NEW 17.03.17 04:09 
в ответ Murr 16.03.17 19:00

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

просто когда проект огромный и долгосрочный - то имеет смысл(оправдает вложенные деньги/время), а если небольшой и создалда забыл - то это просто overkill.

Linux is like a Wigwam. No Windows! No Gates! And Apache inside.
#4 
AlexOtt местный житель20.03.17 16:26
AlexOtt
NEW 20.03.17 16:26 
в ответ Murr 16.03.17 15:43

Я использую. В свое время написал несколько lisp-like языков для конкретных задач внутри нашего проекта. На C++ было несколько сотен строк всего


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


Рекомендую полистать книжку DSLs in Action - очень хорошо расписано.

#5 
Murr патриот21.03.17 10:11
Murr
NEW 21.03.17 10:11 
в ответ AlexOtt 20.03.17 16:26

Посмотрел начало.


По ощущениям - немного не то. Т.е. по ДСЛ - там все нормально - внешний, внутренний и т.п. И компилятор написать не проблема.


Но Я пытаюсь освоить мелкософтовский пакет.


В нем, помимо варианта трансляции из ХМЛ в код, есть еще дизанер для языка, конвертер в ХМЛ, кучка опций для графического представления и интеграция со Студией.

Большой пакет информации, без нормальной доки на все элементы.

Тыкаться - тыкаюсь, но пока чисто в американском стиле - без понимания чего и зачем делаю...


Если кто смотрел новую Студию (2017, интересует - Коммунити) - разрешили они в ней работать с ДСЛ или так и придерживают для Про версий?


Да, по ходу дела... Нашел буг в Хроме. Есть опция Save As MHTML... в значении Enabled - запрещает сохранять как MHTML спок

#6 
Murr патриот21.03.17 10:14
Murr
NEW 21.03.17 10:14 
в ответ pavel-hh 17.03.17 04:09

и долгосрочный

-----

Вполне.

Тем более, что ставится задача не решить какую-то задачу, а сделать инструмент для решения.

#7 
Murr патриот23.03.17 13:58
Murr
NEW 23.03.17 13:58 
в ответ Murr 21.03.17 10:14

Н.П.


Ситуация:

- комп, Вин 8.1, последние апдейты - 2-3 месяца назад

- две студии - 2010 про и 2015 коммюнити

- куча другого софта

- мелкософтовские примеры для ДСЛ, включая сетп-бай-степ руководства


В 2010 про - что-то шевелится, но уже отвык от ее реакции на тоуч-скриин.

В 2015 ком - все обламывается, хотя инсталированы СДК для каждой версии студии...


В 2010:


Загружаю готовый пример Цирцуитс. Все функционирует - можно поместить транзистор на форму и соединить с другими элементами.


Генерирую визардом дефаултовый проект в Студии. Тыкаю в точности как написано в документации - а там написано - После создания проекта визардом, сохраните его, нажмите Трансформ алл темплатес и нажмите Ф5 для запуска тестовой Студии. Т.е. НИКАКОГО ручного кодинга или изменений чего-либо руками (т.е. моих ошибок быть не может) - все по умолчанию.


Вопрос - Какого черта в дефаултной модели нет тех двух элементов которые в ней должны быть? А их - нету - тоолбох пустой...


Ну что - мне снова сказать что-нибудь про билли? А ведь инструментарию уже полторы пятилетки...
#8 
Murr патриот25.03.17 00:55
Murr
NEW 25.03.17 00:55 
в ответ Murr 23.03.17 13:58

Ок. Победюлил эту часть - надо двигаться дальше...

#9