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

Исходное сообщение
"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "

Отправлено opennews , 25-Окт-25 08:01 
Опубликован выпуск проекта uutils coreutils 0.3.0 (Rust Coreutils), развивающего аналог пакета GNU Coreutils, написанный на языке Rust. В состав coreutils входит более ста утилит, включая sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln и ls. Целью проекта является создание кроссплатформенной альтернативной реализации Coreutils, среди прочего способной работать на платформах Windows, Redox и Fuchsia...

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


Содержание

Сообщения в этом обсуждении
"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Медведь , 25-Окт-25 08:01 
> Заявлен уровень совместимости 83.91% (было 87.06%)

То есть добавление тестов выявило новые проблемы? Кто бы мог подумать... Пилите, Шура, пилите, они золотые.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 08:09 
Казалось бы более просто управление памятью должно было помочь растикам быстрее разрабатывать софт. В итоге они разрабатывают софт в 10 ращ медленнее. Оказалось все дело не в языке, а в голове.

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Медведь , 25-Окт-25 08:18 
На самом деле rust не так уж прост в управлении памятью: например, утечки памяти из-за циклических связей в структурах с объектами со счетчиками ссылок (Rc) в нем вполне себе имеют место быть, и borrow checker от этого не спасает. Но т-с-с-с-с, я этого не говорил, а то сейчас набигут растеры и побьют меня.

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 08:44 
но ведь утечки памяти безопасны, oom киллер перегрузит приложение, станок/автопилот/робот перезапустятся полностью и все.

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Медведь , 25-Окт-25 08:46 
> но ведь утечки памяти безопасны, oom киллер перегрузит приложение, станок/автопилот/робот перезапустятся полностью и все.

Какая прелесть! В цитатник! Не забудьте, пожалуйста, донести эту ценную мысль до разработчиков .net, скажем -- а то они ерундой маются, разруливают циклические ссылки, освобождают зачем-то память...

Стоп, а зачем ее вообще освобождать? Ну свалится софтина в OOM -- но безопасно же свалится, вот что главное! Эврика!


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено 12yoexpert , 25-Окт-25 09:18 
так .net/c# это не язык, просто NIH-пародия на джаву.

да и течь, как джава, оно не может, даже киллер-фичу языка толком не осилили


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено morphe , 25-Окт-25 22:32 
> так .net/c# это не язык, просто NIH-пародия на джаву.

Когда через 25 лет в жаве осилят project valhalla - тогда может быть, но сейчас VM и GC шарпов намного лучше спроектирована для большинства задач. В жаве слишком долго полагались на оптимизацию gc вместо того чтобы просто хранить вещи на стеке/inline в других объектах, escape analysis не считается потому что кроме простых случаев не работает.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено laindono , 25-Окт-25 09:58 
https://doc.rust-lang.org/reference/unsafety.html

Что именно является unsafe в контексте rust достаточно недвусмысленно определено. Утёкшая память никак не относится к безопасному доступу к памяти (memory-safety). Rust даёт гарантии по части доступа к памяти, а не гарантии безопасности в общем смысле.

Протёкшая память может максимум привести к атаке denial-of-service. Может быть критическим багом, но на полноценную уязвимость не тянет. Безусловно неприятно, но не тоже самое, что use after free или прочие сишечные забавы.

Кроме того DoS наверняка проще провести над .net приложухой, чем над аналогичной rust приложухой. Всёж таки у шарпов рантайм жирненький. Да и не только на исчерпание памяти такие атаки проводятся.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 10:06 
>Может быть критическим багом, но на полноценную уязвимость не тянет.

Описание большинства ошибок работы с указателями в Си.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 10:30 
> Описание большинства ошибок работы с указателями в Си.

Особенно когда это remote code execution))
Загляни в соседнюю тему, так десятки взломов "c использованием уязвимости, связанной с переполнением буфера".


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено ник , 30-Окт-25 23:31 
Блин,а откуда ошибки с указателями то? Сколько раз читаю и просто не понимаю.кодю любительски на си,юзаю валгринт и вот это вот все с тестами и покрытием тестами.и просто не понимаю

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Медведь , 25-Окт-25 10:40 
Вы опять привычно свернули в сторону гарантий раста по работе с памятью. Это замечательно, что он защищает от (сравнительно узкого) класса ошибок работы с памятью, но, во-первых, даже в случае памяти -- не от всех, а во-вторых -- какой ценой? Давайте для каждого класса критических ошибок придумаем по языку, и будем яростно спорить, какой из них наиболее критически защищен.

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

Кстати, в какой-то мере необходимость защиты от утечек понимали даже сами растеры: в начальных версиях раста был опциональный GC, который потом был вышвырнут на мороз во имя пуризма и чтобы zero-cost'у раста больше доверяли. Но зато позже наплодили библиотечных реализаций GC, неудобных и лишенных языковой поддержки... Песня!


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 11:18 
>в начальных версиях раста был опциональный GC, который потом был вышвырнут на мороз

Т.е. они пожертвовали безопасностью работы с памятью ради производительности? Кого-то это мне напоминает...


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Медведь , 25-Окт-25 11:29 
> Т.е. они пожертвовали безопасностью работы с памятью ради производительности?

Учитывая, что GC был опционален и производительности особо-то и не мешал, очень странное решение. Ну ввели бы что-то типа #![no_gc], есть же у них #![no_std] -- и гарантировали бы предсказуемость времени жизни объектов и всё такое там, где оно надо.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено laindono , 25-Окт-25 11:29 
> Это замечательно, что он защищает от (сравнительно узкого) класса ошибок работы с памятью

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

> защита от критических ошибок доступа к памяти должна быть аппаратной

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

> Давайте придумаем

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


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 11:45 
>Сборка мусора не бесплатна, виртуальные машины не бесплатны. Есть некоторый набор задач, где это критично.

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


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 11:41 
> Это замечательно, что он защищает от (сравнительно узкого) класса ошибок работы с памятью,

Насколько узкого?
Можно посмотреть на кол-во CVE в ядре и узреть, что этот узкий класс составется примерно большинство.

> но, во-первых, даже в случае памяти -- не от всех,

Но от тех, которые могут принести существенный вред.

> а во-вторых -- какой ценой?

Сколько там процентов насчитали вулнов из-за "ошибки памяти"? 70%? Мало?

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

Если вы представите руст2.0 который покроет еще один класс широко распространенных ошибок, то я вам пожму руку и поблагодарю.

> Я полагаю, что защита от критических ошибок доступа к памяти должна быть аппаратной и от языка зависеть не должна, и похоже, что разработчики ChkTag в этом тоже уверены.

А АРМ такая защита уже давно... но что-то это не сильно помогает.
Интересно почему?)

Гуглу приходится то MiraclePTR добавлять, то фаззингом обамзываться, то ультиматично выкидывать код на с/с++ и заменять. А всё вышеперечисленное стоит денег.
ChkTag еще и будет стоить памяти. Уверен админы серверов обрадуются)

> Кстати, в какой-то мере необходимость защиты от утечек понимали даже сами растеры: в начальных версиях раста был опциональный GC, который потом был вышвырнут на мороз во имя пуризма и чтобы zero-cost'у раста больше доверяли.

И много вы знаете системных ЯП со сборщиком мусора?
Смогли бы совместить одновременно развитие GC и borrow?

И да, вы лукавите.
GC из раста убрали еще в 2014 году, в версиях 0.11-0.12
Т.е просто сменилась парадигма развития.

> Но зато позже наплодили библиотечных реализаций GC, неудобных и лишенных языковой  поддержки... Песня!

Пф, слышать такую критику от адепта языка, где даже строк нормальных нету в std...
Как там было в пословице про бревно в глазу))?



"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Медведь , 25-Окт-25 11:57 
> Если вы представите руст2.0 который покроет еще один класс широко распространенных ошибок, то я вам пожму руку и поблагодарю.

Нет уж, увольте, с меня хватает дичи и в rust 1.0 )))

> ChkTag еще и будет стоить памяти. Уверен админы серверов обрадуются)

Стоимость памяти ничтожна по сравнению с последствиями простоя для большинства бизнес-процессов.

> А АРМ такая защита уже давно... но что-то это не сильно помогает

