наиболее популярное решение для парсинга
От: koenig  
Дата: 03.07.18 11:54
Оценка:
я сейчас немножко странную вещь спрошу, но тем не менее
вот, скажем, есть задача — распарсить сорцы на каком-то кустарном языке программирования(он уже есть, менять не могу) и что-то там с результатом сделать.
какие тулзы популярны на рынке труда?
на hh.ru 3 вакансии с antlr, c parsec/fparsec/lex/yacc ноль.
вообще непопулярная,тема, да?
для других специализаций не стесняются по 200 тулзов выписывать, а тут вдруг скромность проснулась?
Re: наиболее популярное решение для парсинга
От: Eugen Россия  
Дата: 03.07.18 13:38
Оценка: :)
Здравствуйте, koenig, Вы писали:

K>я сейчас немножко странную вещь спрошу, но тем не менее

K>вот, скажем, есть задача — распарсить сорцы на каком-то кустарном языке программирования(он уже есть, менять не могу) и что-то там с результатом сделать.
K>какие тулзы популярны на рынке труда?
K>на hh.ru 3 вакансии с antlr, c parsec/fparsec/lex/yacc ноль.
K>вообще непопулярная,тема, да?
K>для других специализаций не стесняются по 200 тулзов выписывать, а тут вдруг скромность проснулась?

Книгу Ахо и Ульмана нужно прочитать. Этот предмет на 3 курсе преподают, на пятом диплом пишут. Здесь можно найти спеца, кто все правильно сделает.
Re[2]: наиболее популярное решение для парсинга
От: koenig  
Дата: 03.07.18 13:41
Оценка:
E>Книгу Ахо и Ульмана нужно прочитать. Этот предмет на 3 курсе преподают, на пятом диплом пишут. Здесь можно найти спеца, кто все правильно сделает.

недостаточно заметно выделил, да?
Re[3]: наиболее популярное решение для парсинга
От: Eugen Россия  
Дата: 03.07.18 14:05
Оценка:
Здравствуйте, koenig, Вы писали:
K>недостаточно заметно выделил, да?

Я думаю, что написание парсеров специфическая задача для АСУ ТП. Вы ищите человака с навыком написания парсеров. При мне пользовались lex и yacc. Этот человек как работал там так до конца жизни там и будет работать.
Может я не совсем вопрос понял, вы разве хотите сами писать парсер? Или ищете того, кто вам это сделает? У вас не совсем сленг понятный в вопросе.
Re[4]: наиболее популярное решение для парсинга
От: koenig  
Дата: 03.07.18 14:13
Оценка:
E>Я думаю, что написание парсеров специфическая задача для АСУ ТП. Вы ищите человака с навыком написания парсеров. При мне пользовались lex и yacc. Этот человек как работал там так до конца жизни там и будет работать.
E>Может я не совсем вопрос понял, вы разве хотите сами писать парсер? Или ищете того, кто вам это сделает? У вас не совсем сленг понятный в вопросе.

я хочу в этот раз воспользоваться чем-то популярным на рынке труда (чтобы руку набить), а не писать вручную, как я всегда делал.
кажется, только antlr пользуется (крохотным) спросом
Re: наиболее популярное решение для парсинга
От: msorc Грузия  
Дата: 03.07.18 14:14
Оценка: 6 (1)
Здравствуйте, koenig, Вы писали:

K>я сейчас немножко странную вещь спрошу, но тем не менее

K>вот, скажем, есть задача — распарсить сорцы на каком-то кустарном языке программирования(он уже есть, менять не могу) и что-то там с результатом сделать.
K>какие тулзы популярны на рынке труда?
Тебе шашечки (популярно) или ехать (что-то сделать)?

K>на hh.ru 3 вакансии с antlr, c parsec/fparsec/lex/yacc ноль

K>вообще непопулярная,тема, да?
Да

K>для других специализаций не стесняются по 200 тулзов выписывать, а тут вдруг скромность проснулась?

Ну на самом деле тулзов, конечно, не как JS-фреймворков, но их есть.

