LINUX.ORG.RU

Вышел Rust 1.37.0

 ,


2

6

Среди нововедений:

  • Разрешено ссылаться на варианты enum через псевдонимы типов (type aliases), например через Self.
  • cargo vendor теперь входит в стандартную поставку.
    • С помощью cargo vendor можно явно скачивать и использовать полную копию всех исходных кодов всех зависимостей. Это полезно для компаний с монорепозиториями, которые хотели бы хранить и анализировать весь исходный код, используемый в их ПО.
  • Поддержка const _:.
  • Поддержка Profile Guided Optimization.
  • Поддержка #[repr(align(N))] для лучшего контроля над выравниванием в Enum.
  • Изменения в стандартной библиотеке.
  • Изменения в Clippy
  • Microsoft и Amazon стали спонсорами Rust, предоставив облачную инфраструктуру для сборки и тестирования Rust.

>>> Анонс

★★★★★

Проверено: jollheef ()
Последнее исправление: unfo (всего исправлений: 3)
Ответ на: комментарий от anonymous

Ничего сложного в формошлепстве нет, справится любой индус.

Анонимы такие анонимы.

RazrFalcon ★★★★★
()
Ответ на: комментарий от iZEN

Что-то я не вижу на FreeBSD «горы» софта на Rust

Чо там, ripgrep так и не завезли в порты? Вот его положить на firefox, уже горка!

anonymous
()
Ответ на: комментарий от vertexua

То что вчера было лабой, потом становится продуктом

Как станет тогда и приноси, а пока только ломтик жирнолиса наблюдаем.

anonymous
()
Ответ на: комментарий от vertexua

Как там серво поживает кстати?

anonymous
()
Ответ на: комментарий от RazrFalcon

А хайпа столько, что расту и не снилось.

хайп на расте самый большой, и мне(личное мнение!) кажется что замешаны боты

на гитхабе большая часть проектов уровня хело-ворд и порты 200-строчных Си библиотек на Раст, имеют по 500+ лайков
когда аналогичные проекты(на других языках) или сами оригиналы с которых порты сделаны, имеют 5-10 лайков
и если посмотреть на лайкнувших-то пустые аккаунты, или аккаунты с десятком форков (но это 90% акков на гитхабе таких(ботов), не удивительно)

100% проектов(которые порты, тоесть теоретически юзабельные) на расте используют unsafe, и в 99% проектах стоит жирным что это проект не завершен и находится в альфа стадии(годами)

от себя добавлю-в то время как существует SPMD Program Compiler (разные, хоть Вулкан, хоть Интел) которые продвигают производительность и дизайн логики на новый уровень

влетает Раст в стройку с однопотоком и хело вордами, большой шаг назад как помоему

anonymous
()
Ответ на: комментарий от iZEN

Вот так ты незаметно перешёл от просто «прикладного софта», до софта который нужен тебе и ещё собран для FreeBSD.

vertexua ★★★★★
() автор топика
Ответ на: комментарий от vertexua

В целом Раст мне зашёл. Но отсутствие вменяемого базиса пока меня парит. А так же, как сына Го, отсутствие всего необходимого среднему анонимусу в стандартной библиотеке тоже парит. В общем подождём пока. Подождём-с.

anonymous
()
Ответ на: комментарий от RazrFalcon

А тебе регулярки не нужны? Предпочитаешь все тянуть из васянской npm-like помойки? Или суровый рустер настолько суров, что пишет свою реализацию регулярок?

anonymous
()
Ответ на: комментарий от vertexua

А что, десктоп на FreeBSD не релевантен обычному десктопу *nix?

iZEN ★★★★★
()
Ответ на: комментарий от seiken

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

anonymous
()
Ответ на: комментарий от anonymous

на гитхабе большая часть проектов уровня хело-ворд и порты 200- > строчных Си библиотек на Раст, имеют по 500+ лайков
когда аналогичные проекты(на других языках) или сами оригиналы > с которых порты сделаны, имеют 5-10 лайков
и если посмотреть на лайкнувших-то пустые аккаунты, или > аккаунты с десятком форков (но это 90% акков на гитхабе > таких(ботов), не удивительно)

Абсолютно согласен, главное достижение Раста — это популяризация ХОП (хайп-ориентированное программирование).

anonymous
()
Ответ на: комментарий от baist

Переизобретаешь X11?

Смотри, как бы он не начал переписывать Xserver или xlib на Расте, как подобает адептам. А, нет, не начнет, это же сложно, лучше написать N+1 реализацию калькулятора, ну или coreutils там «портировать».

anonymous
()
Ответ на: комментарий от anonymous

Я припоминаю что процесс написания coreutils рассматривался то ли в k&r (70х годов книжка на минутку) то ли ещё где. Зачем ни это длеают вообще? Не проблема запилить реализацию, проблема запилить полноценную и мощную реализацию, которой можно будет доверять.

anonymous
()
Ответ на: комментарий от anonymous

Зачем они это делают вообще?

Ну, чтобы написать что-то сложное и полезное, нужны знания предметной области, а хайпа ведь хочется. Выше давали ссылку на адепта, который переписывает coreutils, прямым текстом заявляя, что делает это просто для изучения языка, в результате имеем 5000 звездочек на github'е, другие адепты счастливы, ведь их освободили от оков «небезопасной» реализации coreutils. Я подозреваю, что зарплату профессиональным раст-программистам (если таковые существуют вообще) выдают тоже звездочками.

