Size: a a a

Compiler Development

2020 November 12

SG

Semyon Grigorev in Compiler Development
MrSmith
Ну как закончу toy compiler пойду в rust analyzer пилить OGR
Круть.
источник

M

MrSmith in Compiler Development
Да не очень, 6 лет в универе оставил. Я пока думаю над DSL. Должен быть способ как то описывать это все
источник

M

MrSmith in Compiler Development
https://github.com/ArsMasiuk/qvge вот визуально вроде можно
Пока не очень представляю, скорей всего нужен graphMl наверное но те точно
источник

M

MrSmith in Compiler Development
Но он не человекочитайемый
источник

AT

Alexander Tchitchigi... in Compiler Development
Semyon Grigorev
Да нет, правда интересно. Yc в этом смысле просто ещё одна экспериментальная поделка и на какие-то зрелые решения не претендует. Но хочется верить, что идея где-то таки да будет жить. Ну и да,  я этим маленько занимаюсь и интересно посмотреть, а может и поучаствовать )
КС-запросы к некоторому графовому представлению исходного кода (SoN или даже "полный" CPG) были бы совсем не лишними и весьма удобными. На практике проблемы возникли в области балансирования потребления памяти, модульности, гибкости языка запросов и скорости их обработки.
источник

M

MrSmith in Compiler Development
Semyon Grigorev
Огонь! Интересно, скоро ли возникнет (и возникнет ли вообще) в даном направлении потребность в контекстно-свободных запросах. А то нам Репс чуть ли не в 90-х обещал, что всякие межпроцедурные анализы к ним сводятся. Да и делают люди что-то, типа анализа указателей. Было бы круто всё аккуратно вместе собрать и посмотреть, что получится.
А оно зочем вообше?
источник

M

MrSmith in Compiler Development
Почему не взять просто node4j в начале
источник

M

MrSmith in Compiler Development
Вообше нет какого-то наимянования такого представления потому, что для каждого языка оно уникальное ну вроде Overlay Graph Ir звучит логично
источник

SG

Semyon Grigorev in Compiler Development
Alexander Tchitchigin
КС-запросы к некоторому графовому представлению исходного кода (SoN или даже "полный" CPG) были бы совсем не лишними и весьма удобными. На практике проблемы возникли в области балансирования потребления памяти, модульности, гибкости языка запросов и скорости их обработки.
Ну вот мы как раз с чем-то таким играемся: пытаемся расширить Cypher и подружить это расширение с RedisGraph https://github.com/YaccConstructor/articles/blob/master/InProgress/The_RedisGraph_Strikes_Back/main.pdf Если есть понимание, как поставить эксперимент по применению к SoN, это могло бы быть интересным, как мне кажется.
источник

SG

Semyon Grigorev in Compiler Development
MrSmith
Почему не взять просто node4j в начале
В начале можно. Люди же как раз так и делают. Просто КС запросы более выразительны и, как следствие, могут помочь описать в простых терминах более сложные анализы. Вопрос, скорее, в том, где именно такие анализы нужны на практике и на сколько адекватным получится интсрумент с точки зрения производительности, потребления памяти и т.д.
источник

AT

Alexander Tchitchigi... in Compiler Development
Semyon Grigorev
Ну вот мы как раз с чем-то таким играемся: пытаемся расширить Cypher и подружить это расширение с RedisGraph https://github.com/YaccConstructor/articles/blob/master/InProgress/The_RedisGraph_Strikes_Back/main.pdf Если есть понимание, как поставить эксперимент по применению к SoN, это могло бы быть интересным, как мне кажется.
Применение к SoN — это Controlflow-sensitive Dataflow Analysis. Нас, конечно, интересует Taint Analysis. Впрочем, для начала и Alias Analysis будет совсем не бесполезным.
источник

E

Evgeniy in Compiler Development
Peter Sovietov
Классическую статью от Snyder Вы ведь смотрели? Она приводится в списке моих любимых книг по спец. вопросам компиляции, если помните такой :)
Напомните, пожалуйста, где найти этот список книг.
источник

