Size: a a a

Compiler Development

2020 May 27

K

Kakadu in Compiler Development
Я думаю,  можно написать Потье :)
источник

PS

Peter Sovietov in Compiler Development
Меня эта штука, на самом деле, раздражает. Я всегда считал, что отсутствие правил высшего порядка — фундаментальный недостаток генераторов парсеров. А, оказывается, сделали и такое. Теперь придется писать на эту тему более осторожно :)
источник

K

Kakadu in Compiler Development
У нас на факультете делали Yacc Constructor — там вроде тоже есть правила высшего порядка
источник

PS

Peter Sovietov in Compiler Development
Оно, в принципе, достаточно легко делается в виде макрогенератора. Но у комбинаторов парсеров свободы действий, все же, больше.
источник

PS

Peter Sovietov in Compiler Development
источник

KR

K R in Compiler Development
Alex Gryzlov
а там еще какие то есть? :)
Ocamlyacc
источник

МБ

Михаил Бахтерев... in Compiler Development
Kakadu
У нас на факультете делали Yacc Constructor — там вроде тоже есть правила высшего порядка
А кратко можно пояснить, в чём фишка этих правил?
источник

K

Kakadu in Compiler Development
Михаил Бахтерев
А кратко можно пояснить, в чём фишка этих правил?
Ну модно написать своё правило "список чего-то разделенный запятыми" только 1 раз
источник

K

Kakadu in Compiler Development
Так же как и с функциями высшего порядка
источник

AT

Alexander Tchitchigi... in Compiler Development
K R
Ocamlyacc
Deprecated. 😊
источник

VK

Vladimir Kazanov in Compiler Development
Kakadu
Ну модно написать своё правило "список чего-то разделенный запятыми" только 1 раз
сколько лет я раздражался, когда писал эти самые списки. Удивительно, что мне даже не приходило сделать такие своего рода генерики для правил в генераторах...
источник

K

Kakadu in Compiler Development
Нууу, большинство прогрессивных идей приходят из мира функциональщины, имхо.  Так что надо больше заниматься ею
источник

PS

Peter Sovietov in Compiler Development
Для знакомства с этими прогрессивными идеями достаточно прочесть SICP :)
источник

K

Kakadu in Compiler Development
Peter Sovietov
Для знакомства с этими прогрессивными идеями достаточно прочесть SICP :)
по-моему menhir тайпчекает ещё правила. Или нет?
источник

PS

Peter Sovietov in Compiler Development
Kakadu
по-моему menhir тайпчекает ещё правила. Или нет?
Мне кажется, нет. Это обычный макрос. Проверяется уже после подстановки, обычным образом.
источник

K

Kakadu in Compiler Development
Peter Sovietov
Мне кажется, нет. Это обычный макрос. Проверяется уже после подстановки, обычным образом.
Ну, может я погорячился
источник

GK

Georgy Komarov in Compiler Development
Kakadu
Ну, может я погорячился
Хм, а как он тогда определяет ошибки типизации в .mly-файлах, до генерации исходника парсера?
Например:
источник

M

MaxGraey in Compiler Development
Насчет peephole оптимизации. Я смотрю для булевого контекста почему то ни LLVM ни GCC не делаю преобразования bool(x != -1) в  bool(x ^ -1)
Никто не знает почему?
источник

E

Eugene in Compiler Development
Georgy Komarov
Хм, а как он тогда определяет ошибки типизации в .mly-файлах, до генерации исходника парсера?
Например:
навреное, он пытается сгенеировать текст по этому макросу, и что-то неправильное в результате получается
источник

M

MaxGraey in Compiler Development
MaxGraey
Насчет peephole оптимизации. Я смотрю для булевого контекста почему то ни LLVM ни GCC не делаю преобразования bool(x != -1) в  bool(x ^ -1)
Никто не знает почему?
И даже наоборот x ^ -1 превращает (канонизирует?) в x != -1
https://godbolt.org/z/G6wyEd
источник