http://www.semdesigns.com/Products/DMS/DMSToolkit.html — коммерческий продукт, не смотрел.
http://txl.ca — бесплатный и довольно хороший продукт. Я на нем баловался, писал пару трансляторов между языками.
http://www.colm.net/open-source/colm/ — открытый, по мотивам TXL.
http://www.metaborg.org — вроде штука мощная, но телодвижений нужно больше чем с TXL, Colm.
http://rosecompiler.org — монстрище

у Perl6 неплохая встроенная работа с грамматиками.

и т.д. и т.п.
Re[2]: наиболее популярное решение для парсинга
От: koenig  
Дата: 03.07.18 14:20
Оценка:
K>>какие тулзы популярны на рынке труда?
M>Тебе шашечки (популярно) или ехать (что-то сделать)?

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


K>>для других специализаций не стесняются по 200 тулзов выписывать, а тут вдруг скромность проснулась?

M>Ну на самом деле тулзов, конечно, не как JS-фреймворков, но их есть.

M>http://www.semdesigns.com/Products/DMS/DMSToolkit.html — коммерческий продукт, не смотрел.

M>http://txl.ca — бесплатный и довольно хороший продукт. Я на нем баловался, писал пару трансляторов между языками.
M>http://www.colm.net/open-source/colm/ — открытый, по мотивам TXL.
M>http://www.metaborg.org — вроде штука мощная, но телодвижений нужно больше чем с TXL, Colm.
M>http://rosecompiler.org — монстрище

так это ж всё экзотика с точке зрения рынка труда
хотя любопытно, спасибо
Re: наиболее популярное решение для парсинга
От: Pzz Россия https://github.com/alexpevzner
Дата: 03.07.18 14:37
Оценка: 2 (1)
Здравствуйте, koenig, Вы писали:

K>для других специализаций не стесняются по 200 тулзов выписывать, а тут вдруг скромность проснулась?


Не так уж много людей вообще умеют писать парсеры. Да и потребность эта встречается не слишком часто. Когда надо распарсить какую-нибудь фигню, типа логов, большинство людей выберет regexp'ы, а за более-менее серьезный синтаксис мало, кто возьмется.

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

По времени написания, что руками, что на yacc'е получается довольно близко. Правда, если надо немного изменить понимаемый парсером язык, то в автоматически сгенерированном парсере это сделать легче, но при существенных изменениях эта разница не столь заметна.
Re: наиболее популярное решение для парсинга
От: _Artem_ Россия  
Дата: 03.07.18 14:46
Оценка: 2 (1)
Здравствуйте, koenig, Вы писали:

K>какие тулзы популярны на рынке труда?


Я использовал boost.spirit для небольшого парсера. Насколько я понимаю, он кое-где используется.
Re[2]: наиболее популярное решение для парсинга
От: koenig  
Дата: 03.07.18 14:47
Оценка:
K>>какие тулзы популярны на рынке труда?

_A_>Я использовал boost.spirit для небольшого парсера. Насколько я понимаю, он кое-где используется.


его тоже забивал в hh, и тоже расстраивался
Re: наиболее популярное решение для парсинга
От: Слава  
Дата: 03.07.18 15:11
Оценка: :))
Здравствуйте, koenig, Вы писали:

K>вот, скажем, есть задача — распарсить сорцы на каком-то кустарном языке программирования(он уже есть, менять не могу) и что-то там с результатом сделать.

K>какие тулзы популярны на рынке труда?

Насчёт рынка труда не подскажу, а на КЫВТе популярна Nitra. Можно на ней написать.
Re: наиболее популярное решение для парсинга
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 03.07.18 16:10
Оценка:
Здравствуйте, koenig, Вы писали:

K>какие тулзы популярны на рынке труда?