Возможно, потому, что из-за очень недавнего появления стандарта на это дело пока что поддержка в компиляторах хромает? Я вообще не очень в курсе, насколько широко MTE используется в софте на ARM прямо сейчас. Поделитесь статистикой, насколько используется и насколько не помогает?

> И много вы знаете системных ЯП со сборщиком мусора?

Я выше писал, что для системного ПО его было бы правильнее отключать в коде, а не выбрасывать вообще.

> Смогли бы совместить одновременно развитие GC и borrow?

А вот это -- правильный вопрос. Borrow вообще трудно совместить со многими концепциями, которые из-за этого никогда не будут реализованы в rust. Но вам не кажется, что это обрекает его на стагнацию как ЯП?

> И да, вы лукавите. GC из раста убрали еще в 2014 году, в версиях 0.11-0.12

Я где-то утверждал что-то другое, кроме того, что он изначально был в rust?

> Пф, слышать такую критику от адепта языка, где даже строк нормальных нету в std...

Пф, std::string в моем любимом C++ меня вполне устраивают...


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 13:03 
> Нет уж, увольте, с меня хватает дичи и в rust 1.0 )))

Раз добровольцев нет - будем использовать то, что есть)

> Стоимость памяти ничтожна по сравнению с последствиями простоя для большинства бизнес-процессов.

Так ChkTag просто убьет процесс.
На серваке. Например БД в процессе транзакции. Вот админы обрадуются!

>> А АРМ такая защита уже давно... но что-то это не сильно помогает
> Возможно, потому, что из-за очень недавнего появления стандарта на это дело пока  что поддержка в компиляторах хромает?

Я бы не назвал технологию представленную в 2018, а выкаченную в 2019 новой.
community.arm.com/arm-community-blogs/b/architectures-and-processors-blog/posts/enhancing-memory-safety

> Я вообще не очень в курсе, насколько широко MTE используется в софте на ARM прямо сейчас.

source.android.com/docs/security/test/memory-safety/arm-mte
Есть мааааленькая загвоздка
Caution: Apps that enable MTE should be thoroughly tested on an MTE-compatible device before being shipped to the Play Store. Failure to do so may lead to critical bugs being discovered only on MTE-capable devices, which may harm usability of the app

Сколько у нас на данный момент выпущено процессоров без ChkTag?
Сколько лет у них будет поддержка?

> Поделитесь статистикой, насколько используется и насколько не помогает?

Могу поделиться насколько не помогает)
2021 год - всё еще не помогло 🤷🏻‍♂️
security.googleblog.com/2021/04/rust-in-android-platform.html
Жалуются на Limitations of detection и что выполнить "The Rule Of 2" очень сложно.

А тут уже какой-то прогресс, правда не связанный с MTE
security.googleblog.com/2022/12/memory-safe-languages-in-android-13.html
To date, there have been zero memory safety vulnerabilities discovered in Android’s Rust code.

> Я выше писал, что для системного ПО его было бы правильнее отключать в коде, а не выбрасывать вообще.

Вон D так умеет.
Но по какой-то причине никому не нужен.

>> Смогли бы совместить одновременно развитие GC и borrow?
> А вот это -- правильный вопрос. Borrow вообще трудно совместить со многими  концепциями, которые из-за этого никогда не будут реализованы в rust.

Не уверен что это плохо.

> Но вам не кажется, что это обрекает его на стагнацию как ЯП?

Нет. Большая часть языков это "или GС, или ручное управление" без выбора.
И они работают и выполняют свои функции (как могут))).
Делать из ЯП мегакомаbн типа NeroBurning с редактором этикеток, ну такой себе.
Могут позволить далеко не многие.

> Я где-то утверждал что-то другое, кроме того, что он изначально был в rust?

А был ли тот раст, растом?

> Пф, std::string в моем любимом C++ меня вполне устраивают...

Добавили, но не в первой версии. Примерно как в расте убрали GC.
Был ли С++ без string С++ или это был какой-то другой язык?

А а utf без костылей уже может)?



"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Медведь , 25-Окт-25 13:26 
> Добавили, но не в первой версии. Примерно как в расте убрали GC. Был ли С++ без string С++ или это был какой-то другой язык?

Есть некоторая разница -- строки в C++ добавили и они есть, а сборщик мусора из rust выкинули -- и его нет.

Остальное у вас -- переливание из пустого в порожнее насчет того, что действительность такова и больше никакова. Но действительность меняется, подождем...


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 16:51 
> Это замечательно, что он защищает от (сравнительно узкого) класса ошибок работы с памятьи

Не узкого, а более 70% тех, что приводят к уязвимостям. Гугл с МС приводили статистику.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 16:22 
> Rust даёт гарантии по части доступа к памяти, а не гарантии безопасности в общем смысле.

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

Может ли Раст проверять корректность логики в вопросе доступа к неопределённо-вероятностным блокам памяти, исчисляемых во время выполнения и зависимых от окружения и входных данных?


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Чтото знающий , 26-Окт-25 01:48 
>Гарантии безопасного доступа к памяти может дать только корректность логики приложения и подлежащих слоёв, обеспечивающих выполнение.

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


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 09:55 
станок/автопилот/робот перезапустятся полностью и все.

да, и самолёт и ядерный реактор :-)


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 16:26 
>самолёт и ядерный реактор

Ядерный реактор на расте с кореутилс.
кхд)кхд)


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 17:12 
> перезапустятся полностью и все.
> да, и самолёт и ядерный реактор :-)

А что, предлагаешь писать ПО для самолетов и ядерных реакторов на языках с GC? Эксперт выше ведь именно о GC вещал.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 18:29 
Короч спросил у гжпт, Rust используется в вспомогательных системах ядерных реакторов и самолетов, но не массово, пока что C++,
Основными системами управляет (RTOS), такие как VxWorks, QNX, INTEGRITY, RTLinux.
Но не в критических модулях, в критических модулях управляют специальные встроенные системы.

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 22:15 
> спросил у гжпт

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


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено НеАноним , 25-Окт-25 22:38 
Да двигатель м драйв который, кажется в 2017 сделали.
Бороздит просторы)
Люди во всю колонизируют другие планеты.
И занимаются терраформингом других планет.
Там кстати щас набирают экспедицию на марс, но долгтй полет.
Правда пока набирают. Года так с 2018, любой может. Короч где то видел на сайте, серьезно.
Вообщем только)
Только ты с Linux)
хд)хд)

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 11:15 
Дак вот почему боинги падают... Программисты на расте переполняют память при работе с закрылками...

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 10:05 
> утечки памяти из-за циклических связей в структурах с объектами
> со счетчиками ссылок (Rc) в нем вполне себе имеют место быть

А не подскажите, в каком языке без garbage collection эту проблему решили?
И решаема ли она в принципе?))

> и borrow checker от этого не спасает

Вообще в доке раста расписано от чего borrow спасает, а от чего нет.
И даже черным по белому написано "Preventing memory leaks entirely is not one of Rust’s guarantees" doc.rust-lang.org/book/ch15-06-reference-cycles.html
Но кто же читает доку...

> а то сейчас набигут растеры и побьют меня.

Фууу, конечно нет! Это было бы сравнимо с пинанием щеночков-дayнов!
Мерзко с одной стороны, и абсолютно бесполезно с другой.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 16:47 
> утечки памяти из-за циклических связей в структурах с объектами со счетчиками ссылок (Rc) в нем вполне себе имеют место быть, и borrow checker от этого не спасает

А как работающий во время компиляции borrow checker должен спасать от ошибок во времени выполнения? Иди проспись.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено morphe , 25-Окт-25 22:39 
>  На самом деле rust не так уж прост в управлении памятью: например, утечки памяти из-за циклических связей в структурах с объектами со счетчиками ссылок (Rc) в нем вполне себе имеют место быть, и borrow checker от этого не спасает. Но т-с-с-с-с, я этого не говорил, а то сейчас набигут растеры и побьют меня.

Циклические ссылки нужно создавать либо явно (Rc::new_cyclic), либо у тебя внутри Rc должно быть interior mutable значение, потому что по дефолту содержимое Rc immutable

И в обоих случаях у человека есть возможность задуматься, а то ли он вообще делает, и не нужна ли ему арена/хранилище объектов с передачей хендлов (индексов)/какая-то графовая структура/gc. И все эти способы решения в Rust имеются, и использовать их удобнее чем другие.

