Size: a a a

Compiler Development

2021 May 24

h

hazer_hazer in Compiler Development
https://cs.au.dk/~amoeller/spa/
сам только недавно начал
В rustc dev-docs посоветовали
источник

KT

Kirill Timofeev in Compiler Development
спасибо!
но 176 страниц 😭
источник

s

suhr in Compiler Development
Ммм, классификация из 70х.
источник

h

hazer_hazer in Compiler Development
ну. можно попробовать просто dev doc'у раста почитать по разделам про MIR (на уровне его генерации производится большая часть статического анализа)
https://rustc-dev-guide.rust-lang.org/mir/dataflow.html?highlight=static%20analysis#dataflow-analysis
источник

s

suhr in Compiler Development
источник

KT

Kirill Timofeev in Compiler Development
крутяк
я уточню, я сейчас читаю код dfa анализатора java кода, которй используется в идее, но хочется почитать более высокоуровневый разбор того, как это надо делать :)
источник

DP

Dmitry Popov in Compiler Development
это откуда?
источник

s

suhr in Compiler Development
источник

AT

Alexander Tchitchigi... in Compiler Development
источник

s

suhr in Compiler Development
Отсюда. Рекомендую.
источник

DP

Dmitry Popov in Compiler Development
спасибо!
источник

KT

Kirill Timofeev in Compiler Development
о, всего 15 страниц, подходит, спасибо
источник

AT

Alexander Tchitchigi... in Compiler Development
Это основополагающая работа, которая породила целое направление по использованию (в самых разных вариантах) Graph Reachability для Dataflow Analysis. Соответственно, существует огромное количество работ, развивающих эту тему и применяющих к разным случаям.
источник

KT

Kirill Timofeev in Compiler Development
круто, буду читать
источник

AT

Alexander Tchitchigi... in Compiler Development
Можно ещё диссертацию почитать: http://tuprints.ulb.tu-darmstadt.de/5937/
Там должен быть обзор и пояснения как конкретно реализуются элементы анализа.
источник

AT

Alexander Tchitchigi... in Compiler Development
Так-то на Википедии вполне толковая статья со ссылками на литературу: https://en.wikipedia.org/wiki/Data-flow_analysis
источник

PS

Peter Sovietov in Compiler Development
Комбинатры — это способ реализации алгоритмов. Произвольных, и производительность тоже зависит от подходов. Поэтому странно читать о том, что комбинаторы чего-то "не могут" :)
источник

K

Kir in Compiler Development
Ждём реализации комбинаторов рекурсивного подъёма.
источник

PS

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

K

Kir in Compiler Development
Хммммм
источник