The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от opennews (?), 23-Янв-26, 00:05 
Опубликован релиз языка программирования  Rust 1.93, основанного проектом Mozilla, но ныне развиваемого под покровительством независимой некоммерческой организации Rust Foundation. Язык сфокусирован на безопасной работе с памятью и предоставляет средства для достижения высокого параллелизма выполнения заданий, при этом обходясь без использования сборщика мусора и runtime (runtime сводится к базовой инициализации и сопровождению стандартной библиотеки)...

Подробнее: https://www.opennet.me/opennews/art.shtml?num=64660

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по времени | RSS]


2. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +2 +/
Сообщение от Карлос Сношайтилис (ok), 23-Янв-26, 00:19 
Скромный релиз
Ответить | Правка | Наверх | Cообщить модератору

63. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +3 +/
Сообщение от Аноним (63), 23-Янв-26, 11:49 
Паскаль изначально умел безопасно работать с памятью.
Ответить | Правка | Наверх | Cообщить модератору

106. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  –1 +/
Сообщение от Аноним (106), 23-Янв-26, 15:28 
И бэйсик.
И куча всего чего, и сейчас, работает безопасно с памятью.
Какие ещё инсайты будут?
Ответить | Правка | Наверх | Cообщить модератору

110. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (110), 23-Янв-26, 15:49 
Какой ты ненасытный
Ответить | Правка | Наверх | Cообщить модератору

115. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +1 +/
Сообщение от Аноним (115), 23-Янв-26, 16:03 
Паскаль не имеет достаточно продвинутой системы типов, для безопасной работы с памятью.
Паскалисты это латентные сишники
https://wiki.freepascal.org/Memory_Management#Dangling_Pointers
https://wiki.freepascal.org/Memory_Management#Memory_Managem...
https://wiki.freepascal.org/Memory_Management#Don't_Free
Ответить | Правка | К родителю #63 | Наверх | Cообщить модератору

142. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (142), 23-Янв-26, 19:09 
Никогда не умел, даже намёков на это не было.
Ответить | Правка | К родителю #63 | Наверх | Cообщить модератору

66. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +2 +/
Сообщение от Аноним (63), 23-Янв-26, 12:07 
Есть существенные подвижки:

"riscv64 ... второй уровень поддержки, который подразумевает гарантию сборки, но отсутствие гарантий при прохождении тестового набора"

отсутствие гарантий при прохождении тестового набора - это как так? Неужели компилятор может выдать неправильный код?

Ответить | Правка | К родителю #2 | Наверх | Cообщить модератору

68. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +2 +/
Сообщение от Анонимусс (?), 23-Янв-26, 12:35 
> отсутствие гарантий при прохождении тестового набора - это как так?

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

> Неужели компилятор может выдать неправильный код?

Конечно.
В любом компиляторе (что в rustc, что в llvm, что в gcc) могут быть баги.
Вот напр:
  rustc - github.com/rust-embedded/wg/issues/361
  llvm - github.com/llvm/llvm-project/issues/176001
  gcc - github.com/riscvarchive/riscv-gcc/issues/378

> Неужели компилятор может выдать неправильный код?

Разумеется!)) А еще тесты не гарантия правильной работы.
Они гарантируют только то, что ими покрыто при условии что в самих тестах нет багов))

Ответить | Правка | Наверх | Cообщить модератору

75. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +1 +/
Сообщение от Аноним (75), 23-Янв-26, 13:17 
>   gcc - github.com/riscvarchive/riscv-gcc/issues/378

Там и поинтереснее примеры были - сам фин ругался, т.к. ловили их уже в ядре:
https://lkml.org/lkml/2014/7/24/584
https://gcc.gnu.org/legacy-ml/gcc/2012-02/msg00027.html
https://gcc.gnu.org/legacy-ml/gcc/2009-11/msg00505.html

Ответить | Правка | Наверх | Cообщить модератору

95. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (63), 23-Янв-26, 14:35 
Если специалисты не могут написать компилятор без ошибок, как можно доверять высказываниям этих же спецов о "безопасной работе с памятью"?
Ответить | Правка | Наверх | Cообщить модератору

103. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (103), 23-Янв-26, 15:12 
Если врачи не научились лечить все виды рака, то давай твой аппендицит тоже оставим как есть?

Ошибки будут всегда.
Даже для верифиции кода используется программа в которой тоже могут быть ошибки.
Но каждый уровень добавляет проверки и уменьшает вероятность ошибки.

Ответить | Правка | Наверх | Cообщить модератору

112. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (110), 23-Янв-26, 15:53 
> Если хирург не умеет ровно сделать разрез, не задев другие органы, давай не будем доверять ему оперировать твой аппендицит?

Поправил. А то твоя аналогия слишком уж кривая была.

Ответить | Правка | Наверх | Cообщить модератору

117. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +1 +/
Сообщение от Аноним (115), 23-Янв-26, 16:04 
А вы на адрес обратите внимание. Ошибки в кодогенераторе llvm/gcc, совершенно внезапно.
Ответить | Правка | К родителю #95 | Наверх | Cообщить модератору

151. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (63), 23-Янв-26, 19:59 
> Ошибки в кодогенераторе llvm

Дай угадаю, rust что использует?

Ответить | Правка | Наверх | Cообщить модератору

158. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (75), 23-Янв-26, 22:04 
>> Ошибки в кодогенераторе llvm
> Дай угадаю, rust что использует?

Ошибки в gcc, но виноват опять раст ...

Ответить | Правка | Наверх | Cообщить модератору

86. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +1 +/
Сообщение от Аноним (86), 23-Янв-26, 13:50 
> Неужели компилятор может выдать неправильный код?

Зато безопастный.

Ответить | Правка | К родителю #66 | Наверх | Cообщить модератору

6. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  –3 +/
Сообщение от Аноним (6), 23-Янв-26, 00:30 
Чё там какие-нибудь подвижки по асинхронным генераторам? Сабж даже питон неспособен заменить из-за этого. Релизы ради релизов тоже странная практика, в прошлый раз пришлось 10 раз подряд скомпилировать тулчейн раста и буквально ничего полезного не добавили.
Ответить | Правка | Наверх | Cообщить модератору

12. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (12), 23-Янв-26, 00:41 
> Чё там какие-нибудь подвижки по асинхронным генераторам?

https://docs.rs/async-gen

> Сабж даже питон неспособен заменить из-за этого.

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

> Релизы ради релизов тоже странная практика, в прошлый раз пришлось 10 раз подряд скомпилировать тулчейн раста и буквально ничего полезного не добавили.

Очередной кексперт всё подряд компилирующий. Между прочим, официальные тулчейны с PGO собирают, а онанимы всё пытаются что-то кому-то доказать.

Ответить | Правка | Наверх | Cообщить модератору

16. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (6), 23-Янв-26, 01:54 
Ну, это костыли. Что это нигде? Асинхронный код использует не блокирующиеся интерфейсы ядра. То что находятся люди, до сих пор пишущие не масштабирующийся код с блокировками -- только их проблема. Программисты в курсе, где можно получить эффективное масштабирование с минимумом затрат.

Гил у питона не то чтобы проблема, если код действительно асинхронный (а не обёртка над синхронным, как большинство батареек, ну, конечно, лучше без него). Если, допустим, надо прочитать тысячу страниц в интернете за пару секунд, то всё вполне по красоте.

И доверять официальным тулчейнам не стоит, у раста они особенно кривые всегда. Постоянно линковку ломают тоже, но это к llvm больше. Между прочим.

Ответить | Правка | Наверх | Cообщить модератору

60. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  –1 +/
Сообщение от Аноним (60), 23-Янв-26, 11:28 
> Постоянно линковку ломают тоже, но это к llvm больше.

Багрепорт ты конечно же не отправил.

Ответить | Правка | Наверх | Cообщить модератору

114. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Феникс123 (?), 23-Янв-26, 15:58 
Мне кажется вы тут сами себе противоречите, с одной стороны ратуете за масштабирование, а с другой стороны и с гилом сойдет. На rust уже несколько лет как асинхронность с async/await - вот вам полная масштабируемость на все ядра. Для чего нужны именно генераторы непонятно, но изначально async/await были реализованы через генераторы, просто их синтаксис был не стабилизирован. Из фьючей легким движением руки получаются генераторы, но не так чтобы это было особо востребовано.

Мне async/await если честно не очень, но в расте по другому очень сложно - если программировать колбеки то будут большие проблемы с боровом.

Синхронный IO тоже не слишком проблема кстати, если у клиента одно соединение с сервером масштабирование не требуется.

Ответить | Правка | К родителю #16 | Наверх | Cообщить модератору

24. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +1 +/
Сообщение от Карлос Сношайтилис (ok), 23-Янв-26, 03:02 
> Чё там какие-нибудь подвижки по асинхронным генераторам?

Нет, хватает того что есть

> в прошлый раз пришлось 10 раз подряд скомпилировать тулчейн раста

"Я три дня гналась за вами, чтобы сказать как вы мне безразличны!"

> и буквально ничего полезного не добавили

Для этого достаточно прочитать анонс. Буквально пара минут

Ответить | Правка | К родителю #6 | Наверх | Cообщить модератору

25. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (6), 23-Янв-26, 03:06 
Кому хватает? Я конечно понимаю, что на расте программы не пишут, но всё же.
Ответить | Правка | Наверх | Cообщить модератору

61. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Fyjy (?), 23-Янв-26, 11:34 
Вот именно!
Ты даже не сказал какую ты программу пишешь, что тебе не хватает асинхронных генераторов, а сразу ныть начал.
А то складывается впечатление что никакую.
Ответить | Правка | Наверх | Cообщить модератору

62. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (6), 23-Янв-26, 11:45 
Любую, мне надо, чтобы треды 2x числа ядер исполнялись параллельно с минимумом затрат и асинхронные генераторы годятся для этого как нельзя лучше. Допустим, я хочу использовать io_uring.
Ответить | Правка | Наверх | Cообщить модератору

72. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (115), 23-Янв-26, 13:08 
Значит вы берёте язык с gil и рассказываете, как он подходит лучше чем rust?
>и асинхронные генераторы годятся для этого как нельзя лучше

Асинхронность - это одно единственное ядро.

Ответить | Правка | Наверх | Cообщить модератору

79. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (6), 23-Янв-26, 13:37 
Это кооперативная многозадачность и параллельное исполнение в первую очередь. Если это бизилуп, то ограничение 1 ядро, конечно. Но в таком случае экономия тредов и памяти остаётся. Прелесть такого кода в том, что ты добавляешь ядер и производительность автоматически масштабируется под доступные ресурсы.

Что до gil, проблема ортогональна. Главное преимущество это отсутствие блокировок и простота работы с подобной архитектурой.

Ответить | Правка | Наверх | Cообщить модератору

90. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (106), 23-Янв-26, 14:06 
Я не понимаю, ты сравниваешь асинк с питоне и асинк в расте или ты пытаешься продать нам асинхронный подход в принципе? Никто, в здравом уме, не будет спорить, что iobound задачи должны быть асинхронными.
Такое впечатление, что ты недавно познакомился с асинхронщиной в питоне и его сахар тебя очаровал.

> Но в таком случае экономия тредов и памяти остаётся

Потребление ресурсов cpu и ram увеличивается, асинк не бесплатен, тем более, если сравнивать асинк в питоне и расте.

Ответить | Правка | Наверх | Cообщить модератору

94. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (6), 23-Янв-26, 14:20 
Спасибо, я в курсе. В типичной программе абсолютно всё IO и генераторы это эффективная абстракция замечательно ложащаяся на асинхронность. Так почему бы не сравнивать? Какие у тебя с этим проблемы.
Ответить | Правка | Наверх | Cообщить модератору

104. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (106), 23-Янв-26, 15:15 
> IO и генераторы это эффективная абстракция