AT

Alexander Tchitchigi... in Compiler Development
Evgeniy
Напомните, пожалуйста, где найти этот список книг.
В описании чата:
Литература:
https://github.com/true-grue/Compiler-Development
источник

NK

ID:0 in Compiler Development
(Это мой старый перечень, но интерес, как мне кажется, он все еще представляет) Ниже я хочу представить краткий список полновесных книг по специальным вопросам компиляции. Эти книги много дали лично мне. Надеюсь, они окажутся в соответствующий момент полезными и вам.

1. Automatic Algorithm Recognition and Replacement. A New Approach to Program Optimization (https://mitpress.mit.edu/books/automatic-algorithm-recognition-and-replacement?cr=reset).

Тема распознавания алгоритмов очень мало изучена. Но перспективы здесь самые впечатляющие. Оптимизации на уровне алгоритмов, автоматическое распараллеливание и проч. Весьма вдохновляющее чтение.

2. Reasoning About Program Transformations. Imperative Programming and Flow of Data. (https://www.springer.com/us/book/9780387953915).

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

3. Instruction Selection. Principles, Methods, and Applications. (https://www.springer.com/us/book/9783319340173).

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

4. Partial Evaluation and Automatic Program Generation (https://www.itu.dk/~sestoft/pebook/).

В наше время все чаще на практике используются давние результаты Турчина, Футамуры, Ершова и других исследователей в области частичных вычислений/метапрограммирования. В какой-то момент, после прочтения очередной заметки в блоге с упоминанием проекций Футамуры (PyPy, Truffle и так далее), нелишне будет открыть и эту книгу, где подробно изложены все эти темы.
источник

PS

Peter Sovietov in Compiler Development
Спасибо, но в данном случае речь шла о списке, который я сейчас в plcomp поместил :)
источник

E

Evgeniy in Compiler Development
Peter Sovietov
Спасибо, но в данном случае речь шла о списке, который я сейчас в plcomp поместил :)
спасибо
источник

M

MrSmith in Compiler Development
Evgeniy
спасибо
Так и не нашел но что то знакомое
источник

M

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

M

MaxGraey in Compiler Development
ID:0
(Это мой старый перечень, но интерес, как мне кажется, он все еще представляет) Ниже я хочу представить краткий список полновесных книг по специальным вопросам компиляции. Эти книги много дали лично мне. Надеюсь, они окажутся в соответствующий момент полезными и вам.

1. Automatic Algorithm Recognition and Replacement. A New Approach to Program Optimization (https://mitpress.mit.edu/books/automatic-algorithm-recognition-and-replacement?cr=reset).

Тема распознавания алгоритмов очень мало изучена. Но перспективы здесь самые впечатляющие. Оптимизации на уровне алгоритмов, автоматическое распараллеливание и проч. Весьма вдохновляющее чтение.

2. Reasoning About Program Transformations. Imperative Programming and Flow of Data. (https://www.springer.com/us/book/9780387953915).

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

3. Instruction Selection. Principles, Methods, and Applications. (https://www.springer.com/us/book/9783319340173).

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

4. Partial Evaluation and Automatic Program Generation (https://www.itu.dk/~sestoft/pebook/).

В наше время все чаще на практике используются давние результаты Турчина, Футамуры, Ершова и других исследователей в области частичных вычислений/метапрограммирования. В какой-то момент, после прочтения очередной заметки в блоге с упоминанием проекций Футамуры (PyPy, Truffle и так далее), нелишне будет открыть и эту книгу, где подробно изложены все эти темы.
Почему все ссылки редиректятся через заглушку vk.com/away?
источник

PS

Peter Sovietov in Compiler Development
MaxGraey
Почему все ссылки редиректятся через заглушку vk.com/away?
Пережиток прошлого. Спасибо, исправил.
источник