Посмотри как сложный софт на Rust пишется, например Bevy ECS для игр, и увидишь что за счёт выразительности языка даже такая стрельба по ногам является опциональной, и проблема скорее для тех кто недостаточно в Rust погружен и пытается решать проблемы методами из других языков.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Медведь , 26-Окт-25 02:10 
Это все замечательно, но вот только циклические взаимосвязи в реальных предметных областях встречаются очень часто, и раст со своим боровчекером в таких задачах неуклюж, как бегемот в посудной лавке.

Стандартный ответ растера: "ты просто не понял раст!". Но если для того, чтобы выразить тривиальную взаимосвязь из реального мира, нужно навертеть тонны откровенно ненужных сущностей, возможно, не я "недостаточно погружён", а просто rust недостаточно выразителен или слишком ограничен? Скажем, биться с боровчекером, растыкивая Rc::new_cyclic просто из-за ограничений модели владения, как по мне, удовольствие сильно ниже среднего, не находишь?


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Чтото знающий , 26-Окт-25 02:32 
>раст со своим боровчекером в таких задачах неуклюж, как бегемот в посудной лавке.
>чтобы выразить тривиальную взаимосвязь из реального мира, нужно навертеть тонны откровенно ненужных сущностей

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

>просто rust недостаточно выразителен или слишком ограничен?

Ограничен? Да,безусловно. Не даёт протекать в код примерно 70% типовых ошибок.
Недостаточно выразителен? Глядя на то, сколько кода уже написано на этом языке в разных предметных областях, закрадывается сомнение в вашей объективности.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Медведь , 26-Окт-25 02:48 
> Если вам нужны циклические зависимости, вы или используете unsafe, либо вам неважна утечка памяти, о возможности которой честно сообщают в доке.

А-а-а, погодите, так "честная дока" оправдывает все косяки дизайна языка, про которые она "честно сообщает"? Упс, а ведь доки по C совершенно честно говорят, что ответственность за косяки с памятью лежит на программисте. Всё, никаких претензий, ведь так?


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Чтото знающий , 27-Окт-25 00:04 
>оправдывает

Не оправдывает, а сообщает.

>косяки дизайна языка

Вполне возможно, что другого решения в природе не существует. Или безопасная работа с памятью (включая возможную утечку) или сам себе злобный Буратино.
Сродни законам физики. Они не позволяют... они много чего не позволяют. Но благодаря им мир становится детерменированным.

>Всё, никаких претензий, ведь так?

Объективно Rust намного лучше C. Разве ж это претензия? Просто констатация факта.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено morphe , 26-Окт-25 02:47 
> Это все замечательно, но вот только циклические взаимосвязи в реальных предметных областях
> встречаются очень часто, и раст со своим боровчекером в таких задачах
> неуклюж, как бегемот в посудной лавке.

Я и не сказал что таких не существует, я сказал что большинство таких случаев решаются способами более удобными чем через Rc<RefCell<T>>: арены, графы, хендлы, опять же сборщик мусора/cборщик циклов


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Медведь , 26-Окт-25 02:59 
> арены, графы, хендлы, опять же сборщик мусора/cборщик циклов

Про тонны ненужных сущностей я уже писал...


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено morphe , 26-Окт-25 03:02 
> Про тонны ненужных сущностей я уже писал...

Т.е в условных сях ты можешь использовать счётчик ссылок для циклических структур и при этом не получать утечки/use after free? Нука покажи свою магию


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Медведь , 26-Окт-25 15:25 
В условных сях двусвязный циклический список, например, элементарно делается без счетчиков ссылок вообще, и прекрасно освобождается соответствующей функцией. А в C++ это все еще и чудесно работает в деструкторе списка, что вкупе со смарт-поинтерами сводит риск неправильного использования к неразличимому минимуму.

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 26-Окт-25 16:46 
> А в C++ это все еще и чудесно работает в деструкторе списка, что вкупе со смарт-поинтерами

Лол. "Ненужные" Rc из Раста против "чудесных" смарт-поинтеров из C++. Воин даже не в курсе, что концептуально это одно и то же. 🤦


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Медведь , 26-Окт-25 17:02 
Строго говоря, все объекты в том же python концептуально -- примерно то же самое, и что? Ни в плюсах, ни в пайтоне никто не навязывает откровенно дебильного беганья от боровчекера. Дьявол в деталях, как говорится.

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 26-Окт-25 16:50 
>> Т.е в условных сях ты можешь использовать счётчик ссылок для циклических структур и при этом не получать утечки/use after free?
> В условных сях двусвязный циклический список, например, элементарно делается без счетчиков ссылок вообще, и прекрасно освобождается соответствующей функцией.

О как! Вместо счетчика ссылок для решения use-after-free сишочник предлагает проверенное десятилетиями "написал правильно - мамой клянусь"! И на полном серьезе же пишет...


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Медведь , 26-Окт-25 17:05 
>>> Т.е в условных сях ты можешь использовать счётчик ссылок для циклических структур и при этом не получать утечки/use after free?
>> В условных сях двусвязный циклический список, например, элементарно делается без счетчиков ссылок вообще, и прекрасно освобождается соответствующей функцией.
> О как! Вместо счетчика ссылок для решения use-after-free сишочник предлагает проверенное
> десятилетиями "написал правильно - мамой клянусь"! И на полном серьезе же
> пишет...

Растеры же полагаются на автопроверки, накручивают тонны бойлерплейта, по итогу имеем что имеем, пламенный привет багам в Ubuntu...


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено morphe , 26-Окт-25 03:03 
> Про тонны ненужных сущностей я уже писал...

Гвозди надо забивать микроскопом, стены сверлить им же...


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Медведь , 26-Окт-25 15:42 
Ты сейчас про модель владения в расте? Полностью согласен, она здорово мешает, когда ее приходится терпеть во всех 100% кода.

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено morphe , 26-Окт-25 22:15 
> Ты сейчас про модель владения в расте? Полностью согласен, она здорово мешает,
> когда ее приходится терпеть во всех 100% кода.

Я её вообще не замечаю, потому что весь нормально написанный код (включая код на C) этой модели и так соответствует


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Чтото знающий , 27-Окт-25 00:15 
>когда ее приходится терпеть во всех 100% кода

Вам её приходится терпеть, потому что, предположу, вы её плохо понимаете (при условии, что вы действительно пытаетесь программировать на этом языке).

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

Хорошим помощником в понимании может стать какой-нибудь чат ИИ.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 27-Окт-25 14:52 
> Попробуйте начать с чего-нибудь простого, чтобы привыкнуть. А там, уверен, и понимание появится.

На простом те самые нюансы не всплывут.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 26-Окт-25 16:39 
> Но если для того, чтобы выразить тривиальную взаимосвязь из реального мира, нужно навертеть тонны откровенно ненужных сущностей

В каком языке без GC задача циклических зависимостей решаема без "откровенно ненужных сущностей" в виде подсчета ссылок? Может, C++?

> Скажем, биться с боровчекером, растыкивая Rc::new_cyclic просто из-за ограничений модели владения, как по мне, удовольствие сильно ниже среднего, не находишь?

Господи, что за бред ты снова несёшь? Rc работает в рантайме и не имеет НИКАКОГО отношения к borrow checker-у, работающего во время компиляции.

> возможно, не я "недостаточно погружён"

Ты не просто "недостаточно погружён" - ты фантастически некомпетентен в темах, на которые пытаешься умничать, и потому закономерно несешь несусветную чушь.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Медведь , 26-Окт-25 16:59 
Ты разберись, зачем в вашем расте вообще существует этот самый Rc::new_cyclic, а там посмотрим, кто некопенгаген.

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 17:18 
> разрабатывают софт в 10 ращ медленнее

Сколько времени у GNU/coreutils заняло развиться до этого уровня? Лет тридцать? Ок…


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 17:42 
Предлагаете подождать 30 лет до работоспособного состояния uutils?

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 22:01 
> Предлагаете подождать 30 лет до работоспособного состояния uutils?

