Size: a a a

Compiler Development

2020 March 09

KR

K R in Compiler Development
Форматирование автогенерированного кода - лишь часть задачи. Хотя и ключевая.
источник

PS

Peter Sovietov in Compiler Development
Если нужен и AST, и исходный код, но не поток токенов, то тогда, вероятно, подразумевается просто дерево конкретного синтаксиса :) Могу посоветовать погуглить unparsers.
источник

KR

K R in Compiler Development
Peter Sovietov
Если нужен и AST, и исходный код, но не поток токенов, то тогда, вероятно, подразумевается просто дерево конкретного синтаксиса :) Могу посоветовать погуглить unparsers.
А хорошей книжки на тему разных представлений вычислительных систем вы не знаете?
источник

AT

Alexander Tchitchigin in Compiler Development
K R
А хорошей книжки на тему разных представлений вычислительных систем вы не знаете?
А что это за представления? И систем в каком смысле (и размере)?
источник

KR

K R in Compiler Development
Alexander Tchitchigin
А что это за представления? И систем в каком смысле (и размере)?
Ну вот то, что вы обсуждали выше.
источник

AT

Alexander Tchitchigin in Compiler Development
K R
Ну вот то, что вы обсуждали выше.
Лямбда-исчисление/комбинаторное исчисление? Это скорее формализация самого понятия вычисление или описание (задание) вычислительного процесса.
Под вычислительной системой обычно подразумевают нечто более грандиозное и близкое к практике. 😊
источник

KR

K R in Compiler Development
Alexander Tchitchigin
Лямбда-исчисление/комбинаторное исчисление? Это скорее формализация самого понятия вычисление или описание (задание) вычислительного процесса.
Под вычислительной системой обычно подразумевают нечто более грандиозное и близкое к практике. 😊
Ну вычисления. Видите, мне бы такая книга не помешала бы. ;-)
источник

AT

Alexander Tchitchigin in Compiler Development
Разные формализации вычислений/разные исчисления обычно описываются и обсуждаются в книжках по теории вычислимости.
источник

AT

Alexander Tchitchigin in Compiler Development
Я когда-то частично читал какую-то маленькую советсткую книжку, которая как-то так и называлась. Вот про лямбда-исчисление и комбинаторы там не помню (может, не дошёл), но про машины Тьюринга/Поста, мю-рекурсивные функции и исчисление предикатов первого порядка там точно было. 😊
источник

AT

Alexander Tchitchigin in Compiler Development
Кое-что ещё вот в этой читал: http://progbook.ru/matematika/574-lavrov-programmirovanie-matematicheskie-osnovy.html 😊
источник

PS

Peter Sovietov in Compiler Development
Хорошая книга. Я ее купил сразу после выхода из печати :) Судя по всему о ней мало кто слышал. Но компиляторщикам достаточно намекнуть, что это тот самый Лавров! :)
источник

PS

Peter Sovietov in Compiler Development
Alexander Tchitchigin
Разные формализации вычислений/разные исчисления обычно описываются и обсуждаются в книжках по теории вычислимости.
+
источник

AT

Alexander Tchitchigin in Compiler Development
Peter Sovietov
Хорошая книга. Я ее купил сразу после выхода из печати :) Судя по всему о ней мало кто слышал. Но компиляторщикам достаточно намекнуть, что это тот самый Лавров! :)
Мне кажется, что она хорошая только для тех, кто "и так в теме". Во всяком случае, когда читал её классе в 9-10 почти ничёрта не понял и не запомнил. Но всё равно понравилась! 😃
источник

KR

K R in Compiler Development
Спасибо.
источник

PS

Peter Sovietov in Compiler Development
Alexander Tchitchigin
Мне кажется, что она хорошая только для тех, кто "и так в теме". Во всяком случае, когда читал её классе в 9-10 почти ничёрта не понял и не запомнил. Но всё равно понравилась! 😃
Какие-то моменты там можно пропускать. Вообще, что Лавров, что Ершов — не самые доходчивые рассказчики :) Но при этом у Лаврова получился обзор многих очень важных тем на стыке теор. информатики и программирования. Кажется, ничего в таком духе (оригинального!) на русском языке позже не появилось. Ну и самые интересные там — завершающие главы :)
источник

AT

Alexander Tchitchigin in Compiler Development
Peter Sovietov
Какие-то моменты там можно пропускать. Вообще, что Лавров, что Ершов — не самые доходчивые рассказчики :) Но при этом у Лаврова получился обзор многих очень важных тем на стыке теор. информатики и программирования. Кажется, ничего в таком духе (оригинального!) на русском языке позже не появилось. Ну и самые интересные там — завершающие главы :)
Пожалуй, с educational стороной там слабовато, зато entertaining на высоте. В этом смысле - отличный рассказчик! Читается с большим удовольствием. 😊
Уже не помню, про что именно там были завершающие главы, но помню, что читал раза два или три. 😂
источник

PS

Peter Sovietov in Compiler Development
Alexander Tchitchigin
Пожалуй, с educational стороной там слабовато, зато entertaining на высоте. В этом смысле - отличный рассказчик! Читается с большим удовольствием. 😊
Уже не помню, про что именно там были завершающие главы, но помню, что читал раза два или три. 😂
Он там в конце переходит к верификации и анализу программ. И все завершается на размышлениях о системах синтеза программ :)
источник

PS

Peter Sovietov in Compiler Development
Вообще, это старая идея — по декларативному (денотационному у Лаврова) представлению семантики языка синтезировать тот же компилятор. Сейчас вот снова исследователи пытаются подступиться к этой задаче.
источник

AT

Alexander Tchitchigin in Compiler Development
Peter Sovietov
Он там в конце переходит к верификации и анализу программ. И все завершается на размышлениях о системах синтеза программ :)
Значит, я какие-то другие главы читал... Или другое издание... 🤔
источник

PS

Peter Sovietov in Compiler Development
Пропустил важное начало:

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