Как решетка используется компилятором - PullRequest
9 голосов
/ 13 апреля 2010

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

Мы уже рассмотрели разбор и проверку типов. Мы собираемся приступить к анализу жизнеспособности и зарегистрировать распределение.

Примечание , я не ищу ресурсы по сборке компиляторов. В следующем списке ссылок это хорошо освещено. То, что я ищу, - это объяснение отношений между компиляторами и решетками, бонусные баллы для большинства примеров.

Учебные ресурсы по анализаторам, интерпретаторам и компиляторам
Какую часть компилятора мы должны знать?
Учимся писать компилятор

1 Ответ

5 голосов
/ 13 апреля 2010

Решетки - это очень полезная структура для представления состояния при статическом анализе компилируемой программы, например. для удаления мертвого кода, обнаруженного анализом живучести, доступных / очень занятых выражений, достижения определений, анализа знаков и постоянного распространения.

Вот очень хорошее чтение, если вам нужны подробности: Примечания к лекциям по статическому анализу

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...