Size: a a a

2020 July 22

A

Andrew in ru.nim.talks
Dmitry Ponyatov
кстати Nim как раз натолкнул меня серьезно задуматься о трансляции (генерации сишного кода) из высокоуровневого интерпретатора типа Scheme/Lisp (Clojure наиболее близка кстати, годно сахарка добавлено)
А я хочу генератор Nim -> Rust.
источник

M(

MIT/Yardanico (alt) in ru.nim.talks
Andrew
А я хочу генератор Nim -> Rust.
не, смысла нет)))
источник

A

Andrew in ru.nim.talks
MIT/Yardanico (alt)
не, смысла нет)))
Избавиться от GC было бы неплохо
источник

M(

MIT/Yardanico (alt) in ru.nim.talks
а с ARC его нет по сути
источник

M(

MIT/Yardanico (alt) in ru.nim.talks
остаётся счётчик ссылок
источник

M(

MIT/Yardanico (alt) in ru.nim.talks
это не GC даже
источник

M(

MIT/Yardanico (alt) in ru.nim.talks
arc = automatic reference counting, не atomic если что
источник

A

Andrew in ru.nim.talks
Ты мне проще скажи - раст дорогим по скорости? 😃
источник

M(

MIT/Yardanico (alt) in ru.nim.talks
конешно
источник

M(

MIT/Yardanico (alt) in ru.nim.talks
и с ARC есть общая куча
источник

M(

MIT/Yardanico (alt) in ru.nim.talks
не нужно костылей для передачи данных между потоками, ну вернее там ещё не всё закончено, но к этому идёт
источник

M(

MIT/Yardanico (alt) in ru.nim.talks
источник

M(

MIT/Yardanico (alt) in ru.nim.talks
ещё с arc по дефолту используются goto исключения
источник

M(

MIT/Yardanico (alt) in ru.nim.talks
т.е. для исключений используется не setjmp, а goto
источник

M(

MIT/Yardanico (alt) in ru.nim.talks
по бенчмаркам самого Андреаса, по скорости примерно равно setjmp или исключениям в C++
источник

DP

Dmitry Ponyatov in ru.nim.talks
MIT/Yardanico (alt)
если ты имеешь ввиду о в некоторм виде трансляции lisp/scheme в Си, такое вроде бы есть уже
так там поди как в ниме — после генерации код отправляется в мусорку, а не в review, потому что сеньором-нечитаемая каша
источник

M(

MIT/Yardanico (alt) in ru.nim.talks
Dmitry Ponyatov
так там поди как в ниме — после генерации код отправляется в мусорку, а не в review, потому что сеньором-нечитаемая каша
ну так идиоматически код генерировать, это намного сложнее
источник

M(

MIT/Yardanico (alt) in ru.nim.talks
это нужно идиомы одного языка в идиомы другого переводить
источник

M(

MIT/Yardanico (alt) in ru.nim.talks
это в разы сложнее
источник

DP

Dmitry Ponyatov in ru.nim.talks
это если сам программист явно не прописывает сниппеты и шаблоны кода
источник