anonymous
()
Ответ на: комментарий от anonymous

Чем-то напоминает js хайп с наполнением npm хипсторским дерьмом.

crutch_master ★★★★★
()
Ответ на: комментарий от RazrFalcon

Лучше опциональная помойка, чем свалка в std.

Нет. Скудная стдлиба + дрянь в стиле npm = адок, где все зависит от всего (и это все васянское). Хочется по грабелькам походить?

anonymous
()
Ответ на: комментарий от RazrFalcon

В мозилле небось карго-дерьмо не используют, отдали вам плебеям, жрите мол с лопаты.

anonymous
()
Ответ на: комментарий от RazrFalcon

Почему я и говорю про самый _минимальный_ набор контролов. В совокупности с богатыми возможностями по стилизации и компоновке получаем базу для творчества. А материал дезигн сообщество само запилит.

Как в браузере. Народ привык, что каждая страница это отдельная история в плане дизайна — и это правильно. Контролы, например, на лэндинге и на информационной страницэ это сильно разные контролы

Deleted
()
Ответ на: комментарий от RazrFalcon

Еще слака, скайп, дискорд, ватсап.. кажется тут есть закономерность )

Deleted
()
Ответ на: комментарий от baist

Вот это критерии сравнения

Приведи свои. Какие проблемы

Deleted
()
Ответ на: комментарий от iZEN

Переписано, это слишком громко сказано.

abcq ★★
()
Ответ на: комментарий от baist

X больше про окна и драйвера. А я про то, что внутри окна. Набор базовых компонентов, стили, лэйауты, и протокол управления этим извне. А кто эти компоненты будет рисовать — иксы, gtk или SwiftUI — безразлично. Главное, что твой код будет взаимодействовать с любой из таких вундервафель одинаково и ты сможешь не, меняя логику, конпелять под любую платформу, под которую такая либа есть.

Стандартные библиотеки современных языков уже хорошо абстрагированы от особенностей архитектур. Поэтому писать безголовые переносимые сервисы проблем нет. Единственная загвоздка — нативный гуй, который слишком разный и слишком сложный. Вышеопианная поделка частично закрыла бы эту проблему

Deleted
()
Последнее исправление: Deleted (всего исправлений: 2)
Ответ на: комментарий от seiken

В расты ты всегда пользуешься cargo - это почти гарантировано. А там добавить строчку в Cargo.toml - не проблема.

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

vertexua ★★★★★
() автор топика
Ответ на: комментарий от anonymous

https://docs.rs/multimap/0.6.0/multimap/, хотя это на основе HashMap.

К этой структуре данных слишком много вопросов чтобы рубить с плеча. Можно захотеть горы вариаций

  • HashMap<K, Vec<T>>
  • HashMap<K, HashSet<T>>
  • HashMap<K, BTreeSet<T>>
  • BTreeMap<K, Vec<T>>
  • BTreeMap<K, HashSet<T>>
  • BTreeMap<K, BTreeSet<T>>

Стандартная библиотека старается не навязывать комбинцию. И через Entry API работать с этим просто.

map.entry("key").or_default().push("value");

При этом все еще можешь удалить все по одному ключу за один раз.

vertexua ★★★★★
() автор топика
Последнее исправление: vertexua (всего исправлений: 5)
Ответ на: комментарий от vertexua

В расты ты всегда пользуешься cargo - это почти гарантировано. А там добавить строчку в Cargo.toml - не проблема.

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

anonymous
()
Ответ на: комментарий от anonymous

В то же время берем какой-нибудь DOOM из 1993 года и после небольших доделок собираем хоть для микроволновки.

anonymous
()
Ответ на: комментарий от anonymous

Ясно, очередная шляпа, которой ничего не соберешь, если отвалился инет или сдох сервер.

cargo vendor

vertexua ★★★★★
() автор топика
Ответ на: комментарий от snake266

Ну fetch для одного разработчика, vendor - для организации, которая боится что новый разработчик с чистой машиной будет зависеть от crates.io

vertexua ★★★★★
() автор топика
Ответ на: комментарий от RazrFalcon

Что вам нужно в стандартной либе? Вебсервер, регулярки и прочий бред как в Go?

Чем больше тем лучше. То что есть в стандартной библиотеке — то на что можно опереться. К тому же это способ сконцентрировать ресурсы сообщества в одной точке, а не распылять на 100500 недоделанных фигнь (что и наблюдается).

anonymous
()
Ответ на: комментарий от RazrFalcon

Лучше опциональная помойка, чем свалка в std.

Чёт бред несёшь.

anonymous
()
Ответ на: комментарий от anonymous

В плюсах ситуация не лучше и все плюсовые реализации какое-то днище.

RE2 достаточно для всех адекватных случаев жизни. И никакого лукахеда и лукбехайнда. Пох ваще.

anonymous
()
Ответ на: комментарий от anonymous

проблема запилить полноценную и мощную реализацию, которой можно будет доверять

Во-во. +100. А просто перекладывать с Си — детский сад.

anonymous
()
Ответ на: комментарий от vertexua

А там добавить строчку в Cargo.toml - не проблема.

А тулзу, которая сама это сделает не подвезли ещё? А то чёт переключать вкладки в текстовом редакторе — не камильфо вообще.

anonymous
()

Да нафиг раст. Пофиг чё там за язык, просто находиться в едином информационном поле с неадекватами, переписывающими корутилс без нормального веб-сервера и регулярок, не хочется.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.