Так уже используют. Да, вылезли первые ошибки. И еще не одна вылезет. Но паровоз уже тронулся (не умом). И через 30 лет (если оба доживут) разница в списках CVE за этот период у растовского варианта будет в разы ниже чем у сишного.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 26-Окт-25 00:08 
Если в 10 раз медленнее, то 300 лет надо ждать.

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 22:36 
В 1990-м в целом уже готово было

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 26-Окт-25 18:55 
Так готово, что те баги до сих пор фиксят.

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено User , 27-Окт-25 14:20 
Смотреть, в каком году гнутики добавили в свою поделку ключ -r я, конечно же, не буду...

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено эксперт по всему , 26-Окт-25 20:22 
представь что rust это C++ со всеми возможными статическими анализаторами. писать на C++ когда надо полностью удовлетворять анализаторы будет примерно также по скорости

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Я , 25-Окт-25 11:04 
Это, как раз, нормально.

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено morphe , 26-Окт-25 01:05 
> То есть добавление тестов выявило новые проблемы? Кто бы мог подумать... Пилите, Шура, пилите, они золотые.

Там исправили проблему от которой неподдерживаемые аргументы игнорировались

Вопрос скорее в том, что это за тесты, которым без разницы обрабатываются аргументы или нет


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено 12yoexpert , 25-Окт-25 09:00 
> по сравнению с GNU Coreutils утилита sort теперь быстрее в 3.72 раза

конечно, если в половине кода вставлять успешно завершающиеся загрушки

инвалиды умственного труда


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 10:53 
Дак это же те самые uutils, которые сломали обновления в Убунте!

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 13:49 
Ну к слову это не их вина, что убунтовцы взяли пакет, который на 80% совместим со старым и при этом не удосужились проверить что все используемые функции работают как надо

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 22:36 
А фальш-заглушка в эти 80%, прошедших тесты, входит? Если да, то их вина.

К тому же, какие ещё "они" и "убунтовцы"? Разраб с самым большим количеством коммитов в uutils - подписался как Ubuntu Developer. Это, плюс-минус, те же люди.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено morphe , 25-Окт-25 22:42 
> Ну к слову это не их вина, что убунтовцы взяли пакет, который на 80% совместим со старым и при этом не удосужились проверить что все используемые функции работают как надо

Убунта даже не удосужилась обновить пакет, несмотря на то что в uutils каждый день что-то дорабатывают и фиксят, и фикс проблемы был уже давно, просто по привычке убунта взяла версию трёхмесячной давности


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 16:28 
>Дак это же те самые uutils, которые сломали обновления в Убунте!

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


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 16:57 
>> по сравнению с GNU Coreutils утилита sort теперь быстрее в 3.72 раза
> конечно, если в половине кода вставлять успешно завершающиеся загрушки

В смысле, растовый sort бысрее сишного потому что как-то частично/неполноценно сортирует, или что ты хотел сказать?


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено 12yoexpert , 25-Окт-25 18:47 
чувак, для начала тебе нужно понять, что слова маркетологов о том, что их товар быстрее свободного ПО, могут быть неправдой

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 19:36 
> слова маркетологов о том, что их товар быстрее свободного ПО, могут быть неправдой

Хочешь сказать, растовый sort сортирует так же или медленнее сишного?


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 20:55 
А если наработки по сортировке перенесут на С.... Вообще взлетит

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Чтото знающий , 27-Окт-25 01:53 
>конечно, если в половине кода вставлять успешно завершающиеся загрушки

У вас, конечно, и доказательства есть? Или как обычно?


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 09:23 
>Заявлен уровень совместимости 83.91% (было 87.06%). Снижение уровня совместимости объясняется добавлением в тестовый набор 16 новых тестов.

Никто не измерял насколько они тесты переписали? В свете последних новостей возникают сомнения в их правдивости.
Также встаёт вопрос, исходя из цели переписать 1 в 1 GNU Coreutils почему у них стабильно ломается то одно, то другое, если им достаточно просто повторить код? Неужели Rust оказался настолько сложным для восприятия человеком, что даже ИИ не может помочь?


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 09:36 
А зачем им повторять CVE из gnu? Тут стараются сразу писать корректно.

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Медведь , 25-Окт-25 09:39 
> Тут стараются сразу писать корректно.

10/10 за чувство юмора!


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 09:44 
>Тут стараются сразу писать корректно.

А когда это у них начнёт получаться?


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Чтото знающий , 26-Окт-25 02:02 
Уже получается. Просмотрите на количество пройденных тестов, что ли.

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 26-Окт-25 02:36 
Результат пока не впечатляющий и правдивость тестов вызывает вопросы.

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Чтото знающий , 27-Окт-25 00:21 
>Результат пока не впечатляющий

Это субъективная оценка. Как по мне, для альфа-версии - вполне себе впечатляющий, учитывая то, сколько утилит в работе находится, и как быстро разработчики вышли на такой результат.

>и правдивость тестов вызывает вопросы.

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


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 27-Окт-25 14:55 
> Как по мне, для альфа-версии - вполне себе впечатляющий

Одна проблема. Что он делает в Ubuntu.

> Для альфа-версий вполне обычное явление. Но вы всегда можете помочь проекту, если действительно в нём заинтересованы.

То заинтересованность только одна. Что бы эти альфа-версии никуда не пихали. Или пихали куда-нибудь где "заинтересованных" нет.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 10:55 
opennet.ru/opennews/art.shtml?num=64108

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 21:15 
И где тут CVE?

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 22:21 
Ты сказал "Тут стараются сразу писать корректно", что является враньём.

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 22:22 
P.S. Ах, да... "стараются". Но кроме старания нужна ещё и квалификация, которой у них нету.

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 22:55 
Ты вырвал фразу из текста, корректность была про CVE.

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено нах. , 25-Окт-25 10:21 
Ну наоборот жыж - в свете последних новостей выяснилось, что если ты тестируешь что ключик -r обрабатывается - какой-то умный вася может взять и заткнуть тест, поставив заглушку, и ачивмент анлокт!

Поэтому теперь приходится переделывать тесты, чтобы убедиться что -r не текущую дату вернул, еще и файл ему создать особым образом, а то свежесозданым не проверишь.

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

> если им достаточно просто повторить код?

повторить != скопипастить.

А бегать от борова да, труднее чем просто абы как решить задачу, а обрабатывать corner cases когда-нибудь в следующей версии - как оно было при разработке gnu. (потому что таки да, надо проверять untrusted input на входе, а не совать в date форматную строку из внешнего источника, и надеяться что как-нибудь обработается)

опыт руффлятины не даст соврать - пять лет на голый парсер. С все еще "79%" api. (Причем по сути кроме парсера своего там почти ничего не было, от ффмпега до совсем ужасных лефтпадов неведомых васянов взято готовыми. Макромедии пришлось почти все писать с нуля, ничего готового не было. Да еще под три несовместимых даже в мелочах компилятора.)


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 21:17 
> Не то что эти диды, которым в голову не пришло что тут может быть диверсия на ровном месте.

Это те диды, которые писали оригинал? https://github.com/advisories/GHSA-vg73-g8m4-q62r


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено ник , 30-Окт-25 23:34 
Ржавчина идиоматически сложная фигня.синтаксис вообще лажа. Так о чем тут говорить?и замечу,что секта ржавчины такая же как и секта воинствующих функциональщиков.

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 12:06 
>Улучшена совместимость с эталонным тестовым набором GNU Coreutils

Т.е. проходить стала меньше тестов - 532 (было 538)
неудач стало больше - 68 (было 52)
и полностью пропускать приходится больше - 33 (было 27)

Но это улучшение... тут скорее продолжена работа над улучшением или типа того


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 12:26 
Только программисты на расте умеют безопасно разрабатывать программы обратно во времени!

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Медведь , 25-Окт-25 13:30 
Что ж тут непонятного. Отрицательное улучшение, в лучших традициях.

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 16:25 
"Отрицательный рост"... Хотя нет, правильно так: "отрицательный Раст"!

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 12:29 
Если даже coreutils заржавеют и сгниют, останутся busybox и toybox.

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено ник , 30-Окт-25 23:37 
А теперь прикол,если бубунта и остальной сброд не оставят возможность включать или gnu или ржавые утилиты по собственному выбору,то,вы в рабстве,дамы и господа)

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 13:36 
>производительность некоторых утилит, например, по сравнению

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


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 18:43 
Гнутый софт, честно говоря, кривой и медленный.

