|
|
|
А как бы Вы реализовали интерпретатор DSL на Java?
|
|||
|---|---|---|---|
|
#18+
kT_________парни.а подскажите где можно примеры красивые найти ссловарей и описание развернутое.например: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. http://javatutor.net/books/tip/complex_system_states ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2013, 10:06:56 |
|
||
|
А как бы Вы реализовали интерпретатор DSL на Java?
|
|||
|---|---|---|---|
|
#18+
кто может рассказать или показать интеграцию хтекст и спринга?) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2013, 15:44:04 |
|
||
|
А как бы Вы реализовали интерпретатор DSL на Java?
|
|||
|---|---|---|---|
|
#18+
Xtext - с синтаксисом всё понятно, проблем нет. Куча всего генерится, валидаторы, УИ, тесты, генераторы. Конечно язык там (например смотрим генератор, который в деволтном проекте) ..тема на любителя. Из плюсов, для дсл-ного языка автоподстановка, подсветка синтаксиса, всплывающие подсказки (если их написать ;)), автообновление кода после изменений в дсл, всякие генераторы схем и прочее что можно реализовать на платформе Эклипса)). Язык там xtend если я правильно понимаю). Действительно на любителя: Но вот что больше всего интересно как это прикрутить к Спрингу, стаковерфлов говорит так: Коллеги, кто сталкивался или м б попадались исходники, подскажите пожалуйста. п.с. Инфы достаточно по библиотеке, как видео так и пдф-док, т.ч. про недокументированность это я погорячился =(. Но про интеграцию нет инфы, правда неоднократно попадалось как к Гугл_Джус прикрутить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2013, 16:04:22 |
|
||
|
А как бы Вы реализовали интерпретатор DSL на Java?
|
|||
|---|---|---|---|
|
#18+
kT_________Xtext - с синтаксисом всё понятно, проблем нет. Куча всего генерится, валидаторы, УИ, тесты, генераторы. Конечно язык там (например смотрим генератор, который в деволтном проекте) ..тема на любителя. Из плюсов, для дсл-ного языка автоподстановка, подсветка синтаксиса, всплывающие подсказки (если их написать ;)), автообновление кода после изменений в дсл, всякие генераторы схем и прочее что можно реализовать на платформе Эклипса)). Язык там xtend если я правильно понимаю). Действительно на любителя: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. Но вот что больше всего интересно как это прикрутить к Спрингу, стаковерфлов говорит так: Код: java 1. 2. 3. 4. 5. 6. 7. oO Коллеги, кто сталкивался или м б попадались исходники, подскажите пожалуйста. п.с. Инфы достаточно по библиотеке, как видео так и пдф-док, т.ч. про недокументированность это я погорячился =(. Но про интеграцию нет инфы, правда неоднократно попадалось как к Гугл_Джус прикрутить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2013, 16:08:27 |
|
||
|
А как бы Вы реализовали интерпретатор DSL на Java?
|
|||
|---|---|---|---|
|
#18+
ОзверинkT_________парни.а подскажите где можно примеры красивые найти ссловарей и описание развернутое.например: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. http://javatutor.net/books/tip/complex_system_states благодарю! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2013, 16:10:56 |
|
||
|
А как бы Вы реализовали интерпретатор DSL на Java?
|
|||
|---|---|---|---|
|
#18+
Коллеги, помоги! Словил клин =( Не могу найти примеры интеграции Хтекст и Спринга, туториалы пишут что есть четыре варианта вписать ДСЛ в ява код, не могу осилить зоопарк этих Хтекст, Хпенд, Хбайс, Хтенд. Поделитесь опытом, плиз. Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2013, 13:17:05 |
|
||
|
А как бы Вы реализовали интерпретатор DSL на Java?
|
|||
|---|---|---|---|
|
#18+
Ребята, прошу прощения за трололо, но подниму. Т.к. актуально, и надеюсь что как-то решим этот вопрос.Спасибо за понимание) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.07.2013, 17:17:11 |
|
||
|
А как бы Вы реализовали интерпретатор DSL на Java?
|
|||
|---|---|---|---|
|
#18+
kT_________Ребята, прошу прощения за трололо, но подниму. Т.к. актуально, и надеюсь что как-то решим этот вопрос.Спасибо за понимание) на рсдн.ру спроси еще ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2013, 01:22:38 |
|
||
|
А как бы Вы реализовали интерпретатор DSL на Java?
|
|||
|---|---|---|---|
|
#18+
kT_________, на счёт Xtext ничего не скажу, не использовал. Но Вы толком не обрисовали суть задачи, поэтому никто толком ничего и не советует. Возможно, м.б. проще всё сделать самому, вроде как, ANTLR и JavaCC считаются классикой. Или взять готовое: JRuby, Jython, Scala и т.п., или Groovy, который скриптовый и "поближе" к java, имеет кучу выкрутасов для DSL ( Builders , Command chains или здесь и т.п.). Если нужен разбор дампов данных, или разбор большого потока и т.п., то м.б. составление глобального AST, многократная его обработка, генерация огромного байт-кода (т.е. всё впихивать в исходники и бинарные классы) - не тот сценарий. Возможно лучше использовать потоковый парсер токенов. Вот здесь я выкладывал пример подобного парсера для ручной работы, можно найти аналог на java или лучше реализовать самому. Если при этом нужна поддержка несложных вычислений, то можно подключить те же скриптовые системы а-ля Rhino, Groovy или BeanShell, или простые интерпретаторы (например, здесь раньше рекомендовали org.apache.commons.jexl2), или генерировать jvm-код, например, через ASM ( презентация ). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2013, 15:10:35 |
|
||
|
А как бы Вы реализовали интерпретатор DSL на Java?
|
|||
|---|---|---|---|
|
#18+
PSV100kT_________, на счёт Xtext ничего не скажу, не использовал. Но Вы толком не обрисовали суть задачи, поэтому никто толком ничего и не советует. Возможно, м.б. проще всё сделать самому, вроде как, ANTLR и JavaCC считаются классикой. Или взять готовое: JRuby, Jython, Scala и т.п., или Groovy, который скриптовый и "поближе" к java, имеет кучу выкрутасов для DSL ( Builders , Command chains или здесь и т.п.). Если нужен разбор дампов данных, или разбор большого потока и т.п., то м.б. составление глобального AST, многократная его обработка, генерация огромного байт-кода (т.е. всё впихивать в исходники и бинарные классы) - не тот сценарий. Возможно лучше использовать потоковый парсер токенов. Вот здесь я выкладывал пример подобного парсера для ручной работы, можно найти аналог на java или лучше реализовать самому. Если при этом нужна поддержка несложных вычислений, то можно подключить те же скриптовые системы а-ля Rhino, Groovy или BeanShell, или простые интерпретаторы (например, здесь раньше рекомендовали org.apache.commons.jexl2), или генерировать jvm-код, например, через ASM ( презентация ). душевно!оч благодарен. вопрос решился на половину, пару ночей и готово. Хтекс - порадовал, идет в комплекте с Хтенд (заодно можно ознакомиться с Хкоре) с задачей конвертить один тип данных в другой справляется прекрасно, так ещё куча плюх, валидаторов, парсеров и т.п., короче генериться всё, а руками при необходимости допиливается. Работает фреймворк как мета-метапрограммирование. Генеря Хтенд (диалект Явы), предлагается уже им генерить Ява_код, создать проект заранее или нагенерить его на Хтенд - не важно, бле, какая же это круть!!! Представьте как можно на лету заворачивать доменные сущности в верблюда и т.п., + есть на гуглкоде проект плюшки Хтекста для Ру)) . Но работает это на Eclipse Modeling Project (EMP), и в стандэлон как-то запустить нагенерированный код конечно можно, но если таких парсеров несколько сотен, то утомительно писать ... остался один вопрос.. как пистаь много и быстро простых парсеров?? АНТРЛ??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2013, 21:11:43 |
|
||
|
А как бы Вы реализовали интерпретатор DSL на Java?
|
|||
|---|---|---|---|
|
#18+
kT_________..., но если таких парсеров несколько сотен, то утомительно писать ... остался один вопрос.. как пистаь много и быстро простых парсеров?? АНТРЛ??? Имхо, нужен фреймворк, который позволяет задавать правила разбора модульно, т.е. часть правил можно обобщить и многократно подключать в других синтаксических модулях. Грамматики а-ля BNF/PEG задаются в виде спец-DSL или через java/scala-код, нужно оценить, как удобнее. Кроме ANTLR, имхо, можно глянуть на Rats!, JParsec, parboiled и др. Или, чем возиться с проблемами и особенностями сторонней системы, м.б. проще реализовать ручной разбор через простой и настраиваемый парсер лексем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.07.2013, 15:25:44 |
|
||
|
А как бы Вы реализовали интерпретатор DSL на Java?
|
|||
|---|---|---|---|
|
#18+
PSV100kT_________..., но если таких парсеров несколько сотен, то утомительно писать ... остался один вопрос.. как пистаь много и быстро простых парсеров?? АНТРЛ??? Имхо, нужен фреймворк, который позволяет задавать правила разбора модульно, т.е. часть правил можно обобщить и многократно подключать в других синтаксических модулях. Грамматики а-ля BNF/PEG задаются в виде спец-DSL или через java/scala-код, нужно оценить, как удобнее. Кроме ANTLR, имхо, можно глянуть на Rats!, JParsec, parboiled и др. Или, чем возиться с проблемами и особенностями сторонней системы, м.б. проще реализовать ручной разбор через простой и настраиваемый парсер лексем. А если так: ДСЛ делается на Хтексте, потом генерится Хтенд_код, в котором руками дописать не только генерацию Ява_кода, а ещё Спирита на С++, жесть? изврат? И подключать парсеры нагенерированные на С++ ..ну там мммм, ка кпростые утилиты))) надо парсить потоки вывода, а Ява_коду отдавать через WSDL, который генерить автоматом.. как со стороны Явы так и со стороны С++, первичные парсеры на плюсах будут бодрее чем на Яве. Получается отдельно собирать Ява проект и С++, но эт можно заскриптовать, не проблема. ДО конца не ясно чем данные передавать, WSDL или домеными сокетами.. идеально в БД писать, но МуСКЛ С++ АПИ ..истинное зло))) А другие языки/диалекты конечно норм, но буливар двоих не вынесет;) Хочу Спирит. Создам отдельный топик в С++. Не закрывайте пока этот. Спасбо. п.с. Непозволительная роскошь каждую неделю учить новый синтаксис(( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.07.2013, 17:38:13 |
|
||
|
А как бы Вы реализовали интерпретатор DSL на Java?
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.07.2013, 18:01:50 |
|
||
|
А как бы Вы реализовали интерпретатор DSL на Java?
|
|||
|---|---|---|---|
|
#18+
kT_________PSV100пропущено... Имхо, нужен фреймворк, который позволяет задавать правила разбора модульно, т.е. часть правил можно обобщить и многократно подключать в других синтаксических модулях. Грамматики а-ля BNF/PEG задаются в виде спец-DSL или через java/scala-код, нужно оценить, как удобнее. Кроме ANTLR, имхо, можно глянуть на Rats!, JParsec, parboiled и др. Или, чем возиться с проблемами и особенностями сторонней системы, м.б. проще реализовать ручной разбор через простой и настраиваемый парсер лексем. А если так: ДСЛ делается на Хтексте, потом генерится Хтенд_код, в котором руками дописать не только генерацию Ява_кода, а ещё Спирита на С++, жесть? изврат? И подключать парсеры нагенерированные на С++ ..ну там мммм, ка кпростые утилиты))) надо парсить потоки вывода, а Ява_коду отдавать через WSDL, который генерить автоматом.. как со стороны Явы так и со стороны С++, первичные парсеры на плюсах будут бодрее чем на Яве. Получается отдельно собирать Ява проект и С++, но эт можно заскриптовать, не проблема. ДО конца не ясно чем данные передавать, WSDL или домеными сокетами.. идеально в БД писать, но МуСКЛ С++ АПИ ..истинное зло))) А другие языки/диалекты конечно норм, но буливар двоих не вынесет;) Хочу Спирит. Создам отдельный топик в С++. Не закрывайте пока этот. Спасбо. п.с. Непозволительная роскошь каждую неделю учить новый синтаксис(( не утилиты, обычные библиотеки;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.07.2013, 18:03:25 |
|
||
|
А как бы Вы реализовали интерпретатор DSL на Java?
|
|||
|---|---|---|---|
|
#18+
Ага! Можно через файлы во временной файловой системе либо через CMS (stands for C++ Messaging Service) is a JMS-like API for C++ for interfacing with Message Brokers such as Apache ActiveMQ. Ппц, но только молодость только хардкор! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.07.2013, 19:32:02 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=38337354&tid=2128960]: |
0ms |
get settings: |
19ms |
get forum list: |
28ms |
check forum access: |
8ms |
check topic access: |
8ms |
track hit: |
64ms |
get topic data: |
21ms |
get forum data: |
5ms |
get page messages: |
103ms |
get tp. blocked users: |
3ms |
| others: | 342ms |
| total: | 601ms |

| 0 / 0 |
