URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 103327
[ Назад ]

Исходное сообщение
"Выпуск языка программирования Rust 1.1, развиваемого проекто..."

Отправлено opennews , 26-Июн-15 10:42 
Спустя месяц с момента публикации (http://www.opennet.me/opennews/art.shtml?num=42241) первого стабильного релиза доступен (http://blog.rust-lang.org/2015/06/25/Rust-1.1.html) выпуск языка программирования Rust 1.1 (http://www.rust-lang.org), развиваемого проектом Mozilla, обеспечивающего автоматическое управление памятью и предоставляюшего средства для высокого параллелизма выполнения заданий, при этом обходясь без использования сборщика мусора и runtime. Параллельно с Rust совместно с компанией Samsung развивается экспериментальный браузерный движок Servo (http://www.opennet.me/opennews/art.shtml?num=36576), написанный (https://github.com/servo/servo/) на языке Rust и отличающийся поддержкой многопоточного рендеринга web-страниц и распараллеливанием операций с DOM (Document Object Model).

Одним из главных приоритетов в разработке новой версии была оптимизации времени сборки. В итоге, по сравнению с выпуском 1.0 удалось добиться увеличения скорости сборки на 32%. Из других изменений (https://github.com/rust-lang/rust/blob/master/RELEASES.md#ve...) отмечается улучшение сообщений об ошибках на этапе компиляции - большинство ошибок теперь снабжены дополнительными пояснениями (выводятся при указании опции "--explain"), отражающими причины возникновения проблемы. Добавлен новый API std::fs, предоставляющий функции для взаимодействия с файловой системой. Добавлена поддержка стандартной Си-библиотеки musl, которую можно использовать вместо Glibc в Linux, в том числе для формирования компактных статических сборок без внешних зависимостей. В пакетный менеджер Cargo, позволяющий получить нужные для программы библиотеки в один клик, добавлена возможность сборки пакета с передачей произвольных флагов компилятору rustc.


Одновремекнно заявлено о начале бета-тестирования выпуска Rust 1.2, в котором ещё на 30% ускорен процесс компиляции и представлены наработки по обеспеспечению распараллеливания сборки на многоядерных системах. Проведена оптимизация производительности пакетного менеджера Cargo, некоторые операции в котором удалось ускорить в 10 раз. Добавлена поддержка сборки при помощи MSVC (Microsoft Visual C).


URL: http://blog.rust-lang.org/2015/06/25/Rust-1.1.html
Новость: http://www.opennet.me/opennews/art.shtml?num=42504


Содержание

Сообщения в этом обсуждении
"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 26-Июн-15 10:42 
есть какая-либо хорошая IDE с поддержкой RUST ?

"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 26-Июн-15 10:47 
Буквально в соседней новости - Atom 1.0. Боюсь, что пока это самое близкое что есть к понятию IDE.

"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 26-Июн-15 10:58 
gnu/emacs

"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 26-Июн-15 11:03 
http://reangdblog.blogspot.com/2015/04/emacs-ide-rust.html

"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 26-Июн-15 11:07 
Как насчёт сначала научиться писать код, а потом уже думать о продуктивности?

"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 26-Июн-15 11:16 
> Как насчёт сначала научиться писать код, а потом уже думать о продуктивности?

Пробовать язык намного удобнее, имея нормальную подсветку и автодополнение хотя бы по стандартной библиотеке. Продуктивность применима не только к разработке, но и к обучению


"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 26-Июн-15 13:19 
Многие уже научились писать код. Это не сложно, слов не очень много надо помнить.

"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 26-Июн-15 13:34 
> слов не очень много надо помнить.

Эксперты дельфей и прочих вижуалбейсиков с вами не согласны!


"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 26-Июн-15 11:55 
Пока что https://github.com/RustDT/RustDT предоставляет что-то более-менее рабочее (отладка с gdb работает).

"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 26-Июн-15 17:22 
попробывал - не плохо. Реально gdb, автодополнение, подсветка синтаксиса/ошибок работают (есть поддержка racer-а). Можно удобно переходить в исходники стандартных библиотечных конструкций из кода.

"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено тоже Аноним , 26-Июн-15 19:53 
> попробывал - не плохо

Попробывал - плохо!
Попробовал - неплохо!


"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 26-Июн-15 12:05 
Официальный(тм) плагин для vim (подсветка и корректность синтаксиса). https://github.com/rust-lang/rust.vim

"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Нанобот , 26-Июн-15 12:31 
вот только это не IDE

"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 26-Июн-15 12:38 
SATA ? =)

"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 26-Июн-15 10:42 
> Си-библиотеки musl, которую можно использовать вместо Glibc в Linux

самое бестолковое название libc-библиотеке


"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено mapron , 26-Июн-15 18:27 
Да зря вы так. Хорошая она. Вон WRT на нее перешли. Еще бы MMU-less была поддержка, то тогда вообще uclibc в топку. А так пока приходится грызть^W пользовать последний.

"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 26-Июн-15 11:08 
так что они собираются делать с thread::scoped? Был же хороший RFC, как реализовать это без риска порчи памяти, но воз и ныне там

"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 26-Июн-15 11:35 
а можно поподробнее?

"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 26-Июн-15 12:22 
https://github.com/rust-lang/rust/issues/24292 - суть проблемы
http://smallcultfollowing.com/babysteps/blog/2015/04/29/on-r.../ - подробное объяснение

"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено уке , 26-Июн-15 11:21 
Если кто-то хочет потыкать его палочкой. И если этот кто-то уже не простреливает свою ногу плюсами, тогда можно и не тыкать. Внезапно, синтаксис не совпадает с семантикой. Язык сложный.

"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено anonymous , 26-Июн-15 11:42 

> Если кто-то хочет потыкать его палочкой. И если этот кто-то уже не простреливает свою ногу плюсами, тогда можно и не тыкать. Внезапно, синтаксис не совпадает с семантикой. Язык сложный.

Пруфы...

Особенно для "синтаксис не совпадает с семантикой".


"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено RazrFalcon , 26-Июн-15 11:55 
Сложнее плюсов?

"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 26-Июн-15 12:40 
если писать хелловорды с одними примитивными типами и не думая ни о какой модели памяти, то раст гораздо сложнее плюсов. В остальных случаях - даже проще, потому что куча ошибок ловится еще на этапе компиляции.

"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено ADMIN , 26-Июн-15 12:41 
Плюсы могут быть просты, как 5 копеек - скажем, их сложность начинается от pure C и до бесконечности, с прочтением всяких толстых томов страуструпа и александреску. Сложность нужна, чтобы следовать хорошим паттернам и не отстреливать себе органы. Раст, хачкель и прочие хорошие языки отличаются тем, что сразу отсекают всю простоту, например возможность сравнивать тёплое с мягким, присваивать овец баранам и так далее.

"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено погромист на хачкеле , 26-Июн-15 13:03 
>хачкель

проиграл в голос


"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 26-Июн-15 13:50 
>>хачкель
> проиграл в голос

Никто с тобой не играл.


"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Crazy Alex , 26-Июн-15 13:43 
Сложность плюсов заключается в том, что это мета-язык. А для конкретного проекта надо выбирать предпочтительный стиль написания и исходя из этого выбирать, какие возможности использовать.

Вторая, ещё большая сложность плюсов - в том, что о них болтают те, кто даже С++11 не освоил, а судит по стандартам почти 20-летней давности. Хотя даже тот стандарт не даёт сравнивать тёплое с мягким - если вы, конечно, на плюсах пишете, а не взяли по ошибке плюсовый компилятор для сишного кода.


"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 26-Июн-15 17:24 
Не только это, но в целом плюсы не так сложны если за тебя уже выбрали архитектуру приложения и она удачная.

"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 27-Июн-15 13:06 
так же и RUST и любой язык программирования

"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 26-Июн-15 12:03 
> синтаксис не совпадает с семантикой

А нефиг сравнивать переменные, когда у них разные типы.


"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 26-Июн-15 13:16 
Неделю назад же 1.0 был?
Надо Поттерингу systemd на Rust переписать. Что один, что другой раз в неделю обновляются...

"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 26-Июн-15 14:11 
> Неделю назад же 1.0 был?
> Надо Поттерингу systemd на Rust переписать. Что один, что другой раз в
> неделю обновляются...

А еще лучше -- возглавить разработку Rust!
Глядишь, через месяц и версии более менее серьезные выйдут (хотя бы 30 плюс, а то единичка -- даже не смешно!). И фичи в языке нормальные появятся -- типа встроенной ИДЕ, ФС и бутманагера!



"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 26-Июн-15 17:59 
>> Надо Поттерингу systemd на Rust переписать.
>А еще лучше -- возглавить разработку Rust!

Хм ... и что получится? SysteRust ? :)