Grep тормознее хипстерских аналогов заметно.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 18:56 
Греп хоть не падает рандомно. Рипгреп одна из худших представителей поделок, по умолчанию на медленных носителях ощутимо тормознее и больше долбит диск впустую. Что есть у гнутого софта (во всяком случае, когда касается компонентов ОС, вроде coreutils) -- это стабильность и предсказуемая работоспособность.

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Чтото знающий , 26-Окт-25 02:06 
>по умолчанию на медленных носителях ощутимо тормознее и больше долбит диск впустую

Ссылки будут на результаты тестирования или очередное "экспертное мнение"?


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 26-Окт-25 09:15 
На какие тестирования, у тебя всё хорошо? По умолчанию он в несколько потоков долбит и это значительно медленнее 1 потока.

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 26-Окт-25 19:00 
Так рипгреп писался для современных компьютеров с SSD, а не для твой древности с MFM контроллером. Для людей с ограниченными возможностями рекомендуется grep и Debian potato.

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 26-Окт-25 19:58 
Ну разве что для дебиичей, которые холодные данные хранят на ссд, может быть полезно такое поведение. Но к чему им быстрее, ведь, очевидно, ничем полезным они не занимаются?

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Чтото знающий , 27-Окт-25 00:26 
На реальное тестирование, а не умозрительное, которым вы или ваш единомышленник пытаетесь здесь заниматься. Потому что медленный диск вполне может работать быстрее при нескольких потоках по сравнению с одним. Как это возможно? Буферизация. Обычно ОС кеширует обращение к диску.

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 27-Окт-25 00:42 
То, что тебя интересует, называется упреждающее чтение (диск читает большими блоками и релевантные данные чудом могут оказаться в буфере), этим занимается прошивка диска и ОС тут никаким боком. На практике не поможет. Нет, ну, конечно, ситуация грепнуть несколько раз одни и те же данные (вместо того, чтобы правильно написать команду), вполне может случиться, тогда мультипоточный греп по кэшу может оказаться пропорционально быстрее. Во всех остальных случаях, операции медленнее. Между прочим, случайный доступ и на ссд весьма посредственную производительность демонстрирует, поэтому очень значительное ускорение просто невозможно.

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Прохожий , 27-Окт-25 01:46 
Меня это не интересует. Я об этом прекрасно осведомлён (в ИТ-отрасли уже более 25 лет). Это во-первых. Во-вторых, ведь никто не запрещает использовать 1-поточный режим, если по какой-то причине многопоточный кажется медленным. То есть, у вас есть ВЫБОР в случае ripgrep, в отличие от grep, где его нет.

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 27-Окт-25 09:50 
Тогда не понимаю, почему такие вещи приходится объяснять. Ripgrep совершенно непредсказуем, в скрипт не добавишь, а это основное применение. Падает, если ему файл не понравился. К тому же, разница в производительности там не столь значительна, чтобы отказываться от привычных регулярок.

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 22:45 
>Гнутый софт

Да.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено ник , 30-Окт-25 23:43 
Греп не является кор утилсом. При этом,что самое смешное,во первых,греп-обертка над библиотекой реджекспов,а во вторых,весь проект по переписыванию попахивает. Причем по одной причине-кат и греп пишут абсолютные новички,только только познакомившиеся с си,причем вместе с юнит тестами в виде баш скрипта. Это сберовская школа 21. Прям первый проект на основном обучении. И вот что до меня никак не дойдет-какого фига это все подается как подвиг?это же банальшина-почитал спеку и написал как посчитал нужным с учетом и порядка ключей и их содержимого. Повторюсь,что это первая же задача для Оч большого числа людей только вчера познакомившихся с си. В чем прикол то? Что на перегруженном языке смогли?так это Тьюринг полном япе можно сделать жеж. Я просто недопонимаю. Какого фига этот бред подается на серьезных щах?

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено freehck , 25-Окт-25 19:05 
>>производительность некоторых утилит, например, по сравнению
> Осталось выяснить, за чей счёт банкет. Если ускорение не за счёт simd
> для каких-то угловых случаев, очевидно, новый вариант менее оптимален (впрочем, для
> когда на ржавчине довольно классически).

С учётом того, что у них задача -- сделать сравнение в свою пользу, бьюсь об заклад, что они сравнивали (условно) стоковый coreutils из какого-нибудь Debian, скомпилированного под amd64 для древнючих архитектур, и uutils, скомпилированный со всеми возможными и невозможными оптимизациями спецом под тестовую тачку.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Чтото знающий , 26-Окт-25 02:08 
>С учётом того, что у них задача -- сделать сравнение в свою пользу

Зачем бы им заниматься подтасовками? Или вы по себе судите?


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 26-Окт-25 09:20 
>>С учётом того, что у них задача -- сделать сравнение в свою пользу
> Зачем бы им заниматься подтасовками? Или вы по себе судите?

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


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено freehck , 26-Окт-25 12:02 
> Зачем бы им заниматься подтасовками?

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

Так, например, перед разработчиком стоит задача произвести сравнительный анализ своего софта и софта копируемого. Разработчик прекрасно знает свой софт, и как его выгоднее собрать, чтобы добиться лучшей производительности. Но при этом сравнительно слабо знает, как сделать аналогичное для копируемого софта: и главное -- у него нет никакого желания глубоко разбираться в этом. Вот так неосознанно и получаются такие результаты безо всяких подтасовок.

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

PS: Или вот ещё пример. Буквально в этом году прямо тут на опеннете в новости про Redis (или мб Valkey) был человек, который приводил результаты произведённых им бенчмарков, из которых следовало, что он якобы может выжать из Postgresql более 10k qps для запросов update-а одной и той же строки. Не смотря на то, что это невозможно в принципе, он искренне верил в то, что писал. Он на самом деле произвёл бенчмарки, он совершенно точно не совершал подтасовок. Просто он банально ошибся и закидывал базу update-ами рандомных строк, а не одной конкретной. Так что тесты -- штука такая: очень сильно зависят от того, кто их производит.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Чтото знающий , 27-Окт-25 00:33 
Ваша аналогия некорректна. Потому что какая-нибудь cut в реализации и использовании на несколько порядков проще, чем MySQL или PostgreSQL. Следовательно, возможностей накрутить тест в свою пользу гораздо меньше. Далее. Это ведь открытый проект. Если кто-то сомневается в результатах, вполне может провести аналогичные тесты и прийти уже с конкретными цифрами, а не умозрительными подозрениями, как это делаете вы или ваши единомышленники.

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено freehck , 27-Окт-25 10:45 
> Если кто-то сомневается в результатах, вполне может провести аналогичные тесты и прийти уже с конкретными цифрами

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


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено warlock , 25-Окт-25 14:13 
Круть!

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 25-Окт-25 15:55 
Ерундой люди занимаются, что доказала недавняя новость про убунту.

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Чтото знающий , 26-Окт-25 02:12 
1. Чем хотят, тем и занимаются. Вам какое дело до этого?

2. А что она доказала? Авторы утилит ведь показывают, что все тесты они пока не проходят. На это и номер версии намекает. Почему же вы считаете их виноватыми в том, что дистрособиратели Убунты решили взять в свой продукт сырое ПО?


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 26-Окт-25 02:40 
Авторы утилит и дистрособиратели Убунты - это одни и те же люди.

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Чтото знающий , 27-Окт-25 00:35 
Ок. В какой LTS версии Ubuntu вы столкнулись с проблемами из-за сырости этих утилит?

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено anonymous , 27-Окт-25 14:02 
А что, эту кривую поделку уже в какой-то LTS затянули? Соболезную пострадавшим.

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Чтото знающий , 26-Окт-25 02:14 
Ух, сколько борцунов с Rust набежало. Чуют недоброе, ох чуют, что скоро только легаси и останется им поддерживать.

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 26-Окт-25 07:11 
> Ух, сколько борцунов с Rust набежало. Чуют недоброе, ох чуют, что скоро только легаси и останется им поддерживать.

Когда примерно 15-ть лет назад выходили новости про пермиссивные аналоги GNU утилит, были единичные посты о том, что корпорасты собираются заменить всю системную часть GNU/Linux. Многие говорили: "это же Open Source, форки же всегда бывают, может у кого-то из разрабов своё видение, о том каким должна быть программа. Посмотри на ядро, кто бросит "вызов" Линусу?". Ну, не верили. Кстати, сам Р. Столлман тоже был насторожен такой тенденцией.

