Size: a a a

Compiler Development

2020 December 13

J

JohnByte in Compiler Development
Мне как раз интересны способы парсинга context-free languages с обскурными решениями
источник

J

JohnByte in Compiler Development
AST-то много где используется на этапе парсинга
источник

AT

Alexander Tchitchigi... in Compiler Development
Kir
Автор кода использовал ftell для перехода к началу цикла, и я щас не шучу
Чего-о-о-о??! Они использовали прямую интерпретацию текста до седьмой версии??? 😱
источник

K

Kir in Compiler Development
AST - это восстановленная структура программы, по сути
источник

dt

d t in Compiler Development
Kir
Автор кода использовал ftell для перехода к началу цикла, и я щас не шучу
Мощно, подозреваю рекурсии в нем не было.
источник

K

Kir in Compiler Development
Alexander Tchitchigin
Чего-о-о-о??! Они использовали прямую интерпретацию текста до седьмой версии??? 😱
Ну, может и не до седьмой версии, но использовали
источник

K

Kir in Compiler Development
Там ещё GC до 5 не было, вроде
источник

AT

Alexander Tchitchigi... in Compiler Development
Kir
Там ещё GC до 5 не было, вроде
Так сейчас это считается достоинством! 😂
источник

AT

Alexander Tchitchigi... in Compiler Development
JohnByte
Мне как раз интересны способы парсинга context-free languages с обскурными решениями
А зачем, если не секрет?
источник

K

Kir in Compiler Development
😒
источник

J

JohnByte in Compiler Development
Alexander Tchitchigin
А зачем, если не секрет?
Чтобы разрешить разрыв шаблона: "как можно парсить context-free language без BNF и  построения AST"
источник

AT

Alexander Tchitchigi... in Compiler Development
JohnByte
AST-то много где используется на этапе парсинга
Строго говоря, AST используется как раз после парсинга. Потому что парсинг — это процесс построения AST (грубо говоря).
источник

J

JohnByte in Compiler Development
JohnByte
Чтобы разрешить разрыв шаблона: "как можно парсить context-free language без BNF и  построения AST"
Похожим майндфаком вроде Перл обладает
источник

AT

Alexander Tchitchigi... in Compiler Development
JohnByte
Чтобы разрешить разрыв шаблона: "как можно парсить context-free language без BNF и  построения AST"
Рекурсивный спуск? Без BNF, если AST не строить — то его и не будет.
источник

AT

Alexander Tchitchigi... in Compiler Development
JohnByte
Похожим майндфаком вроде Перл обладает
Он компилируется в бат-код — очень сильно подозреваю, что для этого строится как минимум AST.
источник

AT

Alexander Tchitchigi... in Compiler Development
Alexander Tchitchigin
Рекурсивный спуск? Без BNF, если AST не строить — то его и не будет.
Ещё автомат с магмзинной памятью тоже можно руками написать.
источник

K

Kir in Compiler Development
Alexander Tchitchigin
Ещё автомат с магмзинной памятью тоже можно руками написать.
Или LR(0)-таблицу
источник

AT

Alexander Tchitchigi... in Compiler Development
Kir
Или LR(0)-таблицу
С одной стороны, это примерно то же самое, с другой — автомат можно и попроще сделать.
источник

PS

Pavel Samolysov in Compiler Development
Kir
Автор кода использовал ftell для перехода к началу цикла, и я щас не шучу
Это чтобы знать позицию в файле, где цикл начинается?
источник

s

suhr in Compiler Development
PHP это действительно удивительный язык.
источник