"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 26-Июн-15 18:11 
> и что получится?

Ржавый Systemd, вестимо.


"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено spanasik , 26-Июн-15 23:02 
В качестве процедур язык будет порождать сразу целые ОС!

"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено vn971 , 27-Июн-15 12:14 
Зачем писать то чего вы не знаете? Это же попросту распространение сплетен. Самодисциплина -- хорошая всё же иногда штука.

Релиз Rust-1.0 тем временем состоялся 15 мая этого года.
http://blog.rust-lang.org/2015/05/15/Rust-1.0.html


"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено YetAnotherOnanym , 26-Июн-15 14:37 
> без использования сборщика мусора и runtime

А "без runtime" - это как?


"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Andrey Mitrofanov , 26-Июн-15 14:54 
>> без использования сборщика мусора и runtime
> А "без runtime" - это как?

У них эта мантра в контексте(*), а новости он менее угадываем. Копипасты (с новости про 1.0) стирают границы! Причем там контекст не "без" а про "для ... не обязательны".

*-Какая-то фигня в носу про линковку с Си-кодом - http://blog.rust-lang.org/2015/04/24/Rust-Once-Run-Everywher...


"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 26-Июн-15 14:56 
> А "без runtime" - это как?

Ну, типа, можно при надобности обойтись без шахмат с библиотекаршами и запилить стремительный домкрат^W^W самодостаточный код, типа ядра или драйвера -- что, как бы, сделать на  жабе или питоне несколько затруднительно ;)



