15. Andrew Kelley опубликовал доклад State of the (Tagged) Union Address
На YouTube выложено видео Эндрю Келли с докладом State of the (Tagged) Union Address. Подробностей о содержании нет — в карточке доступен только заголовок.
На YouTube выложено видео Эндрю Келли с докладом State of the (Tagged) Union Address. Подробностей о содержании нет — в карточке доступен только заголовок.
Новый язык Bend: синтаксис как Python, компилируется в нативный код со скоростью C и автоматическим распараллеливанием на CPU/GPU. Интегрирован type checker на основе зависимых типов (как Lean) — проверка доказательств занимает секунды. В LAWS.bend можно записывать законы, и AI-агент не сможет смержить код, нарушающий их — «математически невозможно».
Тип !, обозначающий никогда не возвращающие функции, долгое время был нестабильным внутри компилятора. 24 августа начался процесс стабилизации. Подробности доступны за paywall LWN.
Rust Project совместно с Rust-C++ Interop Initiative запускает ночной эксперимент по перегрузке функций для FFI. Используется атрибут #[rustc_splat], позволяющий вызывать перегруженные функции без двойных скобок. Эксперимент на стадии, когда можно пробовать, но RFC нет, и всё может быть удалено.
Modular выкатил Mojo 1.0 после первого релиза в 2023 году и обещает теперь более стабильную основу для долгих проектов. В релизе свели variables к var, объединили closures, оставили один Pointer и добавили Python-style lambda, а LSP-сервер, по словам команды, стал заметно стабильнее.
В nightly Rust появился для тестирования RFC 3323: impl_restriction ограничивает область реализации трейта (например, impl(crate)), а mut_restriction — область мутации поля (pub mut(crate)). Это более прямой вариант sealed trait и геттеров, с понятными ошибками компилятора; работает и для enum-вариантов, и для union.
В devlog за 25 июня команда Zig пишет про новые semantics для bitCast и пачку улучшений в LLVM backend. Для языка это не косметика: такие вещи обычно всплывают в местах, где компилятор раньше делал что-то слишком «магическое», а теперь пытаются сделать это менее хрупким.
В blog.racket-lang.org вышел релиз Rhombus v1.0 — языка в экосистеме Racket, который делает отдельную ставку на свой синтаксис. Тут уже не просто «еще один диалект Lisp», а попытка собрать более удобную поверхность для тех, кому в Racket хочется меньше скобок и больше структуры.
На сайте ciao-lang.org опубликован раздел про Assertions and their Use в Ciao. Это не новость уровня «все пропало», а полезная техдокументация для тех, кто копает в language tooling и хочет понять, как в Ciao устроены assertions и зачем они вообще там нужны.
Команда Racket выпустила v9.2 — без пресс-релизного пафоса, но с очередным набором изменений для самого языка и стандартной библиотеки. В таких релизах интересно не «что изменилось вообще», а какие мелкие несовместимости и улучшения теперь придётся разбирать тем, кто на Racket реально живёт.