Зачем опять эта теория? Кто с тобой в этой части спорит?

> Какие у тебя с этим проблемы.

У меня нет, я сравнил, меня всё устраивает. Если кому-то нужен синтаксический сахар генераторов как в питоне, есть async-gen

> Так почему бы не сравнивать?

Что с чем?
Stateless конечный автомат в расте и stateful подход в питоне?
И что лучше, на твой взгляд?
И по какому критерию ты сравниваешь?

Ответить | Правка | Наверх | Cообщить модератору

108. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (6), 23-Янв-26, 15:29 
Я просто вижу, у тебя какие-то сложности с пониманием асинхронности. Вот я хочу создавать пулы обработчиков и бросать их на ивент луп, всё остальное меня не заботит. Если мне придётся вручную закатывать солнце, то зачем мне асинхронность? А ещё я вижу, что используются блокирующиеся интерфейсы и это очень субоптимально в плане менеджмента ресурсов. Ну и да, хочу писать без tokio.
Ответить | Правка | Наверх | Cообщить модератору

113. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (106), 23-Янв-26, 15:55 
> Я просто вижу, у тебя какие-то сложности с пониманием асинхронности.

А-а-а-а, так ты для меня стараешься и пишешь банальности!
Спасибо, это очень мило ❤️

> Вот я хочу создавать пулы обработчиков и бросать их на ивент луп, всё остальное меня не заботит.

Прекрасно!
Сахар генераторов для этого не нужен.

> Если мне придётся вручную закатывать солнце, то зачем мне асинхронность?

А зачем ты тогда используешь питон? У него асинк заразный. Юзай гошку, там всё максимально просто.

> Ну и да, хочу писать без tokio.

Пиши без него, в чём проблема? Это не единственный рантайм.
А в питоне ты тоже пишешь без asyncio?

Ответить | Правка | Наверх | Cообщить модератору

137. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (6), 23-Янв-26, 17:56 
После питоножс хочется, чтобы было привычно и удобно, со всем сахаром. У меня подгорает уже на чтении бесконечно дописываемых файлов в расте, хотя казалось бы, что может быть проще. Спавнить тысячи тысяч тредов не вариант.
Ответить | Правка | Наверх | Cообщить модератору

119. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (115), 23-Янв-26, 16:15 
>Что до gil, проблема ортогональна.

Наоборот, это самое важное.
>Прелесть такого кода в том, что ты добавляешь ядер и производительность автоматически масштабируется под доступные ресурсы.

Этого банально не произойдёт. Вы не по ядрам раскидываете, а по процессам.
>Главное преимущество это отсутствие блокировок

GIL - это буквально наличие блокировки. Послать хоть 10 хоть 100 запросов серверу вы сможете, может быть даже качать параллельно, но вот обрабатывать 10 ответов от сервера - нет, пока один ответ не обработается, остальные будут висеть.
>Это кооперативная многозадачность и параллельное исполнение в первую очередь.

Для параллельного исполнения нужна многоядерность.

python - асинхронный, одноядерный
go - асинхронный, многоядерный
rust - асинхронный, многоядерный

Ответить | Правка | К родителю #79 | Наверх | Cообщить модератору

136. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (6), 23-Янв-26, 17:51 
Чего? Многопроцессный код будет использовать сколько угодно ядер в питоне… Ты имел в виду многопоточный, в таком случае, ограничение по числу субинтерпретаторов и тому, насколько смогут запараллелить исполнение нативные библиотеки, освобождающие гил. На практике обработка в 1 потоке очень редко проблема. А вот постоянно блокирующиеся интерфейсы большая беда. Ну и для параллельного исполнения, конечно же, никаким образом не нужна многоядерность -- одноядерные процессоры вполне исполняют код параллельно, но это не имеет отношения к GIL.
Ответить | Правка | Наверх | Cообщить модератору

96. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (96), 23-Янв-26, 14:37 
Не обязательно. Вон в ноде рантайм - однопоточный, а ивент луп (который крутит вертит очередью выполнением тасков) - многопоточный.
Ответить | Правка | К родителю #72 | Наверх | Cообщить модератору

76. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (106), 23-Янв-26, 13:27 
> исполнялись параллельно ... асинхронные генераторы

Смешались в кучу люди, кони.
То параллельно, то асинхронно.


> с минимумом затрат

Минимум затрат со statefull асинхронностью в питоне?
Ты уж либо крестик сними...

Ответить | Правка | К родителю #62 | Наверх | Cообщить модератору

83. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +1 +/
Сообщение от Аноним (6), 23-Янв-26, 13:42 
у тебя не будет код исполняться без ожидания, это время можно замечательно использовать вместо блокировки в синхронном коде
Ответить | Правка | Наверх | Cообщить модератору

84. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (6), 23-Янв-26, 13:44 
другой вариант это зелёные треды, т.е. stackless python и прочее, вот это уже затраты
Ответить | Правка | К родителю #76 | Наверх | Cообщить модератору

27. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +1 +/
Сообщение от Аноним (27), 23-Янв-26, 03:38 
>Чё там какие-нибудь подвижки по асинхронным генераторам?

А что это такое?

Ответить | Правка | К родителю #6 | Наверх | Cообщить модератору

30. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от morphe (?), 23-Янв-26, 04:08 
> Чё там какие-нибудь подвижки по асинхронным генераторам? Сабж даже питон неспособен заменить из-за этого.

У тебя X-Y проблема, сначала скажи зачем они тебе нужны, и какие проблемы нельзя решить уже сейчас

У асинхронных генераторов есть сложности с правильным дизайном, в Rust подобные вещи не делают хуяк-хуяк, если бы делалось так - то Future так и требовали бы аллокации. Если есть желание решить вопросы с ними - то вперёд в RFC/issues, а пока есть https://docs.rs/async-gen/latest/async_gen/index.html который ничуть не костыль, а библиотечная реализация того же самого функционала, которая немногим хуже того что будет в самом Rust.

Ответить | Правка | К родителю #6 | Наверх | Cообщить модератору

34. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +1 +/
Сообщение от Хрю (?), 23-Янв-26, 06:22 
>Сабж даже питон неспособен заменить

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

Ответить | Правка | К родителю #6 | Наверх | Cообщить модератору

13. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +2 +/
Сообщение от Аноним (13), 23-Янв-26, 01:07 
>asm!(

если это асм то о какой безопасной работе с памятью речь? а если там работа с памятью безопасная тогда какой это к чёрту асм...

Ответить | Правка | Наверх | Cообщить модератору

43. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Анонимусс (-), 23-Янв-26, 08:46 
> а если там работа с памятью безопасная тогда какой это к чёрту асм...

Жаль что вы не в курсе, что asm! можно использовать только в unsafe блоках.
Могу только предложить почитать доку перед тем как задавать вопросы doc.rust-lang.org/reference/inline-assembly.html

Ответить | Правка | Наверх | Cообщить модератору

48. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  –2 +/
Сообщение от КО (?), 23-Янв-26, 09:31 
Да в Ржавом каждый чих надо делать в unsafe блоках. Писать в union - safe, читать unsafe и т.п.
Ответить | Правка | Наверх | Cообщить модератору

55. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  –2 +/
Сообщение от Проходил мимо (?), 23-Янв-26, 10:10 
Если попробовать немного осмыслить ситуацию, то внезапно окажется что unsafe в union действительно необходим в силу его природы. Другое дело, что необходимость в самом union возникает ужасно редко.
Ответить | Правка | Наверх | Cообщить модератору

58. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +1 +/
Сообщение от КО (?), 23-Янв-26, 11:14 
Union это простая абстракция, которая нужна в первую очередь, когда надо меганакрученную структуру передать как набор байтиков, не заморачиваясь с ее логическими свойствами.
Но сделать компилятор, который проверяет каким образом ты инициализировал union (положим первым, а не вторым) и при этом считает, что читать тем же способом эти данные unsafe - явная лень создателей.
Ответить | Правка | Наверх | Cообщить модератору

70. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +4 +/
Сообщение от Анонимусс (?), 23-Янв-26, 12:48 
> проверяет каким образом

Вся суть юниона - не хранить как он был инициализирован.

> ты инициализировал union

А если это был не я?
А юнион прилетел из сторонней либы или вообще сишного кода?

> явная лень создателей.

Показали бы мастеркласс этим неучам и сделали бы как надо))

Ответить | Правка | Наверх | Cообщить модератору

71. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Проходил мимо (?), 23-Янв-26, 12:49 
Поясните пожалуйста, какой смысл вы вкладываете в слово "передать"?
Передать в функцию, передать по сети или еще что-то?
Ответить | Правка | К родителю #58 | Наверх | Cообщить модератору

74. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от КО (?), 23-Янв-26, 13:09 
По сети, в файлик, в функцию щифрования или проверки контрольной суммы - т.е. выполнить операции которым неважна логическая структура.
Ответить | Правка | Наверх | Cообщить модератору

59. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +1 +/
Сообщение от КО (?), 23-Янв-26, 11:15 
И вообще вопрос привычки - чем чаще надо делать unsafe, тем меньше ты заморачиваешься с тем, а стоит ли делать safe.
Ответить | Правка | К родителю #55 | Наверх | Cообщить модератору

128. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +1 +/
Сообщение от Аноним (128), 23-Янв-26, 17:05 
>возникает ужасно редко.

IPv4,IPv6 - внезапно обрабатываются как union  

Ответить | Правка | К родителю #55 | Наверх | Cообщить модератору

159. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (115), 23-Янв-26, 22:08 
Совершенно внезапно, но это решается ADT, при этом типобезопасно.
Ответить | Правка | Наверх | Cообщить модератору

73. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  –1 +/
Сообщение от Аноним (115), 23-Янв-26, 13:09 
Вы не сишник случаем? Зачем вам union, почему не взять ADT?
Ответить | Правка | К родителю #48 | Наверх | Cообщить модератору

98. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Проходил мимо (?), 23-Янв-26, 14:44 
Для Си-шника естественно было бы получить указатель на экземпляр структуры и ее размер при помощи sizeof(). Использование для этих целей union для Си-шника выглядит как несусветная дичь.
Попытка реализации этого подхода в Rust натыкается на сложности с приведением типа указателей.

PS Вообще же кидать в сеть бинарные структуры - это к потенциальному огребанию проблем.

Ответить | Правка | Наверх | Cообщить модератору

152. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от 12yoexpert (ok), 23-Янв-26, 20:32 
> PS Вообще же кидать в сеть бинарные структуры - это к потенциальному огребанию проблем.

гораздо чаще данные текстом банально не влазят в канал, чем влазят

если мы, конечно, не перекладывание json-ов тут обсуждаем

Ответить | Правка | Наверх | Cообщить модератору

45. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Проходил мимо (?), 23-Янв-26, 09:16 
В Rust есть такое волшебное слово unsafe и где начинается unsafe - там заканчивается безопасность.
Предполагается, что пишущий unsafe блок программист знает и понимает, что делает. А если не знает - то это уже не проблема Rust-а.
Ответить | Правка | К родителю #13 | Наверх | Cообщить модератору

77. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +1 +/
Сообщение от Аноним (106), 23-Янв-26, 13:34 
> там заканчивается безопасность

Не заканчивается.
Все гарантии работают. Добавляется возможность операций с сырыми указателями, некорректное обращение с ними вызовет панику, а не поведение "мне повезёт", как в С/С++

Ответить | Правка | Наверх | Cообщить модератору

101. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +1 +/
Сообщение от Аноним (101), 23-Янв-26, 14:55 
>то это уже не проблема Rust-а.

а проблема пользователя

Ответить | Правка | К родителю #45 | Наверх | Cообщить модератору

120. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +1 +/
Сообщение от Аноним (120), 23-Янв-26, 16:21 
А как только в C-коде дыра, связанная с памятью (хотя такое довольно редко происходит), то сразу у растеров язык C виноват.
Ответить | Правка | К родителю #45 | Наверх | Cообщить модератору

123. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (-), 23-Янв-26, 16:31 
> А как только в C-коде дыра, связанная с памятью (хотя такое довольно редко происходит),

хахаха, редкая?
Ну посмотри сколько дыр в ядре из-за Memory Corruption
cvedetails.com/vendor/33/Linux.html

> то сразу у растеров язык C виноват.

Конечно нет!
Виноваты погромисты, которые из-за своей лyддuтности до сих пор каменным топором работают.


Ответить | Правка | Наверх | Cообщить модератору

14. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  –1 +/
Сообщение от Аноним (115), 23-Янв-26, 01:14 
Что почитать по теме управления памятью? Типа как устроена память в java, регионы и так далее, не про статические проверик, при этом не на уровне hello world
Ответить | Правка | Наверх | Cообщить модератору

19. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  –1 +/
Сообщение от Rev (ok), 23-Янв-26, 02:18 
Тебя забанили в больших нейронках?
Ответить | Правка | Наверх | Cообщить модератору

39. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +2 +/
Сообщение от Аноним (39), 23-Янв-26, 07:23 
О, пользуясь случаем хотел бы спросить. Как бы мне сделать так, чтобы меня забанили в нейронках, больших и малых? Чтобы вот прям ни в каком виде им было нельзя со мной соприкасаться?
Ответить | Правка | Наверх | Cообщить модератору

52. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (52), 23-Янв-26, 09:56 
Уезжай жить в лес.
Ответить | Правка | Наверх | Cообщить модератору

107. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  –1 +/
Сообщение от Аноним (107), 23-Янв-26, 15:28 
Отрезать интернет-кабель. Больше никак.
Ответить | Правка | К родителю #39 | Наверх | Cообщить модератору

133. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  –1 +/
Сообщение от Аноним (128), 23-Янв-26, 17:19 
Почитай литературу на тему "нелегальная жизнь" )
Ответить | Правка | К родителю #39 | Наверх | Cообщить модератору

46. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +1 +/
Сообщение от Аноним (46), 23-Янв-26, 09:19 
Это в которых, что бы получить правильный детальный ответ надо знать этот ответ. Ибо пока не спросишь про конкретные исключения и конкретные детали он их даже ну упомянет и не упомянет их возможность существования. Типа догадайся, что такое может быть и спроси.
Ответить | Правка | К родителю #19 | Наверх | Cообщить модератору

53. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  –1 +/
Сообщение от Аноним (52), 23-Янв-26, 09:57 
Это которыми ты не умеешь пользоваться.      
Ответить | Правка | Наверх | Cообщить модератору

126. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +1 +/
Сообщение от Аноним (126), 23-Янв-26, 17:00 
Очевидно, что умею, раз получил в итоге полный правильный ответ. Вот только без знания того, что должно быть, нельзя гарантированно получить ответ о том что должно быть.

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

Ответить | Правка | Наверх | Cообщить модератору

131. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  –1 +/
Сообщение от Аноним (128), 23-Янв-26, 17:14 
ИИ не "живет с Вами в одной реальности", а воспитан на объеме данных в лаборатории и общался с тренерами.
Ответить | Правка | Наверх | Cообщить модератору

132. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (128), 23-Янв-26, 17:16 
По сути это игрушка, которая нравится тренерскому коллективу и которую хотят подороже продать спонсоры.
Ответить | Правка | Наверх | Cообщить модератору

153. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от 12yoexpert (ok), 23-Янв-26, 20:36 
ИИ нигде не живёт, его нет и не будет ещё очень-очень долго, а то, что ты покупаешь, называется товар
Ответить | Правка | К родителю #131 | Наверх | Cообщить модератору

129. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +1 +/
Сообщение от Аноним (128), 23-Янв-26, 17:11 
>Это которыми ты не умеешь пользоваться.  

Потребитель не дорос? Новая философия услуг нейросетей.

Ответить | Правка | К родителю #53 | Наверх | Cообщить модератору

154. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от 12yoexpert (ok), 23-Янв-26, 20:36 
просто твоя вера слаба
Ответить | Правка | Наверх | Cообщить модератору

134. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (128), 23-Янв-26, 17:21 
Опа, литературу и тематические сайты уже отменили?
Ответить | Правка | К родителю #19 | Наверх | Cообщить модератору

20. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  –1 +/
Сообщение от Аноним (20), 23-Янв-26, 02:33 
>Методы работы с памятью в Rust избавляют разработчика от ошибок при манипулировании указателями и защищают от проблем, возникающих из-за низкоуровневой работы с памятью, таких как обращение к области памяти после её освобождения, разыменование нулевых указателей,

Это разве соответствует реальности? С указателями нету проблем, поскольку нету безопасных указателей. Есть ссылки и подсчет ссылок, но и обычный сборщик мусора тоже защищает от этих проблем.

> выход за границы буфера и т.п.

А как выход за границы защищен? Всегда таскают размер в ссылке, всегда делают проверку индекса, и если что не так, то паника?

Ответить | Правка | Наверх | Cообщить модератору

22. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Карлос Сношайтилис (ok), 23-Янв-26, 02:58 
> обычный сборщик мусора тоже защищает от этих проблем

А ещё он мусор собирает.
И пусть весь мир подождёт

> Всегда таскают размер в ссылке...?

Периодически.
Или в объекте.
И плюс кучка мелких оптимизаций

> и если что не так, то паника?

Сначала хотели сделать как в сях - при выходе за границы, делать вид, что ничего не происходит и работать дальше. Но потом передумали.
Согласен, скучно.

Ответить | Правка | Наверх | Cообщить модератору

57. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (115), 23-Янв-26, 10:37 
>А ещё он мусор собирает.
>И пусть весь мир подождёт

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

Ответить | Правка | Наверх | Cообщить модератору

81. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (106), 23-Янв-26, 13:39 
> в огромном количестве мест