"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено vn971 , 27-Июн-15 12:15 
Грубо говоря, без VM (обслуживающей виртуальной машины).

Т.е. rust-программы компилятся напрямую в нативный код, безо всяких интерпретаторов, VM для сбора мусора и т.д.


"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 27-Июн-15 13:16 
> А "без runtime" - это как?

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

На си запросто пишут даже boot loader, стартующий проц из состояния "вокруг ничего не работает, даже DRAM еще недоступна". При этом си - генерит код. По тому что написал програмер. Но никаких вызовов в внешние либы не делается, динамическое выделение памяти никто не делает. В сях обычно "все лишнее" можно послать в пень ключом -nostdlib (запрещает линковать стандартные либы без явного на то пожелания). Внезапно, рантайм не является чем-то обязательным. Это только наивные хипстеры не в курсе.


"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 26-Июн-15 15:56 
C++ Software Developer
Уровень зарплаты
Город
Требуемый опыт работы
от 550 000 до 850 000 руб.
Москва

"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 26-Июн-15 15:58 
Зачем тратить время на изучение очередного (само)убийцы С++?

"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 27-Июн-15 13:18 
> Зачем тратить время на изучение очередного (само)убийцы С++?

Так там не убийца си++, а си++. Он с нами будет еще долго и поэтому тратить на него время смысл - имеет. Если хочется кодить что-то уже достаточно большое, но чтобы оно все еще работало круто и быстро, вызывая лютую боль пониже спины у жабистов и прочих бидонистов. Собственно за это плюсовикам и платят. Нормально в принципе платят.


"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено anonymous , 26-Июн-15 17:42 
В месяц? И как это соотносится с зарплатой по другим языкам?

"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 27-Июн-15 13:19 
> В месяц? И как это соотносится с зарплатой по другим языкам?

С Rust даже сравнить не выйдет, будет деление на ноль. За отсутствием вакансий.


"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 27-Июн-15 20:41 
Ну почему же, уже сейчас в мозиллу можно идти, особенно если есть опыт с другими языками программирования.

А в целом, если посмотреть на то что с RUST идет анализатор кода из коробки, которые для C/C++ стоят в тыс долларов и то что багов меньше будет идти на продакшен даже после начального/среднего уровня программиста, есть у него потенциал для выбора в качестве языка разработки в проектах.


"Не вводите людей в заблуждение."
Отправлено Аноним , 26-Июн-15 18:12 
А прочитать описание этой вакансии перед вбросом сюда можно было? Там вообще-то указано, что требуется разработчик для переезда в Лондон и зарплата в рублях приведена чисто для галочки.

