Я, напротив, не понимаю, почему после 0.9 многие стараются сделать 1.0. Единичка впереди должна означать зрелость, а не переполнение второго числа версии.
Разработчики должны контролировать соответствие версии и зрелости продукта, иначе смысл версий пропадает, можно тогда совсем приписывать число даты вместо версии.
Многие проекты кстали используют версии а ля 2014.04, поскольку привязаны к датам.
А в версиях 0.10 и выше ничего плохого нет, все вполне соответствует семантической версионности, которая является одним из лучших механизмов версионирования, где minor компонент повышается при внесении обратно-совместимых изменений, а major — если совместимость ломается.
В случае с rust, это, кстати пока что не работает, 0.x ломается и будет ломаться до стабилизации, которая будет в 1.0.
Я лишь говорю, что это не честно привязываться к версии, а не к дате. До какого-то периода года, многие проекты после 0.9 версии использовали 1.0 версию, пусть альфа, бета, rc, но 1.0, а в какой-то момент появилась новая мода. Для меня версия 0.10+ означает лишь какой-то не ломающийся ночной билд. Да и до сих пор присутствует путаница, какие-то проекты после 0.9 версии релизят 1.0, а какие-то 0.10, вот и не понятно чего ждать.
Изменения хорошие, учитывая rust-core на rust теперь реально писать freestanding код для всяких эмбеддедов полностью без C/asm вставок. Пишу вот свежий «ARM для самых маленьких» про rust. Код получается очень забавный, LTO в компиляторе шикарное, местами оптимизации просто поражают. Язык вполне себе терпит издевательства при работе без стека, еще пара-тройка плюшек и он таки составит конкуренцию С++ (особенно когда его допилят до 1.0).
«При работе без стека» от блин, хочу я на это посмотреть :-) Без кучи конечно же, используя только стек. У rust для этого вполне удобные и эффективные move-оптимизации. Немного хочется аналог placement new из C++, но его скоро обещают в каком-то виде (не могу привести сейчас точную цитату, обсуждалось на IRC).
Не так давно Servo (браузерный движок на Rust, один из крупнейших проектов на этом языке) прошёл тест Acid2:
history
Некто Как обнаружилось, farcaller запустил Rust на контроллере. Отличная работа!
photo
Понемногу ковыряю язык. Решал задачки с rosettacode, слил изменения с репозиторием rust-rosetta Hoverbear. На данный момент пытаюсь делать лабораторные по стеганографии на Rust.
Почитал про rust. Нашел что народ использует язык для низко-уровневого программирования. Пытаются даже операционные системы писать github.com/mozilla/rust/wiki/Operating-system-development Неужно rust отберет монополию у языка С в этой области?
Абсолютную монополию — возможно. А вот лидирующее положение займет (если займет) далеко не сразу. Сперва надо будет закрыть поддержку гигантских объемов кода на C/C++
Данный релиз вообще крайне интересный в первую очередь рефакторингом библиотек. Если раньше в драйверах была возможность использовать только сам компилятор без libstd и libextra, то теперь, теоретически, появляется возможность использовать libstd и для драйверов, правда шлифовка напильником все равно требуется.
Чем Rust лучше D? Пока я вижу одни недостатки и слабую инфраструктуру. Тот же D хотя бы позволяет использовать уже готовый код на Си, а тут что? Тысячи библиотек с нуля предлагается писать? Вдобавок к этому синтаксис весьма своеобразный — скажем так на любителя.
Rust ABI-совместим с кодом на Си и отлично с ним взаимодействует. libstd кое-где использует libc. Библиотек мало, но язык ещё не обрёл стабильность. Про синтаксис любого языка можно сказать, что он своеобразен. Что с того? На мой взгляд, синтаксис Rust близок C++, с некоторыми частями из Haskell и Python.
Моделью памяти, в первую очередь. Так же отсутствием необходимости в GC. Библиотеки с нуля писать не нужно, т.к. Rust имеет отличную практически бесшовную интеграцию с Си библиотеками.
Еще Rust лучше тем, что он пишется не как хобби пары чуваков, а как язык для решения конкретных задач парой корпораций (Мозилла и Самсунг) и как следствие, есть надежда что язык в скорости обретет стабильность. В отличие от уже лет 10 как «почти стабильного» D, который, тем не менее, большинство PM-ов не допускает в продашн как раз из за опасений связанных с развитием языка.
На данный момент, часть тестов реализована и лежит в папочке с исходниками. Добавлять же на benchmarksgame, до выхода Rust 1.0 и стабилизации API никто не будет, т.к. на данный момент ломающие изменеиня возникат по нескольку раз в неделю.
Вышел Rust 0.10