Size: a a a

Compiler Development

2020 January 05

PS

Peter Sovietov in Compiler Development
Kakadu
Это теоритическая выгода,  или кто-то уже так делает?
Компилятор Chlorophyll подобным образом устроен: https://www2.eecs.berkeley.edu/Pubs/TechRpts/2015/EECS-2015-121.pdf
источник

AK

Andrei Kurosh in Compiler Development
EgorBo
на мой взгляд это продажа солидных тормозов компиляции за + пару процентов оптимизации
Вот да, было ощущение что идея классная, но современные подходы/железо не позволяют это делать за вменяемое время
источник

E

EgorBo in Compiler Development
Peter Sovietov
Компилятор Chlorophyll подобным образом устроен: https://www2.eecs.berkeley.edu/Pubs/TechRpts/2015/EECS-2015-121.pdf
не знаю почему, но я прочитал это как "Компилятор Чернобыль"
источник

PS

Peter Sovietov in Compiler Development
EgorBo
не знаю почему, но я прочитал это как "Компилятор Чернобыль"
Заведомо обрекаете проект на неудачу? :) А авторы применили такие энергоэффективные оптимизации, что удалось железку с вполне практическим приложением запитать от единственной картофелины!

http://pl.eecs.berkeley.edu/projects/chlorophyll/
источник

K

Kir in Compiler Development
SMT ещё к выведению типов никто не прикручивал?
источник

AK

Andrei Kurosh in Compiler Development
Kir
SMT ещё к выведению типов никто не прикручивал?
Хочешь такой посмотреть тип переменной, наводишь на нее курсор и идешь пить чай пока солвер рожает? )
источник

K

Kir in Compiler Development
Не, SMT в качестве системы вывода типов при компиляции
источник

AT

Alexander Tchitchigin in Compiler Development
Kir
SMT ещё к выведению типов никто не прикручивал?
Сто лет в обед как прикручивали. Во-первых, Refinement Types: F*, Liquid Haskell.
источник

AT

Alexander Tchitchigin in Compiler Development
Во-вторых, я как-то студентам поручил сделать тайпчекер поверх Z3. 😄
источник

E

EgorBo in Compiler Development
Alexander Tchitchigin
Во-вторых, я как-то студентам поручил сделать тайпчекер поверх Z3. 😄
интересно, а я пузырьковые сортировки в университете писал :(
источник

AT

Alexander Tchitchigin in Compiler Development
Ещё есть Dafny, в которой тоже Z3, но без Refinement Types.
источник

AT

Alexander Tchitchigin in Compiler Development
EgorBo
интересно, а я пузырьковые сортировки в университете писал :(
Это пошло как диплом. Бакалавра, если не ошибаюсь.
источник

K

Kir in Compiler Development
Как оно работает-то? Ссылки есть?
источник

K

Kir in Compiler Development
Во-вторых, я как-то студентам поручил сделать тайпчекер поверх Z3. 😄
источник

AT

Alexander Tchitchigin in Compiler Development
Kir
Как оно работает-то? Ссылки есть?
источник

AT

Alexander Tchitchigin in Compiler Development
Там, конечно, весьма примитивный тайп-чекер.
источник

AT

Alexander Tchitchigin in Compiler Development
Лучше брать пример с Liquid Haskell или F*.
источник

K

Kir in Compiler Development
Всё равно, спасибо!
источник

AT

Alexander Tchitchigin in Compiler Development
Kir
Всё равно, спасибо!
Не за что. Кстати говоря, Вы знакомы с языком Nix? То, что Вы рассказываете очень мне про него напоминает...
источник

YS

Yuriy Syrovetskiy in Compiler Development
Kir
Во-вторых, я как-то студентам поручил сделать тайпчекер поверх Z3. 😄
лучше пользоваться функцией "ответить на сообщение"
источник