Это огромное количество мест сейчас с нами, в одной комнате?

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

Ответить | Правка | Наверх | Cообщить модератору

121. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (115), 23-Янв-26, 16:23 
>Гошка заняла прочное место в инфраструктурных приложениях, почти успешно заменив баш и питон.

Зато раньше почти весь этот софт писали на си. Оказывается, если написать тот же docker на go, небосвод на землю не рухнет.
>В остальных местах - постольку-поскольку, ибо задержки и жор памяти, при повышении нагрузки, непредсказуемые и болезненные.

Тем временем куча IDE почему-то на java, Elisp, и даже в neovim пробрался lua. Вот как-то не наблюдается почему-то таких программ на c/c++. Даже тот же MS VS почему-то с крестов на c# переводят. Тоже небосвод не рухнул.

Ответить | Правка | Наверх | Cообщить модератору

28. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (27), 23-Янв-26, 03:44 
>Есть ссылки и подсчет ссылок, но и обычный сборщик мусора тоже защищает от этих проблем

Есть системные языки для которых сборщик мусора не нужен, принципиально.

Ответить | Правка | К родителю #20 | Наверх | Cообщить модератору

50. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  –1 +/
Сообщение от КО (?), 23-Янв-26, 09:42 
Не "не нужен", а не подходит.
Ибо системному программисту в отличии от прикладного важно сколько времени отрабатывает, например, следующая конструкция языка:

}

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

Ответить | Правка | Наверх | Cообщить модератору

69. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (20), 23-Янв-26, 12:47 
>Есть системные языки для которых сборщик мусора не нужен, принципиально.

Даже для С есть сборщики мусора. Подсчет ссылок это тоже не зеро кост, и оно не хендлит циклические ссылки, так что для раста не помешает опциональная полноценная сборка мусора для некоторых данных. Наверняка крейты есть уже.

Ответить | Правка | К родителю #28 | Наверх | Cообщить модератору

93. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (106), 23-Янв-26, 14:15 
Время работы сборщика мусора недетерминировано, в отличии от подсчёта ссылок.
Это принципиальное различие, которое не позволяет называть подсчёт ссылок сборкой мусора.
Иначе можно сказать, что вызов free это тоже сборка мусора и это понятие потеряет всякий смысл.
Ответить | Правка | Наверх | Cообщить модератору

99. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от КО (?), 23-Янв-26, 14:50 
Сборка мусора через подсчет ссылок - это тоже сборка мусора.
И она так же недетерминирована - ибо высвобождение корня дрема может вызвать каскад высвобождений и далее понеслось.
Другое дело, что подсчет ссылок более менее тривиален для однопоточного приложения.

free - это управляемая программой сборка мусора.

Ответить | Правка | Наверх | Cообщить модератору

105. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +2 +/
Сообщение от Аноним (106), 23-Янв-26, 15:20 
> free - это управляемая программой сборка мусора.

Чем отличается понятие "сборка мусора" от "освобожение памяти"?

Ответить | Правка | Наверх | Cообщить модератору

116. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +1 +/
Сообщение от КО (?), 23-Янв-26, 16:03 
Уговорил - если нет поиска того, что надо освободить - то просто освобождение памяти
Ответить | Правка | Наверх | Cообщить модератору

49. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Проходил мимо (?), 23-Янв-26, 09:40 
По поводу выхода за границы буфера скажу так - можно написать паникующий код а можно такой, который будет эту ситуацию штатно разруливать. Вот пример паникующего кода:
//-----------------------------------------------
fn  main()
{
    //  Породим тестовый вектор
    let v: Vec::<u32> = Vec::from(&[1,2,3,4,5]);
    //  Индекс для доступа к элементам вектора
    let mut idx: usize = 0;
    println!("Попытка обращения к данным за границей буфера");
    while idx <= v.len()
    {
        println!("v[{}] = {}", idx, v[idx]);
        idx += 1;
    }
}
//-----------------------------------------------
Результат работы:
$ ./target/debug/rust_badindex
Попытка обращения к данным за границей буфера
v[0] = 1
v[1] = 2
v[2] = 3
v[3] = 4
v[4] = 5
thread 'main' panicked at src/main.rs:10:38:
index out of bounds: the len is 5 but the index is 5

А вот пример штатной обработки ситуации:
//-----------------------------------------------
fn  main()
{
    //  Породим тестовый вектор
    let v: Vec::<u32> = Vec::from(&[1,2,3,4,5]);
    //  Индекс для доступа к элементам вектора
    let mut idx: usize = 0;
    println!("Попытка обращения к данным за границей буфера");
    while idx <= v.len()
    {
        match   v.get(idx)
        {
            Some(n) => { println!("v[{}] = {}", idx, n); },
            None => { println!("Индекс за пределами вектора"); },
        }
        idx += 1;
    }
}
//-----------------------------------------------
Результат работы:
Попытка обращения к данным за границей буфера
v[0] = 1
v[1] = 2
v[2] = 3
v[3] = 4
v[4] = 5
Индекс за пределами вектора

Ответить | Правка | К родителю #20 | Наверх | Cообщить модератору

85. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (85), 23-Янв-26, 13:44 

    {
        match   v.get(idx)
        {
            Some(n) => { println!("v[{}] = {}", idx, n); },
            None => { println!("Индекс за пределами вектора"); },

И как сий финт ушами по скорости? Этот "match" с несколькими значениями - сильно тяжелый цикл нагнет? По сравнению с if (i >= ARRAY_SIZE(x)) { // опчки, out of bounds }
Ответить | Правка | Наверх | Cообщить модератору

87. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от КО (?), 23-Янв-26, 13:51 
Если на то пошло, для немутирующих слайсов достаточно 1 раз проверить len(), чем в каждой итерации
Ответить | Правка | Наверх | Cообщить модератору

91. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (-), 23-Янв-26, 14:06 
Во-первых ты докопался до просто примера.
В реальности в зависимости от того оно мутирующее или нет можно len() проверить 1 раз.

> И как сий финт ушами по скорости? Этот "match" с несколькими значениями - сильно тяжелый цикл нагнет?

Зависти от того что такое "тяжелый цикл")

Ответить | Правка | К родителю #85 | Наверх | Cообщить модератору

102. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +1 +/
Сообщение от Проходил мимо (?), 23-Янв-26, 14:56 
Со скоростью там все нормально, сам по себе match - это что-то типа switch с очень расширенными возможностями, но при этом работает он очень быстро.

Вообще же, с точки зрения скорости у программ на Rust очень важен режим компиляции. По умолчанию компиляция идет в режиме для отладки и в таком вот виде программа может выполняться не очень быстро (по сравнению с кодом на чистом Си/Си++). Но вот когда собираешь ее с ключиком --release то все начинает просто летать. Прирост скорости, по ощущениям, гораздо выше, чем когда компилируешь программу на Си в режиме для отладки и в режиме максимальной оптимизации.

Ответить | Правка | К родителю #85 | Наверх | Cообщить модератору

138. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  –1 +/
Сообщение от Аноним (128), 23-Янв-26, 18:02 
>Прирост скорости, по ощущениям, гораздо выше,

Учитывая больший оверхэд. Но в заслугу подчеркнуть надо. )

Ответить | Правка | Наверх | Cообщить модератору

139. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (128), 23-Янв-26, 18:24 
>По сравнению с if

здесь главное, что происходит оценка (сопоставление) значения и ветвление в зависимости от значения.

Ответить | Правка | К родителю #85 | Наверх | Cообщить модератору

140. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (128), 23-Янв-26, 18:25 
универсальный подход не связанный с индексом.
Ответить | Правка | Наверх | Cообщить модератору

51. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  –1 +/
Сообщение от КО (?), 23-Янв-26, 09:50 
>А как выход за границы защищен? Всегда таскают размер в ссылке, всегда делают проверку индекса, и если что не так, то паника?

Ну почему сразу паника? Можно и управляемо к делу подходить. :)

fn main() {
    union MyUnion {
      f1: [f32;2],
      f2: [f32;3]
    }

    const U : MyUnion = MyUnion { f2: [0.0,1.0,2.0] };


    for i in 0..=4 {
         print!(" {} ", i);
         let f1 = unsafe{U.f1};
         let f2 = unsafe{U.f2};
        
         println!("{:?}",  match f1.get(i) {
             Some(n) => n,
             None => match f2.get(i) {
             Some(_) => &f32::NAN,
             None => break
           }
         } );
    }
    
}

Ответить | Правка | К родителю #20 | Наверх | Cообщить модератору

92. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  –1 +/
Сообщение от Аноним (92), 23-Янв-26, 14:10 
>             Some(n) => n,
>             None => match f2.get(i) {

УЖАС! В этом расте хотя бы ифы есть?

Ответить | Правка | Наверх | Cообщить модератору

97. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от КО (?), 23-Янв-26, 14:41 
С ифами и дурак напишет. :)
Ответить | Правка | Наверх | Cообщить модератору

122. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +2 +/
Сообщение от Аноним (115), 23-Янв-26, 16:26 
Вам дали улучшенную версию if-ов, с проверками времени компиляции на полноту вариантов, а вы обратно в каменный век засобирались.
Ответить | Правка | К родителю #92 | Наверх | Cообщить модератору

125. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от КО (?), 23-Янв-26, 16:43 
Ну если придираться, то это скорее аналог ()?():()
Ответить | Правка | Наверх | Cообщить модератору

135. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (128), 23-Янв-26, 17:37 
Для этого есть безопасный тип - срез.
Ответить | Правка | К родителю #51 | Наверх | Cообщить модератору

21. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (21), 23-Янв-26, 02:49 
Новая итерация бутстрапа подъехала.
Ответить | Правка | Наверх | Cообщить модератору

23. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (23), 23-Янв-26, 03:02 
>В Rex-программах допускается использование подмножества языка Rust, предоставляющего гарантии безопасности.

unwrap допускается?
>легковесный Runtime

Прямо даже легче С?

Ответить | Правка | Наверх | Cообщить модератору

29. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от morphe (?), 23-Янв-26, 04:04 
> Прямо даже легче С?

Учитывая что у C есть только BPF со стрёмным верификатором и JIT - да

Ответить | Правка | Наверх | Cообщить модератору

82. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +1 +/
Сообщение от Аноним (85), 23-Янв-26, 13:41 
> Учитывая что у C есть только BPF со стрёмным верификатором и JIT - да

Я таки рантайм верификатору поверю больше чем каким-то гарантиям какого-то компилера - когда потом хаксор, извините, пропихнет asm! или что там вон те забудут или "забудут" - или просто бинарь хексэдитором пропатчит для обхода выдачи компилера - и любители гарантий удивленно так - "а что, так можно было?!". С eBPF то - и такое худо-бедно придушится верификатором. А с вон тем что?? Сразу бац и в кернелмод чтоли?

Ответить | Правка | Наверх | Cообщить модератору

141. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от morphe (?), 23-Янв-26, 19:01 
Так я так понял что там идея что ты передаёшь привилегированному процессу исходный код, а он уже его линтит, компилирует, и грузит

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

Ответить | Правка | Наверх | Cообщить модератору

155. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Карлос Сношайтилис (ok), 23-Янв-26, 20:53 
Чувствуется опыт разработки на С, когда перестаешь доверять всем, даже себе.

Попробуй Раст, тебе понравится

Ответить | Правка | К родителю #82 | Наверх | Cообщить модератору

26. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +1 +/
Сообщение от Имя (?), 23-Янв-26, 03:07 
Я разочарован полным отсутствием новых применений признака const в этом релизе.
Ответить | Правка | Наверх | Cообщить модератору

56. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (96), 23-Янв-26, 10:29 
Как раст в бэкендах по сравнению с гошечкой? Есть от раста вау-вау эффект по производительности?
Ответить | Правка | Наверх | Cообщить модератору

67. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +2 +/
Сообщение от Аноним (67), 23-Янв-26, 12:20 
конечно есть, быстрее падает в паники и утекает память
Ответить | Правка | Наверх | Cообщить модератору

80. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (-), 23-Янв-26, 13:38 
> Как раст в бэкендах по сравнению с гошечкой? Есть от раста вау-вау эффект по производительности?

У гошечки GC видите ли. А это penalty и по производительности и по жору памяти. В этом смысле Rust скорее с C/C++ по скорости уместнее сравнивать.

Ответить | Правка | К родителю #56 | Наверх | Cообщить модератору

147. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +1 +/
Сообщение от Аноним (63), 23-Янв-26, 19:40 
> Rust скорее с C/C++ по скорости уместнее сравнивать.

Естественно, сравнение не в пользу первого.

Ответить | Правка | Наверх | Cообщить модератору

160. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  –1 +/
Сообщение от Аноним (75), 23-Янв-26, 22:11 
>> Rust скорее с C/C++ по скорости уместнее сравнивать.
> Естественно, сравнение не в пользу первого.

Сказал, как в̵ ̵л̵у̵ж̵у̵?
https://benchmarksgame-team.pages.debian.net/benchmarksgame/...
https://benchmarksgame-team.pages.debian.net/benchmarksgame/...
https://benchmarksgame-team.pages.debian.net/benchmarksgame/...
https://benchmarksgame-team.pages.debian.net/benchmarksgame/...
https://benchmarksgame-team.pages.debian.net/benchmarksgame/...
https://benchmarksgame-team.pages.debian.net/benchmarksgame/...
Странно. Видать опять неправильные тесты от неправильный погроммистов ...


Ответить | Правка | Наверх | Cообщить модератору

162. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (63), 24-Янв-26, 00:36 
Твой gush засчитан: из приведённых шести ссылок только в двух раст "вырвался" на 1..3%. В большинстве случаев же раст проиграл.
Ответить | Правка | Наверх | Cообщить модератору

163. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (75), 24-Янв-26, 00:50 
>>> Естественно, сравнение не в пользу первого.
> Твой gush засчитан: из приведённых шести ссылок только в двух раст "вырвался"
> на 1..3%. В большинстве случаев же раст проиграл.

Твой πyk в лужу тоже засчитан. Заодно и продемонстрировал, каким именно местом ты читаешь 🙄
> В большинстве случаев

А вот каким считаешь - непонятно. Но есть догадки, да 😀

Ответить | Правка | Наверх | Cообщить модератору

143. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (142), 23-Янв-26, 19:13 
Ну по RPS не 10x как на том что я переписывал с питона, но 2x стабильно есть. При этом код понятнее получился и тестировать сильно проще.
Ответить | Правка | К родителю #56 | Наверх | Cообщить модератору

150. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (96), 23-Янв-26, 19:57 
А какой фреймворк, какая БД, какой ORM?
Ответить | Правка | Наверх | Cообщить модератору

161. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (115), 23-Янв-26, 23:00 
>Ну по RPS не 10x как на том что я переписывал с питона, но 2x стабильно есть.

Как-то подозрительно мало.

Ответить | Правка | К родителю #143 | Наверх | Cообщить модератору

64. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (63), 23-Янв-26, 11:59 
> Встроенная в поставку Rust стандартная си-библиотека Musl

Обёртки вокруг си генерировать научились, что ещё можно на расте сделать, кроме обёрток?

Ответить | Правка | Наверх | Cообщить модератору

89. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Facemakeremail (?), 23-Янв-26, 13:55 
Узнать об этом -- тебе в качестве домашнего задания.
Ответить | Правка | Наверх | Cообщить модератору

146. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (63), 23-Янв-26, 19:29 
https://www.opennet.me/opennews/art.shtml?num=64660#88
Ответить | Правка | Наверх | Cообщить модератору

78. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +1 +/
Сообщение от Аноним (-), 23-Янв-26, 13:37 
> <[MaybeUninit<T>]>::write_copy_of_slice

Ну и выражовывания у этих типажей, я б сказал. Это они сишные фичи так коспелят по кривому?

Ответить | Правка | Наверх | Cообщить модератору

111. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +2 +/
Сообщение от Аноним (111), 23-Янв-26, 15:52 
"Поздно пить Боржоми!") Раст опоздал на пару десятков лет. Теперь ИИ будет анализировать и исправлять уязвимости в Си коде. И это будет намного проще и прозрачнее, чем перелопачивать дебри Раста.
Ответить | Правка | Наверх | Cообщить модератору

118. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +1 +/
Сообщение от cheburnator9000 (ok), 23-Янв-26, 16:05 
На Горе2Дуба работает? Или уже deprecated?
Ответить | Правка | Наверх | Cообщить модератору

130. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (130), 23-Янв-26, 17:12 
> На Горе2Дуба работает? Или уже deprecated?

Обижаете! Оно еще и более древние древности поддерживает на уровне Tier2.

i586-unknown-linux-gnu    ✓    32-bit Linux (kernel 3.2+, glibc 2.17, original Pentium) 3
i586-unknown-linux-musl    ✓    32-bit Linux (musl 1.2.5, original Pentium) 3

А i686-unknown-linux-gnu 32-bit Linux (kernel 3.2+, glibc 2.17+, Pentium 4) вообще в Tier 1 значится.

doc.rust-lang.org/beta/rustc/platform-support.html#tier-1-with-host-tools

Ответить | Правка | Наверх | Cообщить модератору

145. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +/
Сообщение от Аноним (63), 23-Янв-26, 19:26 
> на уровне Tier2.

Это когда результат не гарантируется?

Ответить | Правка | Наверх | Cообщить модератору

149. "Выпуск Rust 1.93. Проекты Rex, Fjall 3 и Arti 1.9.0"  +2 +/
Сообщение от Аноним (149), 23-Янв-26, 19:53 
> Это когда результат не гарантируется?

Это когда "запустите на своем хламе и расскажите как оно".

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2026 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру