Size: a a a

Compiler Development

2020 March 24

DP

Dmitry Ponyatov in Compiler Development
источник

EM

Evgenii Moiseenko in Compiler Development
polunin.ai
ну тут уже на вкус и цвет. мне ML не заходит абсолютно, как и си-подобный. лучшее что мне понравилось это Rust, хотя и там свои нюансы
забавно, учитывая что синтаксис Rust это как раз смесь C и ML
источник

p

polunin.ai in Compiler Development
Andrei Kurosh
The concrete syntax of Rust is similar to C and C++, with blocks of code delimited by curly brackets, and control flow keywords such as if, else, while, and for.
ок, си-подобный. но не сишный.
источник

p

polunin.ai in Compiler Development
Evgenii Moiseenko
забавно, учитывая что синтаксис Rust это как раз смесь C и ML
да, эта смесь мне нравится больше чем крайности
источник

DP

Dmitry Ponyatov in Compiler Development
вот хороший курс по сквику, дает общее представление и о языке и о среде разработки:
https://www.youtube.com/playlist?list=PL6601A198DF14788D

на закуску подробное видео о системе 1979 года:
https://www.youtube.com/watch?v=JLPiMl8XUKU
источник

AK

Andrei Kurosh in Compiler Development
polunin.ai
ок, си-подобный. но не сишный.
с этим полностью согласен, различий также дофига
источник

DP

Dmitry Ponyatov in Compiler Development
+ специализированный язык для написания языков и компиляторов
источник

p

polunin.ai in Compiler Development
Dmitry Ponyatov
вот хороший курс по сквику, дает общее представление и о языке и о среде разработки:
https://www.youtube.com/playlist?list=PL6601A198DF14788D

на закуску подробное видео о системе 1979 года:
https://www.youtube.com/watch?v=JLPiMl8XUKU
свик это что?
источник

AT

Alexander Tchitchigin in Compiler Development
Туда же Icon, Io...
источник

AT

Alexander Tchitchigin in Compiler Development
polunin.ai
свик это что?
Squeak. Диалект Smalltalk.
источник
2020 March 25

МБ

Михаил Бахтерев in Compiler Development
Ɖrēw
Ребят, есть какие то материалы для получения вдохновения для дизайна синтаксиса своего языка? Хочу что то интересное на диплом сделать, но пока в голове только шаблонный синтаксис из популярных языков
Лисп :) Во-первых, очень экзотично по нынешним временам. Во-вторых, можно сразу брать книгу о том, как написать интерпретатор Scheme за 48 часов, и на выходе уже будет нечто программируемое, а не просто парсер.

На Википедии есть обзор всяких разных синтаксических заморочек

https://ru.m.wikipedia.org/wiki/%D0%A1%D1%80%D0%B0%D0%B2%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%BE%D0%B2_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_(%D1%81%D0%B8%D0%BD%D1%82%D0%B0%D0%BA%D1%81%D0%B8%D1%81)
источник

МБ

Михаил Бахтерев in Compiler Development
Такое ощущение, что человек не разобрался, что такое гошный ассемблер и критикует его с какой-то очень перпендикулярной реальности позиции.

Пассаж о необходимости использования мощых линковщиков тоже малопонятен, потому что скорость компиляции была целью разработки Go, а в современном языкостроении в llvm- или gcc- стиле линковка одна из самых тяжёлых и медленных (уж не знаю, почему) операций.

Go, может быть, и shit, но уж точно не по этим причинам.

На Plan9 тоже взгляд странный. Проект провалился не из-за технических причин, а потому что AT&T решила торговать unix-next операционкой во времена восхода Linux и BSD. Технически, Plan9 до сих пор может то, чего не может Linux: раздавать по сети вычислительные ресурсы - и может это хорошо. GUI там, конечно, отстойный по нынешним временам и unix-овым консольщикам не заходит (тоже одна из ошибок AT&T). Но это можно было бы исправить, если бы AT&T выпустила ОС в свободное плавание. Но вот не решилась.
источник

МБ

Михаил Бахтерев in Compiler Development
Vladimir Kazanov
Да не, с автором этого блога мы даже кое-что что вместе делали (https://nullprogram.com/blog/2017/02/14/), поэтому я слежу за ним подробно 😊
Вот это, кстати, Plan9 умела делать из коробки, и обработка почты, например, там была элементарной задачей.

Бережно, в общем, храню исошечку с образом Plan9, как источник мудрости. Когда наступит апокалипсис, пригодится :)
источник

PS

Peter Sovietov in Compiler Development
Ну, раз ссылка на старую заметку из блога до сих пор вызывает дебаты, то вот вам дискуссия на HN с ответом Пайка:

https://news.ycombinator.com/item?id=8815778

На мой взгляд, разъяснения были даны вполне исчерпывающие.

Теперь вернемся, все-таки, к тематике чата. Как известно, компилятор Томпсона из Plan9 использовался в Inferno и для процесса раскрутки (bootstrapping) компилятора Go.
В этой связи любопытно в ретроспективе посмотреть на решения kencc. И на этот счет есть заметка от самого Томпсона:

http://doc.cat-v.org/bell_labs/new_c_compilers/new_c_compiler.pdf

А здесь можно изучить код компилятора:

https://github.com/aryx/fork-kencc/tree/master/cc

Обсудим?
источник

МБ

Михаил Бахтерев in Compiler Development
Спасибо за ссылку
источник

DP

Dmitry Ponyatov in Compiler Development
Михаил Бахтерев
Лисп :) Во-первых, очень экзотично по нынешним временам. Во-вторых, можно сразу брать книгу о том, как написать интерпретатор Scheme за 48 часов, и на выходе уже будет нечто программируемое, а не просто парсер.

На Википедии есть обзор всяких разных синтаксических заморочек

https://ru.m.wikipedia.org/wiki/%D0%A1%D1%80%D0%B0%D0%B2%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%BE%D0%B2_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_(%D1%81%D0%B8%D0%BD%D1%82%D0%B0%D0%BA%D1%81%D0%B8%D1%81)
или Python + LLVM , формулировать распределенные вычислительные структуры в виде графов (CSP. DataFlow), и делать язык для оперирования такими структурами (описание, трансформация, преобразования на запросах с pattern matching)
источник

МБ

Михаил Бахтерев in Compiler Development
CSP - это не про графы.
источник

DP

Dmitry Ponyatov in Compiler Development
Михаил Бахтерев
CSP - это не про графы.
узел (цепочка) — SP, линк — C (и передача управления в цепочке)
источник

DP

Dmitry Ponyatov in Compiler Development
еще один язык на пи-исчислении: http://www.cs.rpi.edu/academics/courses/spring04/dci/picttutorial.pdf
источник

DP

Dmitry Ponyatov in Compiler Development
Михаил Бахтерев
Вот это, кстати, Plan9 умела делать из коробки, и обработка почты, например, там была элементарной задачей.

Бережно, в общем, храню исошечку с образом Plan9, как источник мудрости. Когда наступит апокалипсис, пригодится :)
зачем хранить, вроде еще Inferno OS есть в гостевом режиме, итп
https://xakep.ru/2015/08/19/node9/
источник