Size: a a a

Compiler Development

2020 December 03

M

MrSmith in Compiler Development
Pavel Samolysov
В расте получается только через макрос.
Если нужна генерация то да
источник

M

MrSmith in Compiler Development
Но если нужно что то compiler time то есть const
источник

M

MrSmith in Compiler Development
Вообше да, уже тягатеем к офтопу, но по мне ошибка дизайна
источник

BD

Berkus Decker in Compiler Development
Pavel Samolysov
В растбуке написано, что в расте дженерики тоже мономорфизируются. Нашел RFC 2000 что-ли про Non-type generic parameters, но пишут, что реализовать его не так то просто. Мне сейчас интересно насколько то же умножение матриц раздуется если сделать на шаблонах того же С++, ну и вот подсказали идею с зависимыми типами.
Ну частично non-type parameters уже есть в виде const generics. Но это только часть.
источник

PS

Pavel Samolysov in Compiler Development
Да, RFC 2000 про него и говорил, но детально ещё не копал, спасибо
источник

M

MaxGraey in Compiler Development
MrSmith
Можно ссылку? Не то что бы я не верил понятно что будут краивые случаи, которые понятно дело можно и с лайфтаймами посчитать но месяцами, но не представляю как они с явными могут возникнуть
Не очень понял ссылку на что? На то, когда использовать счетчики единственный вариант? Я уже наверное много раз приводил пример - это чиклические структуры данных. Вот дока: https://static.rust-lang.org/doc/master/std/rc/index.html

Вот еще ответ на SO, если вы мне неверите:
https://stackoverflow.com/a/20704252
источник

M

MrSmith in Compiler Development
MaxGraey
Не очень понял ссылку на что? На то, когда использовать счетчики единственный вариант? Я уже наверное много раз приводил пример - это чиклические структуры данных. Вот дока: https://static.rust-lang.org/doc/master/std/rc/index.html

Вот еще ответ на SO, если вы мне неверите:
https://stackoverflow.com/a/20704252
Да, я понял вы про smart pointers)
источник

M

MaxGraey in Compiler Development
Если кто хочет подискусировать на эту тепу я продублировал это в PL чате
источник
2020 December 04

PS

Pavel Samolysov in Compiler Development
Вот что нашёл, написали JVM на Rust https://youtu.be/7ECbwgkHdAE
источник

М

Михаил in Compiler Development
Sorry, не удержусь. Такое ощущение, что написать нечто на Rust - героический подвиг, достойный отдельного обсуждения. Сам не практиковал, но возникает вопрос: реально так тяжело писать?
источник

М

Михаил in Compiler Development
Зато практиковал utf-8 в лексере. Не знаю, почему, но почему-то вполне хватило обычного побайтового сравнения строк для составления разнообразных таблиц. Я, правда, вход ограничил только русским, латиницей и греческим.
источник

AT

Alexander Tchitchigi... in Compiler Development
Михаил
Sorry, не удержусь. Такое ощущение, что написать нечто на Rust - героический подвиг, достойный отдельного обсуждения. Сам не практиковал, но возникает вопрос: реально так тяжело писать?
Ага, borrow-checker вздохнуть не даёт! Bondage and discipline! 😂
источник

М

Михаил in Compiler Development
Alexander Tchitchigin
Ага, borrow-checker вздохнуть не даёт! Bondage and discipline! 😂
МммМм. Звучит заманчиво, в качестве головоломки :)
источник

AT

Alexander Tchitchigi... in Compiler Development
Михаил
МммМм. Звучит заманчиво, в качестве головоломки :)
Ага, только за это Rust и любим! 😂
источник

М

Михаил in Compiler Development
И ещё про матрицы. А чем плох подход Julia? Можно откомпилировать код прямо под форму загруженных матриц. Или речь идёт не о scientific-программировании?
источник

PS

Pavel Samolysov in Compiler Development
Михаил
Sorry, не удержусь. Такое ощущение, что написать нечто на Rust - героический подвиг, достойный отдельного обсуждения. Сам не практиковал, но возникает вопрос: реально так тяжело писать?
Речь все же не о нечто, а о jvm, хоть и игрушечной. Даже если бы на питоне написали, все равно достойный уважения труд.
источник

М

Михаил in Compiler Development
Или с этим принято в другой чат?
источник

AT

Alexander Tchitchigi... in Compiler Development
Михаил
И ещё про матрицы. А чем плох подход Julia? Можно откомпилировать код прямо под форму загруженных матриц. Или речь идёт не о scientific-программировании?
Это Вы к чему??? Потерял нить.
источник

PS

Pavel Samolysov in Compiler Development
Михаил
И ещё про матрицы. А чем плох подход Julia? Можно откомпилировать код прямо под форму загруженных матриц. Или речь идёт не о scientific-программировании?
Про матрицы я вчера спрашивал, речь о just for fun с целью понять что может компилятор. С julia не знаком.
источник

М

Михаил in Compiler Development
Alexander Tchitchigin
Это Вы к чему??? Потерял нить.
Выше было обсуждение того, как бы оптимально умножать матрицы, не зная заранее их размеров. Multistaged компиляция может быть ответом
источник