Size: a a a

Compiler Development

2021 January 13

IP

Iaroslav Postovalov in Compiler Development
Ivan Kochurkin
Что конкретно не получается?
вот тот же вопрос
источник

IP

Iaroslav Postovalov in Compiler Development
тут помогают советом
источник

MI

Manikhin Igor in Compiler Development
Всё разом. Пробовал писать что лексер, что синтаксер. Получается одна каша, видимо я не очень то разобрался с материалом для того, чтобы ума и знаний хватило для реализации синтаксера. В общем коллеги, выручайте если сможете...
источник

IP

Iaroslav Postovalov in Compiler Development
Manikhin Igor
Всё разом. Пробовал писать что лексер, что синтаксер. Получается одна каша, видимо я не очень то разобрался с материалом для того, чтобы ума и знаний хватило для реализации синтаксера. В общем коллеги, выручайте если сможете...
у питона достаточно большая грамматика, чтобы даже просто рекурсивный спуск было написать неочевидно.
если не запрещено генерировать парсер, то надо генерировать
источник

IP

Iaroslav Postovalov in Compiler Development
источник

MI

Manikhin Igor in Compiler Development
Antlr тоже можно использовать. Забыл упомянуть...
источник

IP

Iaroslav Postovalov in Compiler Development
Manikhin Igor
Antlr тоже можно использовать. Забыл упомянуть...
ну так используй!
источник

IP

Iaroslav Postovalov in Compiler Development
я скинул грамматику с готовым лексером под питон. берешь antlr, используешь эту грамматику, получаешь парсер python 3 на питоне
источник

IP

Iaroslav Postovalov in Compiler Development
дальше используешь listener по дереву и используешь либу, которую я скинул выше, чтобы нарисовать связи между объектами ast antlr'а
источник

IP

Iaroslav Postovalov in Compiler Development
Manikhin Igor
Antlr тоже можно использовать. Забыл упомянуть...
вот если бы парсер должен был быть самописный, то это должно было быть задание на неделю хотя бы
источник

MI

Manikhin Igor in Compiler Development
Я врятли это сам потяну. Я опыта в этом не имею...
источник

IP

Iaroslav Postovalov in Compiler Development
Manikhin Igor
Я врятли это сам потяну. Я опыта в этом не имею...
в чем тогда твоя мотивация учиться в месте, где одно из заданий - это работа с формальными грамматиками?
источник

IP

Iaroslav Postovalov in Compiler Development
ну а вообще это в оффтоп лучше (например, @pofftop)
источник

IP

Iaroslav Postovalov in Compiler Development
@KvanTTT а, там f"" нет?
источник

IP

Iaroslav Postovalov in Compiler Development
черт
источник

IK

Ivan Kochurkin in Compiler Development
Эта грамматика, кстати, не все поддерживает: нет интерполяции строк, не парсит некоторые штуки. В https://github.com/PositiveTechnologies/grammars-v4/blob/dev/python все это поддерживается, но пока руки не дошли опубликовать в официальный репозиторий и Python таргета нет.
источник

IP

Iaroslav Postovalov in Compiler Development
Ivan Kochurkin
Эта грамматика, кстати, не все поддерживает: нет интерполяции строк, не парсит некоторые штуки. В https://github.com/PositiveTechnologies/grammars-v4/blob/dev/python все это поддерживается, но пока руки не дошли опубликовать в официальный репозиторий и Python таргета нет.
@IAManikhin я сейчас еще немножко посмотрю, но, скорее всего, надо использовать то, что @KvanTTT скинул, если нет ограничения на язык
источник

IK

Ivan Kochurkin in Compiler Development
Iaroslav Postovalov
@KvanTTT а, там f"" нет?
Формально есть, но выражения в строках не будут отдельно разбираться.
источник

MI

Manikhin Igor in Compiler Development
У меня пока вопрос один: кто-то сможет мне это сделать за не бесплатно и не банальное «Спасибо»?
источник

PS

Peter Sovietov in Compiler Development
Задача, кстати, неплохая. «Коллега» точно уверен, что его преподаватель не сидит тоже в этом чате? ;)
источник