Size: a a a

Compiler Development

2020 December 29

AT

Alexander Tchitchigi... in Compiler Development
Iaroslav Postovalov
вообще, было бы круто, если бы были какие-то открытые презентации и/или курс по фронтам
Начинайте читать статьи с конференций лучше.
источник

SG

Semyon Grigorev in Compiler Development
Iaroslav Postovalov
да я сам алгоритм с трудом понимаю
Какой уровень понимания есть и какого хочется достичь? А то вот тут есть пример с картинками, поясняющий базовые идеи. https://github.com/YaccConstructor/articles/blob/master/InProgress/Formal_langs_CFPQ_course_notes/Formal_lang_CFPQ_course_notes.pdf Искать Пример 10.2.1 Реализовывать, понятно, так не надо. Как реализовывать, это, соглашусь с @GabrielFallen , лучше сразу статьи читать. Благо их уже много разных. Там и вариаций алгоритма вагон.
источник

IP

Iaroslav Postovalov in Compiler Development
Semyon Grigorev
Какой уровень понимания есть и какого хочется достичь? А то вот тут есть пример с картинками, поясняющий базовые идеи. https://github.com/YaccConstructor/articles/blob/master/InProgress/Formal_langs_CFPQ_course_notes/Formal_lang_CFPQ_course_notes.pdf Искать Пример 10.2.1 Реализовывать, понятно, так не надо. Как реализовывать, это, соглашусь с @GabrielFallen , лучше сразу статьи читать. Благо их уже много разных. Там и вариаций алгоритма вагон.
я понимаю только то, что это lr с поиском в ширину где-то
источник

PS

Peter Sovietov in Compiler Development
Iaroslav Postovalov
окей, а есть ли реальные компиляторы, которые так парсят?
Мне кажется, проблемы с поиском у Вас могли возникнуть в связи с тем, что GLR-парсер придуман был не для компиляторов и языков программирования, а для разбора естественных языков.
За пределами этой области тяжеловесные GLR/GLL чаще всего используют для прототипирования ЯП, а также для реинжиниринга ПО (DMS, Rascal и другие).
источник

LA

Liber Azerate in Compiler Development
Как через LLVM API задекларировать vararg функцию? Это вообще возможно?
источник

BD

Berkus Decker in Compiler Development
Liber Azerate
Как через LLVM API задекларировать vararg функцию? Это вообще возможно?
clang же это как-то делает, посмотри там
источник

BD

Berkus Decker in Compiler Development
в kaleidoscope вроде тоже был пример
источник

LA

Liber Azerate in Compiler Development
Berkus Decker
в kaleidoscope вроде тоже был пример
Да нет вроде бы. Не нашёл как-то
источник

BD

Berkus Decker in Compiler Development
Liber Azerate
Да нет вроде бы. Не нашёл как-то
может погрепать по VAArgExpr?
источник

IP

Iaroslav Postovalov in Compiler Development
Peter Sovietov
Мне кажется, проблемы с поиском у Вас могли возникнуть в связи с тем, что GLR-парсер придуман был не для компиляторов и языков программирования, а для разбора естественных языков.
За пределами этой области тяжеловесные GLR/GLL чаще всего используют для прототипирования ЯП, а также для реинжиниринга ПО (DMS, Rascal и другие).
а, серьезно?
источник

IP

Iaroslav Postovalov in Compiler Development
просто я хотел разобрать максимально полный набор технологий парсинга, чтобы иметь кругозор
источник

PS

Peter Sovietov in Compiler Development
Semyon Grigorev
Какой уровень понимания есть и какого хочется достичь? А то вот тут есть пример с картинками, поясняющий базовые идеи. https://github.com/YaccConstructor/articles/blob/master/InProgress/Formal_langs_CFPQ_course_notes/Formal_lang_CFPQ_course_notes.pdf Искать Пример 10.2.1 Реализовывать, понятно, так не надо. Как реализовывать, это, соглашусь с @GabrielFallen , лучше сразу статьи читать. Благо их уже много разных. Там и вариаций алгоритма вагон.
Интересный курс, спасибо! Не возражаете, если я добавлю ссылку в наш раздел по по учебным курсам на github? :)
источник

SG

Semyon Grigorev in Compiler Development
Peter Sovietov
Интересный курс, спасибо! Не возражаете, если я добавлю ссылку в наш раздел по по учебным курсам на github? :)
Спасибо. Не возражаю. Только обратите внимание, что текст в разработке и там есть как очевидные дыры, так и скрытые неточности.
источник

PS

Peter Sovietov in Compiler Development
Semyon Grigorev
Спасибо. Не возражаю. Только обратите внимание, что текст в разработке и там есть как очевидные дыры, так и скрытые неточности.
Неточности это понятно, ведь задачи очень амбициозные, тематика широкая и передовая. На русском языке, кажется, на такого рода изложение еще никто не замахивался.
источник

LA

Liber Azerate in Compiler Development
Berkus Decker
может погрепать по VAArgExpr?
Теперь я нашёл много чего, но всё не то :)
источник

LA

Liber Azerate in Compiler Development
Что ж, если кого-то интересует: https://laratelli.com/posts/2020/06/generating-calls-to-printf-from-llvm-ir/
источник
2020 December 30

M

MrSmith in Compiler Development
Victor Shamparov
Стоп, а описанный здесь SGLR является подмножеством GLR?
Скорей над
источник

M

MrSmith in Compiler Development
Scanless подразумевает встроенную контекстуальность, и не гарантируется что генератор будет использовать классическую двух этапную модель, в теории он вполне может генерировать все это одним автоматом или как то ещё
источник

M

MrSmith in Compiler Development
Iaroslav Postovalov
окей, а есть ли реальные компиляторы, которые так парсят?
Ну такое не сложно написать
источник

M

MrSmith in Compiler Development
Главное там что все что способно парсить ambiguous порождает лес. Если ввести ambiguous GLR c++ там вывалится в первых ссылках стак где первый ответ от чела команда которого пилила такую тулзу
источник