На 2025 год уже нет, ни у никого нет сомнений в том, что корпорасты хотят максимально избавится копилефтного кода. Получится ли это у Red Hat, Canonical, Oracle? Да, получится. А те компании, которые собирают собственные дистры на основе их дистрибутивов будут вынуждены подстроится.

Смогут ли корпорасты частично или полностью вытеснить GNU? Нет, не получится. GNU - это самостоятельный игрок, который создан с нуля Свободным Сообществом.

Программисты всего мира! Мой вам совет, не принимайте участие в разработке и тестировании корпорастических дистрибутивов. Не тратьте на это своё время. Так вы делаете корпорастов сильнее. И не забывайте, что пермиссивщик легко превращается в проприетарщика.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 26-Окт-25 10:30 
> И не забывайте, что пермиссивщик легко превращается в проприетарщика.

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

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

Я об этом уже много раз писал лет 20 назад. Но воз и ныне там.

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


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 26-Окт-25 13:59 
Почему-то я вспомнил фильм 1998 года, "Честная куртизанка". Извини.

Понимаешь в чём дело когда возникает "борьба", не бывает оттенков серого, промежуточных состояний. Ты должен сделать чёткий выбор, на какой ты стороне. Когда травили Столлмана люди сделали чёткий выбор. И сделав чёткий выбор они спасли Столлмана.

Я не говорю о том, что "если ты не за нас, то ты против нас" - это аморальное высказывание. Я лишь говорю о том, что во время "борьбы" надо сделать чёткий выбор на какой ты стороне. И это правильно.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 26-Окт-25 16:11 
Выбор простой. Нечего терять кроме собственных цепей. Хотя кому-то рабство нравится. Многие даже здесь нахваливают своих рабовладельцев.

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Чтото знающий , 27-Окт-25 00:50 
>На 2025 год уже нет, ни у никого нет сомнений в том, что корпорасты хотят максимально избавится копилефтного кода.

Реальность такова, что сколь-либо сложное ПО могут вытягивать только корпорации. Что ярко демонстрирует то же ядро Линукса,в котором около 88% кода пришло от корпораций. Поэтому их желание вполне понятно - кто девушку платит, тот её и танцует.

Но почему вы о корпорациях вспомнили? Речь же о языке программирования, а не типах лицензий.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 27-Окт-25 05:46 
> Реальность такова, что сколь-либо сложное ПО могут вытягивать только корпорации. Что ярко демонстрирует то же ядро Линукса,в котором около 88% кода пришло от корпораций. Поэтому их желание вполне понятно - кто девушку платит, тот её и танцует.

Просто некоторые товарищи до сих пор совершенно не подозревают в какую позу их поставили и уже которое десятилетие мнят себя пламенными идейными борцами под знаменем Столлмана (на смех корпорастам). Это выглядит комично со стороны. И как раз такое клоунское положение вещей и выглядит как нечто пограничное между вышеупомянутой "честной куртизанкой" и полу-сектантским психическим заболеванием.

Когда им заикаешься про мелкую (но по-настоящему независимую) проприетарщину от пролетария Васяна, который пытается (не факт что получится) заработать себе на бомж-пакет, то в ответ раздаются только предсказуемые, бессмысленные и тенденциозные лозунги. Хотя сами же, в отличии от независимого Васяна - часто в открытую проституируют на галерах у корпорастов или же за их деньги им пританцовывают (ну это про то что вы и писали - "кто девушку платит, тот её и танцует", "любой каприз за ваши деньги" и так далее).


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 27-Окт-25 06:25 
> Но почему вы о корпорациях вспомнили?

Я заметил употребление термина "проприетарщина" с негативным оттенком.

> Речь же о языке программирования, а не типах лицензий.

Кстати да, и лицензия LGPL - не просто так создавалась. Она заточена под проприетарщину (при чём самим Столлманом). В том, что кто-то пробует заработать даже путём закрытия части кода - нет ничего плохого. Это, конечно, сообществом FSF не поощряется, но и не стоит забывать и то, что среднестатистический человек питается не только святым духом.

По поводу Растокостылей. Всё. Не о чем говорить. Баталии уже не актуальны после ChkTag. Если у фирмы (или отдельного кодера) годами складывались наработки на Си и Си++, то ты не переубедишь что-то менять, это архисложная и контр-продуктивная задача.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Медведь , 27-Окт-25 12:57 
> Баталии уже не актуальны после ChkTag.

Совершенно верно. Предвижу реакцию оппонентов: "Но у нас же гарантии compile time! А ChkTag просто убьет программу в рантайме!" Это так, но при этом все ошибки работы с памятью, от которых гарантирует раст, из критических, чреватых дырами в безопасности, внезапно становятся просто себе логическими ошибками, одними из многих возможных, в одном ряду с любыми другими ошибками, могущими кинуть панику в растовом рантайме.

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


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 27-Окт-25 13:29 
> Совершенно верно.

Это ты сам с собой соглашаешься?))

> Предвижу реакцию оппонентов: "Но у нас же гарантии compile time! А ChkTag просто убьет программу в рантайме!"

Я у тебя уже спрашивал в другой теме, почему если в АРМ эта штука уже 7 лет, то проблемы не исчезли.
Ты как-то не заметил вопроса или слился 🤷🏻‍♂️

> Это так,

И этого уже достаточно)

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

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

> Ждем выхода процессоров с ChkTag, но уже сейчас компетентные граждане сильно задумаются,  стоит ли связываться с растом или просто подождать.

А еще выкинуть все старые серваки и купить новые.



"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Медведь , 27-Окт-25 14:04 
> Это ты сам с собой соглашаешься?))

Да, специально для тебя выхожу и захожу, выхожу и захожу.

> Я у тебя уже спрашивал в другой теме, почему если в АРМ
> эта штука уже 7 лет, то проблемы не исчезли.
> Ты как-то не заметил вопроса или слился 🤷🏻‍♂️

Если у тебя есть статистика по проблемам в софте собранном под ARM с поддержкой MTE, в студию!

> С чего вдруг? Если у тебя внезапно время от времени падает сервак,
> то тебе будет не очень весело искать кто попортил память.

Если сервак падает от паники в коде на раст, меня вряд ли утешит мысль, что зато это же паника на самом раст, практически святая паника! Да и просто ошибки в логике софта меня мало порадуют, скажу честно. Раст от них защищает?

> А еще выкинуть все старые серваки и купить новые.

Чего уж там, перестроить все серверные и проложить новые дороги к ним.



"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 27-Окт-25 16:28 
> Если у тебя есть статистика по проблемам в софте собранном под ARM с поддержкой MTE, в студию!

Пффф, какие у тебя запросы)
Я ж спросил простой вопрос "если МТЕ так крут, то зачем гугл использует раст?")

И да, поддержка МТЕ не во всех процессорах, да еще нужен особый чипсет.
Посмотри на то как его используют и расскажи что это просто.
developer.arm.com/documentation/108035/0100

> Если сервак падает от паники в коде на раст, меня вряд ли утешит мысль, что зато это же паника на самом раст, практически святая паника!

А если он не упадет, а скажет при компиляции "дружище, ты тут ошибся"?
Любая предотвращенная ошибка, которая не попала к пользователям, обходится гораздо дешевле.

> Да и просто ошибки в логике софта меня мало порадуют, скажу честно. Раст от них защищает?

А должен?
Хочешь гарантий для логики - тогда Ада-спарк тебе в помощь.
Или хаскель с математической верификацией.
Но будет очень дорого.

>> А еще выкинуть все старые серваки и купить новые.
> Чего уж там, перестроить все серверные и проложить новые дороги к ним.

Cpaказм это конечно хорошо, но получилось глупо.
Вот у тебя есть список компов за тонны баксов
opennet.ru/opennews/art.shtml?num=62256
Например "11 миллионов процессорных ядер CPU AMD EPYC", которые однозначно не поддерживают  новые фичи. И там крутится линукс.
Предлагаешь выкинуть?



"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Медведь , 27-Окт-25 16:58 
> если МТЕ так крут, то зачем гугл использует раст?