Ну и по самой вакансии и личному моему опыту. Имея за плечами 6 лет опыта разработки распределённых систем на С++, в Лондоне можно спокойно рассчитывать на общую зарплату в 100-120 тысяч фунтов в год. При этом не стоит забывать, что тут заплаты всегда указываются до уплаты налогов.


"Не вводите людей в заблуждение."
Отправлено Аноним , 26-Июн-15 19:36 
Ну 50-60к фунтов тоже не плохо

"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено нонейм , 26-Июн-15 18:13 
Ура
наконец пошли шлепать стабильные версии руста и перестали постоянно ломать совместимость
хотя с такими темпами видать скоро 2.0 не за горами а к концу года и третий нашлепают

"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено vn971 , 27-Июн-15 12:18 
Новые релизы выпускаются раз в 6 месяцев. Т.е., их ещё 4 штуки будет до нового года. Честно говоря думаю что не успеют накопить достаточно крупных изменений чтобы 2.0 выпускать, думаю скорее будет 1.5.

"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Владимир , 26-Июн-15 18:24 
"Since the Rust compiler is written in Rust, it must be built by a
precompiled "snapshot" version of itself"
Для сборки из безысходников, нужно иметь уже собранный бинарь.

Жаль, пополнил ряды не C-компилируемых компиляторов после g++ и Clang.
Меж тем при запуске configure в отсутствие rustc в системе ничего не говорит. Надеется позже вытянуть компилер по сети. Т.е. если вы решите собрать компилятор оффлайн - имейте в виду.


"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Crazy Alex , 26-Июн-15 22:54 
А на кой оно C-компилируемое, в чём преимущество? Если считаешь, что делаешь хороший язык - логично использовать его преимущества при разработке компилятора.

"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 27-Июн-15 13:20 
> А на кой оно C-компилируемое, в чём преимущество? Если считаешь, что делаешь
> хороший язык - логично использовать его преимущества при разработке компилятора.

Более того, неспособность языка собрать самого себя - как бы намекает... :)


"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Crazy Alex , 27-Июн-15 21:02 
Да ни на что она не намекает. Могут приоритеты другими быть, язык может конкретно для компилятора не очень подходить... много чего бывает. Например, те же дишники только сейчас собрались перебираться на компилятор, написанный на D, когда он достаточно стабилизировался и собрались люди, умеющие на нём писать - и умеющие писать компиляторы.

"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 26-Июн-15 19:28 
Вы меня конечно извините, но я попридираюсь.

> средства для высокого параллелизма выполнения заданий

Легковесные потоки оттуда выпилили почти год назад. Теперь там есть только обычные потоки ОС, и ни о каком высоком параллелизме речи идти не может (ну не выше, чем в других языках без GIL).

> пакетный менеджер Cargo, позволяющий получить нужные для программы библиотеки в один клик

Клик чем и куда?


"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 26-Июн-15 19:34 
каждый дро4ет как он хочет, а мы дро4им на crystal-lang

"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Crazy Alex , 26-Июн-15 22:58 
Няша, да. Судя по примерчику на головной странице можно не объявлять переменные? Ок, в мусорку сразу, раз на примере других учиться авторы не хотят. Правда, зачем - ведь в перле и JS "use strict;" просто так, для развлечения сделали.

"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 27-Июн-15 21:14 
http://benchmarksgame.alioth.debian.org/u64/compare.php?lang...

При средне одинаковом количестве строк кода, JAVA, если сравнивать с тем же на RUST:
в 2 раза дольше выполняет приложение
в 3 раза больше использует памяти


"Выпуск языка программирования Rust 1.1, развиваемого проекто..."
Отправлено Аноним , 27-Июн-15 23:05 
> http://benchmarksgame.alioth.debian.org/u64/compare.php?lang...
> При средне одинаковом количестве строк кода, JAVA, если сравнивать с тем же

Это теперь раст идет сразу после си и плюсов. А еще пару дней назад был наравне с джавой ;)

И, хотя полезность таких микробенчей под вопросом -- неплохо.

> Rust действительно безопасный, но, к сожалению, далеко не быстрый. По скорости на момент написания[24.04.15 прим. анонима] этих строк Rust сравним с Java, Go и Haskell:

(это из бложика очередного "знатока-анализатора", ссылку приводить не хочу -- тут достаточно загуглить или поискать обсуждение-вброс на ЛОРе)