K>вообще непопулярная,тема, да?
K>для других специализаций не стесняются по 200 тулзов выписывать, а тут вдруг скромность проснулась?
Непопулярная и несильно нужная.
Для существующих языков уже есть парсеры, разрабатывать новый — сомнительная затея.
Для описания предметной области лучше использовать eDSL или существующий скриптовый язык, чем писать новый.
Re[2]: наиболее популярное решение для парсинга
От: CoderMonkey  
Дата: 03.07.18 16:22
Оценка:
Здравствуйте, gandjustas, Вы писали:

G>Непопулярная и несильно нужная.


Просто как-то так получилось, что в понимании обычного среднего кодера парсинг = регулярные выражения. Получается, естественно, хреново, но мыши все равно грызут кактус.
Re: наиболее популярное решение для парсинга
От: msorc Грузия  
Дата: 03.07.18 16:50
Оценка: 6 (1)
Здравствуйте, koenig, Вы писали:

https://www.eclipse.org/Xtext/ — такой еще есть, я как-то про него и забыл. В вакансиях проскакивает.

Можно даже ВовкуМорковку послушать по теме https://www.youtube.com/watch?v=fgw_C-mXIA4
Re[3]: наиболее популярное решение для парсинга
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 03.07.18 16:54
Оценка:
Здравствуйте, CoderMonkey, Вы писали:

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


G>>Непопулярная и несильно нужная.


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

Так получилось, что в большинстве случаев действительно "парсинг = регулярные выражения", потому что все более сложные сценарии уже реализованы в библиотеках.
Re[2]: наиболее популярное решение для парсинга
От: koenig  
Дата: 03.07.18 16:59
Оценка: +1
G>Непопулярная и несильно нужная.
G>Для существующих языков уже есть парсеры, разрабатывать новый — сомнительная затея.
G>Для описания предметной области лучше использовать eDSL или существующий скриптовый язык, чем писать новый.
эх, если бы
куда не придешь — есть свой
кривой-косой и без дебаггера (не осилили), но на нем уже что-то написано
Re: наиболее популярное решение для парсинга
От: vsb Казахстан  
Дата: 03.07.18 17:07
Оценка: 1 (1)
Здравствуйте, koenig, Вы писали:

K>для других специализаций не стесняются по 200 тулзов выписывать, а тут вдруг скромность проснулась?


Редкая задача, мало кому надо. Я antlr юзал в своё время, мне понравилось для Java.
Re[3]: наиболее популярное решение для парсинга
От: Closer  
Дата: 03.07.18 17:08
Оценка:
Здравствуйте, koenig, Вы писали:

K>так это ж всё экзотика с точке зрения рынка труда

K>хотя любопытно, спасибо

Можешь еще PEG парсеры поискать. Парсят они не очень быстро, но зато порог вхождения у них не высокий (Ахо и Ульмана читать не прийдётся) и описанную граматику на PEG как правило довольно легко читать и поддерживать.
Мы были здесь. Но пора идти дальше. (с) Дуглас Коупленд, Рабы "Микрософт"
Re[4]: наиболее популярное решение для парсинга
От: koenig  
Дата: 03.07.18 17:14
Оценка:
K>>так это ж всё экзотика с точке зрения рынка труда
K>>хотя любопытно, спасибо

C>Можешь еще PEG парсеры поискать. Парсят они не очень быстро, но зато порог вхождения у них не высокий (Ахо и Ульмана читать не прийдётся) и описанную граматику на PEG как правило довольно легко читать и поддерживать.


спасибо

ну раз уж это повторяется
читал
сдал
нету проблемы сделать парсер, ваще нету. много раз делал.
есть проблема в процессе получить побочный профит в виде руки набитой в чём-то широко используемом.
пойду курить antlr, видимо
Re[4]: наиболее популярное решение для парсинга
От: CoderMonkey  
Дата: 03.07.18 20:48
Оценка:
Здравствуйте, gandjustas, Вы писали:

G>Так получилось, что в большинстве случаев действительно "парсинг = регулярные выражения", потому что все более сложные сценарии уже реализованы в библиотеках.


Даже в простых сценариях, использовать регэксы — напрашиваться на проблемы.
... << RSDN@Home 1.0.0 alpha 5 rev. 0>>
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.