Может потому, что хочет здесь и сейчас, а ChkTag вот только-только стандартизировали? Вот что ответила нейросетка:

Google видит в MTE технологию, способную на порядок повысить безопасность миллиардов устройств и положить конец эре уязвимостей памяти.

Компания инвестирует значительные ресурсы, чтобы сделать MTE стандартом де-факто в мобильной индустрии, сотрудничая с производителями чипов и устройств.

> А если он не упадет, а скажет при компиляции "дружище, ты тут ошибся"? Любая предотвращенная ошибка, которая не попала к пользователям, обходится гораздо дешевле.

Соглашусь.

> Хочешь гарантий для логики - тогда Ада-спарк тебе в помощь. Или хаскель с математической верификацией.

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

> Предлагаешь выкинуть?

А что, с появлением раста они все внезапно упали и больше не работают? Вроде бы еще накануне вполне себе выполняли свои задачи. Понятно, что новые технологии защиты внедрятся постепенно, по мере обновления парка железа. Или ты хочешь сказать, что сервероводы, покупая новый сервер, гордо скажут -- нет, мне не нужен процессор с ChkTag|MTE|..., у меня же раст, дайте мне вооон тот серверок из кладовочки?


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 27-Окт-25 17:29 
> Может потому, что хочет здесь и сейчас,

О, вот это здравая мыcль.
У тебя есть выбор или твой код станет менее дырявым вот прям сейчас и степень этого менее будет увеличиваться с каждой замененной строкой.
Или ждать N лет пока вымрет всё железо без поддержки такой фичи.

> а ChkTag вот только-только стандартизировали?

Т.е если посмотреть на развитие MTE
developer.android.com/ndk/guides/arm-mte
то поддержка даже гугловых девайсов - это Pixel 8 и Pixel 9.
Не густо не так ли?

> Google видит в MTE технологию, способную на порядок повысить безопасность миллиардов устройств и положить конец эре уязвимостей памяти.

Красиво сказано.
А вот что они пишут в своем блоге
security.googleblog.com/2023/11/mte-promising-path-forward-for-memory.html
Бла-бла Shifting to memory safe languages such as Rust as a proactive solution to prevent the new memory safety bugs from being introduced in the first place.  

>> Хочешь гарантий для логики - тогда Ада-спарк тебе в помощь. Или хаскель с математической верификацией.
> Вот это - имхо правильный подход, не тыкать раст всюду, где он нужен и не нужен, а использовать правильные инструменты.

А где он нужен и не нужен? Кто это решает?
Может у вас есть деньги на разработку Ada-spark?
Кстати последние по какой-то непонятной причине решили "AdaCore Joins Rust Foundation as Silver Member"
adacore.com/press/adacore-joins-rust-foundation-as-silver-member

По поводу математической верификации.
Ты знаешь сколько это стоит?
sigops.org/s/conferences/sosp/2009/papers/klein-sosp09.pdf

The overall size of the proof, including framework,
libraries, and generated proofs (not shown in the
table) is 200,000 lines of Isabelle script.
....
total cost of 2.2 py including the Haskell effort.
А речь про "8,700 lines of C code and 600 lines of assembler"

И да, между формальной верификацией, спарком и обычный сишным кодом (дpыстня с переполнениями и прочими use-after-free) по свойству "корректность-безопасность" пропасть.
И ее может заполнить раст.

> А что, с появлением раста они все внезапно упали и больше не работают? Вроде бы еще накануне вполне себе выполняли свои задачи.

Не, они просто остались дырявыми)

> Понятно, что новые технологии защиты внедрятся постепенно, по мере обновления парка железа.

Т.е, если брать пример ARM, то лет 10 ждать?
Ну, тогда из ядра раст уже не выколупаете))

> Или ты хочешь сказать, что сервероводы, покупая новый сервер, гордо скажут -- нет, мне не нужен процессор с ChkTag|MTE|..., у меня же раст, дайте мне вооон тот серверок из кладовочки?

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


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Медведь , 27-Окт-25 18:02 
Кто из нас прав, покажет только время, и за ним точно не заржавеет ))) Предлагаю закончить бесконечный спор.

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 27-Окт-25 13:24 
> Кстати да, и лицензия LGPL - не просто так создавалась. Она заточена под проприетарщину (при чём самим Столлманом). В том, что кто-то пробует заработать даже путём закрытия части кода - нет ничего плохого.

Но сам Столлман писал в Манифесте ГНУ, что люди программируют не ради денег, зарплаты нужно ограничивать, и вообще тех кто пишет проприетарь - нужно наказывать.

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

Он может получать дары от благодарных пользователей))
Или танцевать в фyppu-сьюте.

> По поводу Растокостылей. Всё. Не о чем говорить.

Ну так не говори)

> Баталии уже не актуальны после ChkTag.

Напомню что а АРМ аналогичный механизм с 18-19 года. Поддержка уже давно добавлена в андроид.
Но, по какой-то странной причине в, практически, 2026 году гугл продолжает уменьшать использование дырявых языков.
Возможно серебрянная пуля в виде MTE, оказалась не настолько хорошей, как мне ты пытаешься  втирать)?

Сколько лет будут выпускаться процессоры по старой технологии?
Когда закончится для них End of Servicing Lifetime?
Напомню, что для 7th Gen Core Kaby Lake это дата была 2024 год.
А сейчас актуальные - 11-12 поколение.

> Если у фирмы (или отдельного кодера) годами складывались наработки на Си и Си++, то ты не переубедишь что-то менять,

А его не надо переубеждать.
Можно просто для госконтрактов прописать условия "не дырявые ЯП".
И он сам побежит переписывать хоть на Аду, хоть на раст, хоть вспомнит что есть Сишный CompCert (но для него нужно мозги иметь).

> это архисложная и контр-продуктивная задача.

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



"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 27-Окт-25 15:51 
> Напомню что а АРМ аналогичный механизм с 18-19 года. Поддержка уже давно добавлена в андроид. Но, по какой-то странной причине в, практически, 2026 году гугл продолжает...

Мыши плакали, кололись, но продолжали жрать кактус.

Гугл может себе позволить подобные эксперименты, к тому же месье́ знают толк в извращениях. Первый раз что ли? https://gcemetery.co


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 27-Окт-25 15:57 
И вдогонку: https://killedbygoogle.com

Или может скажете принудительное внедрение Kotlin в андроиде было очень "умной" затеей? Когда традиционной Джавы хватало выше крыши. Все эти бессмысленные нагромождения, метания, погоня за хайпом и баззвордами по прихоти менеджеров-гуманитариев, беспорядок как дань моде - ни к чему хорошему не приведут в конечном итоге.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 27-Окт-25 16:32 
> Мыши плакали, кололись, но продолжали жрать кактус.

Да-да, какой глупый гугл)
Мелкомягкие, амазон и прочие тоже?

> Гугл может себе позволить подобные эксперименты, к тому же месье́ знают толк в извращениях. Первый раз что ли? https://gcemetery.co

О, люблю эту ссылку.
Думаю половина проектов были объеденены или поглощены гугловскими творениями.

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



"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 27-Окт-25 17:15 
> Да-да, какой глупый гугл)
> Мелкомягкие, амазон и прочие тоже?

А что они когда-то были эталоном безошибочности? Обычные корпорастические манагеры подверженные бесполезному распылению усилий.

Корпорасты как раз и славятся тем, что повсеместно городят франкенштейнов и очень далеки от академически строгих подходов в инженерном деле.

> А тут речь про миллионы строк уже работающих в андроиде.

Ну это только начало эксперимента. Потом это болото ещё придётся поддерживать. А оно может внезапно перестать быть модно-молодёжным.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 27-Окт-25 17:38 
> А что они когда-то были эталоном безошибочности?

А кто говорит про безошибочность?
Тут речь про то, что если корпы что-то внедряют, то это обычно надолго.

> Обычные корпорастические манагеры подверженные бесполезному распылению усилий.

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

> Корпорасты как раз и славятся тем, что повсеместно городят франкенштейнов и очень далеки от академически строгих подходов в инженерном деле.

Напомнить на кого обычно работают эти академики?
Например создатель Minix.

>> А тут речь про миллионы строк уже работающих в андроиде.
> Ну это только начало эксперимента.

Которому уже сколько лет? И который уже признан успешным.

> Потом это болото ещё придётся поддерживать. А оно может внезапно перестать быть модно-молодёжным.

И? Ну будет какой-то хруст-2.0, разработка будет в расте.
Это не является проблемой.



"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 27-Окт-25 17:59 
> Тут речь про то, что если корпы что-то внедряют, то это обычно надолго.

Вот с этого надо было начинать. Но сути дела это не меняет. Сколько раз не назови чёрное - белым.

> Напомнить на кого обычно работают эти академики?

На управленцев. И что по итогу? Вынуждены пользоваться наследием 80-х, потому что теоретические фундаментальные разработки если не застопорились, то ОЧЕНЬ сильно замедлились.

> Которому уже сколько лет? И который уже признан успешным.

Ну, про "успешность" можешь кому-нибудь другому втирать. Я в курсе всех плюсов и минусов Раста, и толочь воду в ступе на опеннете в 100500 раз нет никакого желания.

> И? Ну будет какой-то хруст-2.0, разработка будет в расте.
> Это не является проблемой.

Слушай, вот когда подгонят хруст 2.0 с блэкджеком - тогда и поговорим. И я рад что для корпов в который раз это якобы "не проблема" )))


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 27-Окт-25 18:10 
> Вот с этого надо было начинать. Но сути дела это не меняет.

Суть дела была "раз появится аналог МТЕ, то раст не нужен".
Это и обсуждается.

> На управленцев. И что по итогу? Вынуждены пользоваться наследием 80-х, потому что теоретические фундаментальные разработки если не застопорились, то ОЧЕНЬ сильно замедлились.

Так это скрепа не только управленцев.
Сколько народу пользовалось копролитным С89, когда уже был С11?
"Работает - не трогай" как символ нынешнего computer science

> Ну, про "успешность" можешь кому-нибудь другому втирать.

Пф, типа твое мнение будет волновать гугл.
По их стандартам и требованиям - действительно успешный.

> Слушай, вот когда подгонят хруст 2.0 с блэкджеком - тогда и поговорим.

А пока у нас будет раст в ядре, в дровах типа MESA и в телефонах.
Нравится нам это или нет.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 27-Окт-25 18:22 
>> Вот с этого надо было начинать. Но сути дела это не меняет.
> Суть дела была "раз появится аналог МТЕ, то раст не нужен".
> Это и обсуждается.

Кем обсуждается? Основные проблемы с памятью устранены на аппаратном уровне. Я сразу написал, что для меня эта тема закрыта. А кому лень кодить вдумчиво, хочется экзотики и экстремального секса с боровом - никто не запрещает.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 27-Окт-25 13:50 
> ядро Линукса,в котором около 88% кода пришло от корпораций.

Забыл упомянуть, 88% лишнего кода. Линух застыл в нулевых, уже давно ничего фундаментального в ядро не добавляется. Идёт только бесконечное переписывание кроватей с языка на язык и их перестановка между кернел и юзер-спейсами.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 26-Окт-25 11:55 
> Чуют недоброе, ох чуют

А что тут чуять то если это недоброе в новостях.

То там отвалится, то там не обновляется.

А опыт начинания переписывания других проектов говорит о том, что они никогда НЕ МОГУТ полностью повторить оригинал из-за кривизны, которая ограничивает возможности разработки. А кривизна вызвана заточенностью на безопасной работе с памятью, а не удобстве поддерживания одного кода для множества архитектур с использованием множества разных библиотек и их версий.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Чтото знающий , 27-Окт-25 00:45 
они никогда НЕ МОГУТ полностью повторить оригинал из-за кривизны этого самого оригинала

Поправил. Так, пожалуй, точнее будет.

Есть продукты на Rust, которые существенно превосходят оригинал. Например, ripgrep. Или pingora. Или zed.

Просто подобные проекты ведут не корпорации, как правило (pingora - исключение), а энтузиасты. Поэтому быстрого результата ожидать не приходится. Люди, ведь, в своё свободное время этим занимаются, ради удовольствия, а не чтобы конкретно вам угодить.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 27-Окт-25 15:01 
> они никогда НЕ МОГУТ полностью повторить оригинал из-за кривизны этого самого оригинала

Вот совершенно не важно. Главное - что они принципиально НЕ МОГУТ.

> Есть продукты на Rust, которые существенно превосходят оригинал. Например, ripgrep. Или pingora. Или zed.

Два последних не видел. ripgrep видел. Явно сырая недоделка. Периодически валящаяся.
Плохой пример.

> Просто подобные проекты ведут не корпорации, как правило (pingora - исключение), а энтузиасты. > Поэтому быстрого результата ожидать не приходится. Люди, ведь, в своё свободное время этим занимаются, ради удовольствия, а не чтобы конкретно вам угодить.

Дело совершенно не в этом, а в том что это на порядки сложнее, и лечит это не собираются.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено анонимус , 30-Окт-25 15:51 
Расту также (свойственны 100% безопасные) переполнения буфера, использование после освобождения, ошибки сегментации (segfault) ... Поинтересуйтесь на досуге :)

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено ник , 30-Окт-25 23:46 
Че там с редокс?

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 26-Окт-25 21:29 
Из описания языка Vale про Rust: https://vale.dev/comparisons
"Rust is also very difficult. It's as complex as C++, and throws it all at the programmer at once. Unless you're brilliant (or come from certain backgrounds which fit well with Rust's restrictions), it's going to take you many months to learn what patterns the borrow checker likes, what kinds of tricks to use to work around it, and when to give up and re-architect your program.

It's safe by default, except:
It has unsafe code which allow unsafe operations.
It allows bugs in unsafe code (and FFI 4) to trigger memory unsafety in safe Rust code.
A Rust program will bring a lot of unsafe code in via dependencies

"


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Чтото знающий , 27-Окт-25 01:05 
Половина из написанного - попытка натянуть сову на глобус. Нет, Rust гораздо проще C++, чья спецификация занимает около полутора тысяч страниц.

Лично я не считаю себя шением в программировании. Кроме того, мне за 50. Но мне хватило примерно 40 часов, чтобы освоить какие-то основы, чтобы начать писать софт. Согласен, что Rust - не самый простой язык программирования. Но до C++ ему в этом плане очень далеко.

>it's going to take you many months to learn what patterns the borrow checker likes

Часто хватает 5 минут, чтобы спросить у чата. В особо сложных случаях может растянуться на несколько дней. Но уж точно ни о каких месяцах речь не идёт.

>It has unsafe code which allow unsafe operations

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

>A Rust program will bring a lot of unsafe code in via dependencies

Зависит от конкретного проекта. То есть, это необязательно всегда так.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Кошкажена , 27-Окт-25 23:06 
> Нет, Rust гораздо проще C++, чья спецификация занимает около полутора тысяч страниц.

А сколько занимает спецификация раста? А точно, ее же нет.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Кошкажена , 27-Окт-25 23:08 
> Часто хватает 5 минут, чтобы спросить у чата. В особо сложных случаях может растянуться на несколько дней. Но уж точно ни о каких месяцах речь не идёт.

А потом задаются вопросом откуда "уровень совместимости 83.91%".


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Чтото знающий , 27-Окт-25 01:20 
Продолжение.

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

Ещё перлы

"C++ is the fastest; it lets you do anything you want, with zero overhead"

Правда-правда все абстракции в Плюсах без дополнительных издержек?

"while no language can be faster than C++'s speed in theory"

Автор не знает о существовании Си, Ассемблера?

Резюмирую. Я бы не стал доверять статьям с подобными оценками, потому что или автор некомпетентен, или очень предвзят.


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено Аноним , 27-Окт-25 10:04 
Той сарказм неуместен, плюсы действительно позволяют и simd и zero-copy, и с куда меньшими затратами. К примеру, даже чтение данных в плюсах можно сделать значительно быстрее, чем в си, посредством пары небольших трюков с libc++.

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


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено анонимус , 30-Окт-25 15:59 
из пустого в порожнее - реально могло иметь переписывание только sudo :D

rust is causing a lot of problems... (Low Level)


"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "
Отправлено анонимус , 30-Окт-25 20:45 
(к счастью) rust утилиты (решающие несуществующие проблемы - все кроме sudo на Rust) выпиливаются заменяясь на оригинальные gnu утилиты