The OpenNET Project / Index page

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

Инициатива по верификации стандартной библиотеки Rust

24.11.2024 10:59

Компания Amazon и организация Rust Foundation представили инициативу, нацеленную на повышение безопасности стандартной библиотеки языка Rust. Целью заявлена проверка надёжности и безопасности функций, в которых используется ключевое слово "unsafe", допускающее операции, небезопасно работающие с памятью, такие как разыменование указателей, изменение статических переменных и обращение к внешним библиотекам на С/C++. Отмечается, что в настоящее время стандартная библиотека Rust насчитывает около 35 тысяч функций, из которых в 7500 встречаются блоки кода, выполняемые в контексте "unsafe". За последние три года в библиотеке было выявлено 57 проблем с корректностью работы, из которых 20 были помечены как уязвимости.

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

В настоящее время для решения предложено 13 заданий. Например, в одном из заданий предлагается убедиться в безопасности работы с raw-указателями в функциях модуля core::ptr и предоставить формальное доказательство корректности операций с указателями. Для верификации можно использовать существующие инструменты, такие как Aeneas, Kani, Gillian, Verus и Creusot, или предложить новые. Примеры выполненных заданий.

  1. Главная ссылка к новости (https://foundation.rust-lang.o...)
  2. OpenNews: Выпуск Rust 1.82. Новый браузер на Rust. Использование Rust в Volvo
  3. OpenNews: Проект Asterinas развивает ядро на языке Rust, совместимое с Linux
  4. OpenNews: DARPA развивает AI-транслятор для переписывания Си-кода на Rust
  5. OpenNews: В каждом пятом пакете на языке Rust используется ключевое слово unsafe
  6. OpenNews: Открытие стандартной библиотеки языка Mojo. Обновление инструментария Mojo 24.2
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/62286-rust
Ключевые слова: rust, unsafe
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (250) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 11:53, 24/11/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +17 +/
    > При этом за последние три года в библиотеке было выявлено 57 проблем с корректностью работы, из которых 20 были помечены как уязвимости.

    Как же так? Ведь Rust должен был обернуть небезопасные части в загончик unsafe, чтобы как раз не было такого.
    Выходит, не помогло? А верифицировать любой код можно, не только Rust.

     
     
  • 2.3, Аноним (-), 11:57, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +10 +/
    > Ведь Rust должен был обернуть небезопасные части в загончик unsafe, чтобы как раз не было такого.

    Так они это и сделали. Поэтому проблемы если возникают, то именно unsafe блоках.
    Не считая логических багов. От них только формальная верификация и спасет.

    > Выходит, не помогло?

    Наоборот, помогло. Посмотри сколько функций и в скольки есть unsafe.

    > А верифицировать любой код можно, не только Rust.

    Можно. Но в расте тебе нужно будет верифицировать 7.5к функция, а не 35 тысяч как в других языках.
    А это почти в 5 раз меньше работы.

     
     
  • 3.8, Аноним (8), 12:23, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +5 +/
    >А это почти в 5 раз меньше работы.

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

     
     
  • 4.9, Facemaker (?), 12:24, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >каждое включение unsafe на Rust в 5 раз сложнее проверять, чем в других языках

    Как вычислялась эта метрика?

     
     
  • 5.12, Аноним (-), 12:37, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +18 +/
    > Как вычислялась эта метрика?

    Методика 'Пальцем в небо' сертифицированного сотрудника 'НИИ Кекспертизы и вбросов' им. Опеннета.
    Все утверждения истинны на 146%!

    Я бы спросил в чем отличие unsafe rust от обычной сишки, но смысла нет - все равно ответа не получим))

     
     
  • 6.35, Аноним (35), 14:23, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    В чем отличие safe rust от обычной сишки?
     
     
  • 7.50, Аноним (50), 15:24, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Больше лишних проверок, которые в си пришлось бы писать руками на каждый чих.
     
     
  • 8.158, Прохожий (??), 02:13, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Гм Странное у вас определение понятия лишний Вот Гугл, Майкрософт и прочие к... текст свёрнут, показать
     
  • 6.162, Аномсис (?), 02:20, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Как я понял, даже unsafe в rust более безопасен, чем Си.
    Потому что в rust даже в блоке unsafe производятся некоторые проверки
     
  • 4.21, erthink_ (?), 13:15, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Нет. Ровно наоборот.

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

    В среднем по больнице, unsafe-код в Rust более регулярен и проще (менее комплексный) чем подобный в сишных библиотеках.

    Есть и обратный эффект, в unsafe-функциях концентрация странностей/мутностей больше чем в средней glibc. Но это только потому, что в rust есть возможность и стремление отделять мух от котлет, а в glibc любые unsafe операции могут быть в любом месте (в самом безобидном и неожиданном).

    Конечно, можно найти зубодробительные unsafe-сценарии, но тогда и сравнивать их надо с аналогичными сишными случаями.

     
     
  • 5.51, Аноним (50), 15:26, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Язык си необоснованно сложнее и найти там что-то ещё сложнее вывод очевиден. Хотя вывод понятен по отсутствию софта написанного на раст. Особенно в областях где хваленая работа с памятью могла бы иметь место.
     
     
  • 6.88, erthink_ (?), 16:30, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Язык си необоснованно сложнее и найти там что-то ещё сложнее вывод очевиден.

    Язык Си сильно проще, а С++ отягощен поддержкой обратной совместимости (с позволением всего unsafe что можно в Cи).

    > Хотя вывод понятен по отсутствию софта написанного на раст. Особенно в
    > областях где хваленая работа с памятью могла бы иметь место.

    Так ведь именно активно используется, даже не взирая не упомянутые выше баги.
    И переписывается на Rust достаточном много, там где либо высоки риски и в совокупности есть целесообразность для бизнеса, либо где что-то кому-то интересно.

    Другое дело, что в условном debian этого не видно, ибо 90% пакетов появились до раста и вся экосистема "сишная".

     
     
  • 7.95, Аноним (50), 16:51, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Может уже пора перестать переписывать и написать что-то новое на самом расте?
     
     
  • 8.116, Аноним (116), 17:59, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Лол Кто ты вообще такой чтобы что-то, кому-то указывать Особенно разрабам кото... текст свёрнут, показать
     
     
  • 9.129, Bottle (?), 19:56, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    There 5 games and 50 game engines written in Rust, как говорится ... текст свёрнут, показать
     
     
  • 10.160, Прохожий (??), 02:16, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Такое всегда бывает Сначала вызревает какой-то движок несколько движков Пото... текст свёрнут, показать
     
     
  • 11.292, Аноним (292), 08:41, 30/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Ты явный оптимист и не знаешь что такое разработка игр На rust могут начать раз... текст свёрнут, показать
     
  • 8.148, Я (??), 22:25, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    так так и делают просто нового кода всегда меньше чем уже написанного... текст свёрнут, показать
     
  • 5.126, Аноним (126), 19:35, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    unsafe это только индикативность для менеджеров или реализует безопасные механизмы (замыкание, контекст, виртуальность)?
     
  • 3.13, Аноним (13), 12:39, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Но в расте тебе нужно будет верифицировать 7.5к функция, а не 35 тысяч как в других языках.

    в другом языке есть формально верифицированный компилятор

    https://compcert.org

    а у раста пока что даже не формализовали ситему типов

    https://blog.rust-lang.org/2023/01/20/types-announcement.html

     
     
  • 4.28, erthink_ (?), 13:56, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Нисколько не хочу принизить ценность проекта и достигнутые там результаты, но вс... большой текст свёрнут, показать
     
     
  • 5.42, Аноним (13), 14:54, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Поэтому все подобные верификации всегда с массой уточнений и оговорок

    там написано вполне ясно

    > Such verified compilers come with a mathematical, machine-checked proof that the generated executable code behaves exactly as prescribed by the semantics of the source program.
    > Соответственно, отсутствие "формализированной системы типов" им не только не мешает, но и может помогать (сокращать поверхность).

    без формального описания не может быть никакой верификации, как это может "помогать" ?

     
     
  • 6.44, Аноним (44), 15:11, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > без формального описания не может быть никакой верификации

    это называется спецификация, в этой же спеке определяется понятие "баг".

     
     
  • 7.48, Аноним (13), 15:22, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > это называется спецификация, в этой же спеке определяется понятие "баг"

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

     
     
  • 8.79, Аноним (44), 16:10, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    На то и спека, где это все описано, и есть механизм верификации и валидации, кот... текст свёрнут, показать
     
     
  • 9.82, Аноним (13), 16:23, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    есть код на языке программирования и есть код исполняемый процессором, вы разниц... текст свёрнут, показать
     
     
  • 10.127, Аноним (44), 19:46, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    а какая разница, если и то и другое надо верифицировать Цель верификации одна -... текст свёрнут, показать
     
  • 7.76, erthink_ (?), 15:56, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Не важно как называется, но суть в определении рамок границ что верифицируется, ... большой текст свёрнут, показать
     
     
  • 8.81, Аноним (44), 16:18, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Ну и как продолжать дискуссию, если нет понимания для чего вообще нужно это все,... текст свёрнут, показать
     
  • 8.157, Я (??), 00:15, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    вера фикция верификация на том и держится... текст свёрнут, показать
     
  • 6.54, erthink_ (?), 15:31, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Ту там же символьные вычисления и местами абстрактная алгебра Например, можно в... большой текст свёрнут, показать
     
     
  • 7.128, Аноним (44), 19:50, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Собственно, хотел обратить внимание, что есть "рамки верификации" и почти всегда практическое применение никак в них не помещается.

    что такое "практическое применение"? Что такое "рамки верификации" когда есть строгое определение "предмета верификации"?

     
  • 4.93, Аноним (93), 16:42, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    в расте есть MIRI
     
  • 4.218, Аноним (218), 14:33, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    >в другом языке есть формально верифицированный компилятор
    >https://compcert.org

    Типичный опеннет. Неужели вам не понятна разница межу "компилятор верифицирован" и "вот эта вот библиотека верифицирована"? Компилятор верифицировать - ерунда, а вот перелопатить тонны библиотек - та ещё задача.

     
  • 3.16, 21yosenior (?), 12:52, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Поэтому проблемы если возникают, то именно unsafe блоках.

    https://github.com/Speykious/cve-rs - в фантазиях.

    > А это почти в 5 раз меньше работы.

    Нет, это столько же работы, точнее даже больше. Сейф раст ничего не гарантирует.

     
     
  • 4.33, Аноним (-), 14:21, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Вот эпичный тред, где люди в течение недели(!) пытались заставить это работать
    https://github.com/Speykious/cve-rs/issues/4

    Им пришлось написать самописный null_mute, модифицировать transmute() подменив там crate::null_mut на самописный... и даже после этого получается ошибка компиляции

    error[E0133]: dereference of raw pointer is unsafe and requires unsafe function or block
    error: could not compile 'cve-rs' (lib) due to previous error

     
     
  • 5.36, Аноним (35), 14:30, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Не знаю, что ты там компилируешь?




    $ cargo install cve-rs
    $ ~/.cargo/bin/cve-rs segfault
    Segmentation fault (core dumped)



     
  • 4.45, Аноним (45), 15:12, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > Нет, это столько же работы, точнее даже больше. Сейф раст ничего не
    > гарантирует.

    Но только в фантазиях опеннетных кекспертов-военов супротив раста, не ходящих по своим же ссылкам.
    https://docs.rs/cve-rs/latest/cve_rs/lifetime_expansion/index.html
    > How it works
    > There is a soundness hole in the Rust compiler that allows our domain expansion to work.

    ...
    > rustc should infer that one of the lifetimes does not outlive 'static, so that we can’t
    > use lifetime_translator; however, for whatever reason, it doesn’t, so this exploit works.
    > See https://github.com/rust-lang/rust/issues/25860 for this bug’s bug report.

    Воены-кексперты, что с лицом?

     
     
  • 5.46, Аноним (35), 15:18, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    >> https://github.com/rust-lang/rust/issues/25860

    opened on May 28, 2015

    >Воены-кексперты, что с лицом?

    У меня всё прекрасно, а у вас что с лицом уже почти 10 лет?

     
     
  • 6.56, Аноним (45), 15:33, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Сейф раст ничего не гарантирует.

    ...
    > opened on May 28, 2015
    >>Воены-кексперты, что с лицом?
    > У меня всё прекрасно, а у вас что с лицом уже почти

    Какое ловкое переобувание в прыжке, однако ...


     
     
  • 7.69, Аноним (35), 15:44, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    А ты забавный. Тебе показывают, что язык дырявый. Ты даешь ссылку, что дыра существует 10 лет. Причем в обсуждении дыры прямо пишут, что у раста проблемы тайпчекером и системой типов. 10 лет.
     
     
  • 8.74, Прохожий (??), 15:53, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Не язык, а компилятор Да, нашли в нём недоработку И ... текст свёрнут, показать
     
     
  • 9.78, Аноним (35), 16:06, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    На данном этапе развития rust язык и референсный компилятор неотделимы И повтор... текст свёрнут, показать
     
     
  • 10.161, Прохожий (??), 02:19, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Даже на данном этапе язык и компилятор - это разные вещи Поскольку одно есть, у... текст свёрнут, показать
     
  • 10.163, Прохожий (??), 02:25, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Про систему типов вы вот эту ссылку имели ввиду, видимо https blog rust-lang ... текст свёрнут, показать
     
  • 8.80, Аноним (45), 16:14, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    А ты еще забавней, проигнорировал ответ автора cvs-rs, проигнорировал сложность ... большой текст свёрнут, показать
     
     
  • 9.91, Аноним (35), 16:35, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ничего я не игнорировал Вам дали ссылку на конкретый баг с полным описанием, ка... текст свёрнут, показать
     
     
  • 10.104, Аноним (45), 17:24, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Какая занимательная реальность, в моей - это описание дал я сам, а воены супроти... большой текст свёрнут, показать
     
     
  • 11.125, Аноним (-), 19:12, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Не идрис, но хаскель - вон даже ОС запилили programatica cs pdx edu House Выгл... текст свёрнут, показать
     
     
  • 12.164, Прохожий (??), 02:35, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    ОС можно запилить на абсолютно любом языке программирования полным по Тюрингу ... текст свёрнут, показать
     
  • 3.49, Аноним (50), 15:22, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Только для целевой атаки достаточно одной уязвимости. Подумай об этом. И про ложку дегтя в бочке меда. Не имеет смысла размер бочки если любое количество дегтя делает даже самую безопасТную бочку неюзабельной. Можно просто сэкономить на бочке.
     
     
  • 4.60, Аноним (45), 15:37, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > И про ложку дегтя в бочке меда. Не имеет смысла размер бочки если
    > любое количество дегтя делает даже самую безопасТную бочку неюзабельной. Можно просто
    > сэкономить на бочке.

    О, Воены Супротив Раста подтянули "тяжелую артиллерию" в виде натягиваемых на глобус аналогий.
    Надеюсь, Воены пилят только ручной пилой (и используют такую же продукцию), а то ведь электро/бензопилу и всякие индустриальные лесопилки легко отыметь простым ломом, что делает их с точки зрения-"логики" Военов неюзабильными ...

     
     
  • 5.86, Аноним (50), 16:27, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Нет никаких военов. Есть только люди со здравым смыслом и это не ты. Кому безопасно есть питон, го, хаскель, джаваскрипт. Руст от них ничем в лучшую сторону не отличается.
     
     
  • 6.124, laindono (ok), 18:38, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Отличается производительностью выполняемого кода в той же когорте, что и C/C++.

    Раньше выбор стоял между крестиками и питоном (условно) и выбор состоял в безопасности против производительности.

    Теперь выбор между растом и условным питоном. При этом выбор между скоростью написания кода и производительностью.

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

     
     
  • 7.234, Be My Baby (?), 17:22, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Что? Опять кто то знает, как лучше, "молодое чудо" называет старичьём тех, кто для него <s>построил эту цивилизацию</s> прошёл по этой дороге и накопил все эти знания. Эх.
    Удачи в воспитании благодарных учеников :)
     
     
  • 8.236, Аноним (-), 17:42, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Э а они бы без этого помолодели Есть четкие метрики, например возраст Про р... текст свёрнут, показать
     
     
  • 9.294, Аноним (292), 09:18, 30/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Те кто писал код не криво-косо - очевидно, не написали тот код, который все испо... текст свёрнут, показать
     
  • 3.77, Аноним (77), 16:03, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    >Поэтому проблемы если возникают, то именно unsafe блоках.

    А Rustonomicon говорит строго обратное, что unsafe - нелокален, и что от него проблемы могут возникнуть вообще где угодно.

     
     
  • 4.146, Аноним (-), 22:10, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > А Rustonomicon говорит строго обратное, что unsafe - нелокален,
    > и что от него проблемы могут возникнуть вообще где угодно.

    Нет. Проблемы находятся именно в unsafe блоках.
    А вот последствия этих проблем таки да не локальны и могут проявится везде.

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

     
     
  • 5.262, Аноним (-), 11:35, 26/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Нет, если у тебя есть один unsafe, то проблема может быть где угодно, не только ... большой текст свёрнут, показать
     
  • 3.159, fuggy (ok), 02:14, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Риторический вопрос, сосед интересуется. Почему бы убрать unsafe в некоторых случаях чтобы вместо 7500 было бы 3500 unsafe функций. То есть переписать частично на safe rust, так и верифицировать меньше придётся. Раз оно что-то там не сходится, то значит не хватает абстракций. А то выходит если что-то не получается без unsafe, то просто используем его затычку и делаем чёрную магию.
     
  • 3.196, ptr (ok), 10:50, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Поэтому проблемы если возникают, то именно unsafe блоках.

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

    > Но в расте тебе нужно будет верифицировать 7.5к функция, а не 35 тысяч как в других языках.

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

    > А это почти в 5 раз меньше работы.

    В той же glibc функций, в которых потенциально возможны угрозы, тоже не порядка 20% процентов. Так что тут паритет.

     
  • 3.197, ptr (ok), 10:55, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Поэтому проблемы если возникают, то именно unsafe блоках.

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

    > Но в расте тебе нужно будет верифицировать 7.5к функция, а не 35 тысяч как в других языках.

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

    > А это почти в 5 раз меньше работы.

    В той же glibc функций, в которых потенциально возможны угрозы, тоже не порядка 20% процентов. Так что тут паритет.

     
  • 2.6, Аноним (6), 12:03, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Нет ничего иделаьного! А результат всяко лучше по сравнению с С/C++.
     
     
  • 3.90, Аноним (90), 16:35, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Если на стройке носить 10 касок подряд, то будет в 10 раз безопаснее! Но почему-то в реальности так никто не делает.
     
     
  • 4.200, Прохожий (??), 12:02, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Кривая аналогия. Правильной была бы такая. На стройке желательно носить каску, защитные очки, перчатки строительные, спецодежду, страховку (если ты высотник).
     
  • 4.206, Аноним (-), 12:44, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Если на стройке носить 10 касок подряд, то будет в 10 раз безопаснее!

    А почему 10, а не 20?
    Если при думывать глупые аналогии, то почему не доводить до абсурда?

    > Но почему-то в реальности так никто не делает.

    Конечно не делают.
    С/С++ это вообще без каски, страховки и, как выясняются никто не читал правила ТБ (стандарт).
    В общем рабочие прыгают на арматуру, котрую пилять болгаркой без кожуха, крановщик роняет плиты, сварщик варит без очков-маски,  бетономешалка мешает бетон, бригада строителей пьет...

    И кстати "в реальности" при первом же C̶V̶E̶ факапе, всех ответственных будут набутыливать.
    Жаль в софте пока AS IS, и никакой ответственности за овнокод нету((

     
  • 2.7, proninyaroslav (ok), 12:04, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    А теперь представим что unsafe нет, и нужно перелопатить 35к функций, вместо 7500 если бы unsafe был.
     
     
  • 3.15, 21yosenior (?), 12:48, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Там и так нужно перелопатить 35к, уб в расте есть везде. Не говоря о том, что многие из этих 35к - хэлворды.
     
     
  • 4.18, proninyaroslav (ok), 12:59, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    UB в расте не может быть за пределами unsafe блока. Это гарантированно. Все остальное он конечно не гарантирует, например утечки памяти.
     
     
  • 5.22, 21yosenior (?), 13:23, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Эти гарантии уже умножены на ноль. Кидал ссылку ниже.
     
     
  • 6.47, proninyaroslav (ok), 15:20, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Семантика языка, которая гарантирует безопасность, это всего лишь описание. Но конечно многое зависит от компилятора и его уязвимостей которые всегда есть. И этот проект по сути их демонстрирует.
     
     
  • 7.57, Аноним (50), 15:33, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Он демонстрирует что в расте нет никакой необходимости. Дешевле писать на нормальных языках. Сейф на питоне, ансейф быстрый код на с++ как модули для питона. Все экономия 1000%
     
     
  • 8.92, Аноним (90), 16:36, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Питон на реальных задачах в сотни раз медленее Си Лучше уж Java или C ... текст свёрнут, показать
     
     
  • 9.94, Аноним (50), 16:49, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Куда ты так торопишься задача ты моя Так можно и успеть ... текст свёрнут, показать
     
  • 8.120, Аноним (-), 18:08, 24/11/2024 Скрыто ботом-модератором     [к модератору]
  • –1 +/
     
  • 8.205, Прохожий (??), 12:26, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Сколько безосновательных заявлений в одном предложении Фирмы, мировые лидеры в ... текст свёрнут, показать
     
     
  • 9.208, Аноним (-), 12:47, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Предполагаю ответы будут такие или из подобного списка 1 Это все корпы они тол... текст свёрнут, показать
     
     
  • 10.295, Аноним (292), 10:55, 30/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Вот воследнее - это как раз ваш уровень Но верить цифиркам - которые рисуют мен... текст свёрнут, показать
     
  • 5.34, Аноним (126), 14:21, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >Это гарантированно.

    Кем или чем?

     
     
  • 6.202, Прохожий (??), 12:07, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Компилятором и RFC
     
  • 3.55, Аноним (50), 15:32, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Почему нельзя сразу написать безопасно. Если есть ансейф то язык уже небезопасен.
     
     
  • 4.152, Минона (ok), 23:10, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Можно, но это либо дорого либо неэффективно.
     
  • 4.201, Прохожий (??), 12:06, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    >то язык уже небезопасен

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

     
  • 2.180, Аноним (180), 07:55, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Надо теперь всё с Rust переписать на SPARK, чтобы было надёжно и верифицируемо.
     

     ....большая нить свёрнута, показать (84)

  • 1.5, ijuij (?), 12:02, 24/11/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    Unsafe был введён более пяти лет назад (https://github.com/rust-lang/rust/commit/10855a36b53d33aa2e4f8b98107ee54a0cca5), и за это время люди успели использовать этот ключевое слово в множестве проектов. Однако только сейчас они начали заниматься его верификацией. Ну что ж, подход к безопасности действительно "на высшем уровне".

     
     
  • 2.31, Аноним (126), 14:15, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Верифицируют библиотеку, а не unsafe.
     
     
  • 3.58, Аноним (50), 15:36, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Но ведь адепты говорили что факт написания ансейфа будет помогать программисту сильнее концентрироваться на ошибках в коде, а оказывается не помогает. И хакер все равно выйдет за границы и возьмёт рута. А уязвимость поправят только через 5 лет во время какой-то там верификации. Причем найдут только 1 из 10 уязвимостей.
     
     
  • 4.68, Аноним (45), 15:43, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Но ведь адепты говорили что факт написания ансейфа будет помогать программисту сильнее
    > концентрироваться на ошибках в коде, а оказывается не помогает. И хакер
    > все равно выйдет за границы и возьмёт рута.

    А гугол-то в курсе?
    https://www.opennet.ru/opennews/art.shtml?num=61933
    >  Методы безопасной работы с памятью позволили существенно снизить число уязвимостей в Android

    ...
    > Изменения позволили снизить долю связанных с памятью уязвимостей в Android c 76% в 2019 году до 24% в 2024 году

    ---

    > А уязвимость поправят только через 5 лет во время какой-то там верификации. Причем найдут только 1 из 10 уязвимостей.

    Опять методика 'Пальцем в небо' сертифицированного сотрудника 'НИИ Кекспертизы и вбросов' им. Опеннета?


     
     
  • 5.84, Аноним (50), 16:25, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Опять повысились надои? А новость сабжевую ты прочитать не хочешь? Чтобы найти вульны нужна аш целая инициатива от целого Амазона. Без этого вульны не ищутся.
     
     
  • 6.106, Аноним (45), 17:32, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Опять повысились надои? А новость сабжевую ты прочитать не хочешь? Чтобы найти
    > вульны нужна аш целая инициатива от целого Амазона. Без этого вульны
    > не ищутся.

    Опять альтернативная реальность? А то в нашей гугол платит нехилые бабки за каждый найденый вулн:
    https://opennet.ru/opennews/art.shtml?num=60780
    > Из потраченной в 2023 году суммы $3.4 млн (в прошлом году $4.8 млн) выплачено за уязвимости в Android. За информацию об уязвимостях в браузере Chrome было выплачено 359 премий на общую сумму $2.1 млн (в прошлом году $3.5 млн).

    Че там кстати с твоими чиселками? Я угадал с методикой очередного статистического опеннетного исследования?

     
     
  • 7.108, Аноним (50), 17:40, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Что та скоростью разработки в 10 раз медленнее? Серво уже дописали? Или может редокс?
     
     
  • 8.252, Прохожий (??), 22:43, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Вот, очередное проявление дремучей невежественности Скорость разработки, если с... текст свёрнут, показать
     
     
  • 9.293, Аноним (292), 08:44, 30/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Вот очевидно проявление дремучей невежественности Не сотрудников google, а мене... текст свёрнут, показать
     
  • 2.237, погроммист (?), 17:53, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Плюсовый код 100% unsafe, в проде уже 25 лет -- и ни разу не видел что-бы хоть кто-то заморачивался с его верификацией дальше академико-теоретических кругов.
     

  • 1.14, 21yosenior (?), 12:46, 24/11/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    https://github.com/Speykious/cve-rs - там уб в сейфе, толку валидировать ансейф.
     
     
  • 2.17, Карлос Сношайтилис (ok), 12:58, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ага, со своей версий transmute. Из стандартной библиотеки "не подошла".

    https://github.com/Speykious/cve-rs/blob/main/src/transmute.rs

     
     
  • 3.19, 21yosenior (?), 13:08, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Хоть со своей, хоть с чьей-то ещё. Заявляется безопасность кода на языке, а не либы - подучи логику. Ансейфа нет, проблемы есть.
     
     
  • 4.23, Аноним (45), 13:35, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Кекспертизм опеннетный, аз из Да и то, что для появления проблем т е чтобы най... большой текст свёрнут, показать
     
     
  • 5.26, 21yosenior (?), 13:44, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Всё, ответов не будет? С одного вопроса потеряться - мощно.

    > cve-rs also contains safe reimplementations of
    > safe reimplementations

    Молодец, умножил на ноль тезисы предыдущего героя. Хоть не зря кучу левого мусора спастил.

     
     
  • 6.32, Аноним (45), 14:15, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Всё, ответов не будет? С одного вопроса потеряться - мощно.

    Не суметь прочесть три предложения и сразу перейти к "папа, где море?" - намного уныл^W мощнее.

    >> cve-rs also contains safe reimplementations of
    >> safe reimplementations
    > Молодец, умножил на ноль тезисы предыдущего героя. Хоть не зря кучу левого мусора спастил.

    Молодец, обозвал сигнатуру transmute "левым мусором" и не сумел написать ничего по существу ... зато выдал хороший, объемный выхлоп метана - Газпром гордится тобой!


     
  • 2.53, Прохожий (??), 15:31, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Следует отличать хак, найденный в компиляторе, от намеренного UB в стандарте (sic!) языка программирования. Вы там чуть ниже про логику говорили...
     
     
  • 3.61, Аноним (50), 15:37, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    У раста нет стандарта. Ты с логикой поссорился ещё очень много лет назад.
     
     
  • 4.63, Прохожий (??), 15:39, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Я про стандарты в таких языках, как Си, Си++
     
  • 3.62, Прохожий (??), 15:38, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    ниже ->  ранее
     
     
  • 4.73, Прохожий (??), 15:52, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    21yosenior

    У Rust нет спецификации, но есть RFC. Принципиальной разницы на вижу, как и, например, группа разработчиков Gcc,которые работают над своей версией компилятора.

    Говоря о стандартах, я имел ввиду не Rust, а C, C++.

    Про какое "воровство" вы тут говорите?

     
     
  • 5.85, 21yosenior (?), 16:26, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Про какое "воровство" вы тут говорите?

    Я написал про какое. Приведены противоречия лозунгов("гарантирует" и прочее) с реальностью(никаких гарантий). Что ты мне отвечаешь? - "а вот в сишке уб". Никто не спрашивал тебя про сишку, тебя спрашивали про враньё. Но ты начал прятаться за сишку, пытаясь съехать с темы.

    RFC мусор, который ничего не описывает. Можешь показать мне описание модели памяти в расте. Это принципиальная разница.

     
     
  • 6.240, Прохожий (??), 21:30, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Вы привели просто баг в компиляторе Ничего более Если предположить, что его не... большой текст свёрнут, показать
     
     
  • 7.263, Аноним (263), 12:11, 26/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    >И как же тогда разработчики GCC на основе этого "мусора" решились создать свой компилятор?

    Ну если эти RFC окажутся неясными/неполными, то получится диалект GNU/Rust.

     
     
  • 8.273, Аноним (-), 19:06, 26/11/2024 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 3.70, 21yosenior (?), 15:44, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Покажешь мне стандарт раста. Иди погугли, вернёшься как найдёшь.

    К тому же, в очередной раз заходы уровня "а у вас негров линчуют". Кто-то говорил здесь про сишку и прочие языки? - нет. Но данный пропагандист почему-то начал прятаться за ними.

    Это кстати, фундаментальное свойство. Раст состоит из воровства не только по части семантики/компилятора/рантайма/прочего, но также из воровства обоснований своей состоятельности. То есть без пряток за сишку даже сказать никто не смог, что из себя представляет раст и зачем он нужен.

     
     
  • 4.101, Аноним (-), 17:12, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Это кстати, фундаментальное свойство. Раст состоит из воровства не только по части семантики/компилятора/рантайма/прочего,

    ого, ну у тебя бомбануло!
    а какой компилятор украли?
    его сначала на окалме писали, потом на самом расте..
    даже бекенд на самом расте уже есть

    > но также из воровства обоснований своей состоятельности.

    Ты часом не бухаешь? а то логика как-то хромает.

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

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


     
  • 4.241, Прохожий (??), 21:33, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • –3 +/
    > Покажешь мне стандарт раста. Иди погугли, вернёшься как найдёшь.

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

    Кстати, вас родители не научили, что тыкать незнакомым людям - невежливо? Или вы всё ещё в процессе этой учёбы?

     

  • 1.20, Аноним (20), 13:14, 24/11/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    > Компания Amazon и организация Rust Foundation представили инициативу

    Только один вопрос. Кто им разрешил?

     
     
  • 2.24, nume (ok), 13:41, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    А кто запрещал?
     
  • 2.27, ijuij (?), 13:54, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Хороший вопрос! Иногда кажется, что разрешение не требуется.
     
     
  • 3.39, Аноним (20), 14:40, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Вопрос не праздный. Вспомним Ada, созданный МО. Да, он есть, но связываться с ним как-то не хотелось и не хочется. За Rust также топит МО. И это тоже как бы намекает. Последствия будут, если не сейчас, так потом. Смотреть надо не сиюминутные выгоды, а на перспективу.
    Наверное, лучше остаться на относительно свободном C/C++, в том числе для новых проектов.
     
     
  • 4.71, Прохожий (??), 15:47, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >За Rust также топит МО.

    Но не оно является создателем языка, и не оно создаёт компилятор.

    >И это тоже как бы намекает. Последствия будут, если не сейчас, так потом.

    Например, какие?

    >Наверное, лучше остаться на относительно свободном C/C++, в том числе для новых проектов.

    Группа разработчиков Gcc работает над компилятором Rust, если вы о вендорлоке.

     
     
  • 5.89, Аноним (20), 16:32, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Например, какие?

    Экспортные ограничения.

     
     
  • 6.98, Аноним (98), 17:03, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    МО не занимается вопросами экспорта.
     
     
  • 7.119, Аноним (50), 18:07, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    А ещё она медицинскую помощь нелегальным мигрантам не оказывает. Давай больше бессвязных фактов.
     
  • 7.178, Аноним (178), 06:52, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > МО не занимается вопросами экспорта.

    Безусловно. Вопросами ограничения занимается.

     
  • 6.253, Прохожий (??), 22:46, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Ок. Назовите хотя бы пяток свободных компиляторов C. Заодно назовите страну, где находится исходный код этих компиляторов.
     
  • 5.149, Аноним (13), 22:28, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Группа разработчиков Gcc работает над компилятором Rust

    это фиктивный костылёк чтобы можно было собрать ядро Linux. Полноценный компилятор есть и будет только один под полным контролем корпораций и учитывая что там не GPL тухлый вариант чтобы с ним связываться.

     
     
  • 6.151, Аноним (50), 23:06, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Тем более нет никаких методик как определить что gcc компиль раста работает так же как штатный компиль раста. И на какую именно версию компиля gcc ровняется на 1.10 или 1.20.
     
  • 6.165, Прохожий (??), 02:41, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Вы уже не первый, и, видимо, не последний человек, говорящий про контроль корпораций над чем-то. Хочу вам открыть страшную тайну, только обещайте никому не говорить. Так вот. Все сколь-либо крупные проекты контролируются корпорациями в той или иной степени.

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

     
     
  • 7.174, Аноним (13), 03:29, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    GPL не позволяет закрыть общий код, разве это непонятно Пример Linux - вспотее... большой текст свёрнут, показать
     
     
  • 8.176, Прохожий (??), 03:38, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Похоже, вы не до конца поняли мою мысль Вот был проект X, которым владела корпо... большой текст свёрнут, показать
     
     
  • 9.199, Аноним (13), 11:09, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    это не мысль а подмена понятий, проектом владеет коммерческая компания и даже ес... текст свёрнут, показать
     
     
  • 10.242, Прохожий (??), 21:40, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Где ж тут подмена понятий Каким конкретно проектом владеет коммерческая компани... большой текст свёрнут, показать
     
     
  • 11.243, Прохожий (??), 21:41, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    просто - сложно ... текст свёрнут, показать
     
  • 11.255, Аноним (13), 23:54, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    речь была про GPL, там где вы рассказывали Вот был проект X, которым владела ко... большой текст свёрнут, показать
     
     
  • 12.280, Прохожий (??), 02:00, 27/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Но он открыт И это ваше не позволяет применимо к любому проекту, который прод... большой текст свёрнут, показать
     
     
  • 13.291, Аноним (13), 23:32, 29/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    не надо сказки рассказывать - модуль ядра открыт https github com NVIDIA open-... текст свёрнут, показать
     

     ....большая нить свёрнута, показать (20)

  • 1.38, Аноним (38), 14:37, 24/11/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Как насчет верификации хлама, который cargo тащит из-за бугра?
     
     
  • 2.41, Аноним (126), 14:48, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    В суверенных проектах его использовать нельзя.
     
  • 2.43, Страдивариус (?), 15:06, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Пишите свой хлам, размещайте на госуслугах. Cargo поддерживает такое.
     
     
  • 3.87, Аноним (50), 16:29, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Это ты сейчас смеёшься, а когда всех пересдачи принудителтно на OneScript я на тебя посмотрю.
     
     
  • 4.297, Страдивариус (?), 20:22, 30/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Это ты сейчас смеёшься, а когда всех пересдачи принудителтно на OneScript я
    > на тебя посмотрю.

    А что на меня смотреть-то? Я покинул зону поражения OneScript'ом.Тебе же предлагаю случать "Научно-технический рэп", трек "Язык для славян" )))

     
  • 2.225, Аноним (218), 14:58, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Ещё один человек не осилил поднятие репозитория
     

  • 1.59, Аноним (59), 15:37, 24/11/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Не могу я понять растохейтеров. Впервые появился инструмент, позволяющий безопасно работать с памятью без ГЦ, без потери производительности, а они только критикуют. Самое смешное, что они критикуют Раст за то, что он не спасает от всех ошибок. "Что ж за безопасность, от всего не защищает, поэтому лучше останусь на Си". Логика классная, да, чем получить хоть какую-то защиту, буду шпарить дальше на абсолютно незащищённым Си.
     
     
  • 2.67, Аноним (8), 15:41, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Без какой потери производительности? Тесты посмотри. Магии не бывает.
     
     
  • 3.72, Аноним (45), 15:51, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Без какой потери производительности? Тесты посмотри. Магии не бывает.

    Ну, посмотрел https://benchmarksgame-team.pages.debian.net/benchmarksgame/fastest/rust-gcc.h
    что дальше? "Неправильные тесты, нещитаица!"?

     
     
  • 4.83, Аноним (50), 16:23, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    О да тесты на домене 4го уровня. А самому головой подумать? Или как ты делаешь дополнительную работу не задействуя дополнительных команд процессора?
     
     
  • 5.96, Аноним (-), 16:56, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Э.. на этапе компиляции?

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

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

     
  • 5.99, Аноним (98), 17:06, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > тесты на домене 4го уровня

    Других аргументов, полагаю, нет и не будет.

     
     
  • 6.112, Аноним (50), 17:50, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Читай до полного усвоения https://habr.com/ru/articles/598219/
     
     
  • 7.118, Аноним (45), 18:06, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > Читай до полного усвоения https://habr.com/ru/articles/598219/

    Ты бы сам прочитал, а то вышел неловкий пук в лужу с твоим rustmustdie:
    https://www.opennet.ru/openforum/vsluhforumID3/126424.html#247
    https://www.opennet.ru/openforum/vsluhforumID3/126424.html#270
    Ну, брать дебаг-релиз и сравнивать с gcc-шным выхлопом -O0, как бы уже намекает на уровень (ламерства) ...

     
  • 7.123, Аноним (45), 18:20, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Кстати, вдогонку насчет рантайма и дабы немного подогреть бедных военов а то зи... большой текст свёрнут, показать
     
     
  • 8.133, Анон1110м (?), 20:35, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Они специально так сделали Показуха Нужно смотреть более серьёзные программы ч... текст свёрнут, показать
     
  • 8.136, Аноним (136), 20:48, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    А ты что из своего раста дергаешь наши Сишные сисколы Напиши свои на расте, а п... текст свёрнут, показать
     
     
  • 9.166, Прохожий (??), 02:50, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Типа Rust - это сферический конь в вакууме Или что вы хотели сказать Если срав... текст свёрнут, показать
     
     
  • 10.185, Аноним (50), 08:59, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Тебе намекают что в Раст нет необходимости Есть языки которые делают тоже самое... текст свёрнут, показать
     
     
  • 11.245, Прохожий (??), 21:54, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Ну какой-то недалёкий человек на что-то там намекает Нужно ли мне обращать на э... текст свёрнут, показать
     
  • 8.139, Аноним (50), 21:18, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    В догонку он пишет Смысл статьи на хабре исключительно про то что чтобы раст ... текст свёрнут, показать
     
     
  • 9.144, Аноним (45), 21:38, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    CODE Сама статья короткая, но постулирует довольно большой список спорных утве... большой текст свёрнут, показать
     
     
  • 10.150, Аноним (50), 23:01, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    То что автор героически решил проблемы которые есть и доказывает наличие проблем... текст свёрнут, показать
     
     
  • 11.154, Аноним (45), 23:38, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Конкретный список проблем в студию А то у тебя то скорость , то рантайм - но... текст свёрнут, показать
     
     
  • 12.186, Аноним (50), 09:01, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Ну подумай какая проблема есть у тормозного и небезопасного языка Раст ... текст свёрнут, показать
     
     
  • 13.246, Прохожий (??), 21:58, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Тормозной и небезопасный он только в вашем богатом воображении мягко охарактери... текст свёрнут, показать
     
  • 11.227, Аноним (218), 15:15, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Какие проблемы Вначале сишники над каждым байтом трясутся, использование нулево... текст свёрнут, показать
     
  • 5.102, Аноним (45), 17:13, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > О да тесты на домене 4го уровня.

    О, опоздавший родиться и не слышавший о "The Computer Language Benchmarks Game", зато топящий за сишку? Ну, бывает, особенно у неофитов.

    > А самому головой подумать? Или как ты делаешь дополнительную работу не задействуя дополнительных команд процессора?

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


     
     
  • 6.109, Аноним (126), 17:44, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >зато топящий за сишку? Ну, бывает, особенно у неофитов.

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

     
     
  • 7.114, Аноним (50), 17:54, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Он ещё даже вуз не окончил, а уже пытается умные слова употреблять.
     
     
  • 8.168, Прохожий (??), 02:59, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Хорошо, что вы ВУЗ закончили Плохо то, что это времяпрепровождение прошло для в... текст свёрнут, показать
     
     
  • 9.187, Аноним (50), 09:02, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    По себе судишь не надо так ... текст свёрнут, показать
     
     
  • 10.247, Прохожий (??), 21:59, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Я по себе никогда не сужу Потому что умный и образованный Просто гляжу на ваши... текст свёрнут, показать
     
  • 7.167, Прохожий (??), 02:57, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Придирки к одному единственному слову, игнорируя общий смысл сказанного... Таки он прав в том, что религиозны не программисты на Rust, а программисты на C. И вы - яркий тому пример.
     
  • 7.220, Аноним (218), 14:44, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    >Неофит - новый сторонник какой-либо религии.
    >Новыми можно назвать адептов Rust.

    С чем воевали хейтеры раста, до появляения раста? С хаскелем? Окамлом? Логикой?

     
     
  • 8.296, Аноним (292), 11:15, 30/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    С любыми проявлениями фанатичной религиозности ... текст свёрнут, показать
     
  • 6.111, Аноним (50), 17:50, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Подгонять что угодно под тесты любимая задача для очковтирателей.
     
     
  • 7.115, Аноним (45), 17:57, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Неофит - новый сторонник какой-либо религии.
    > Новыми можно назвать адептов Rust.

    А Воены Супротив Раста - это члены древнего и уважаемого Ордена Защиты Вселенной от Ржавой Угрозы, ага.
    > Без какой потери производительности? Тесты посмотри. Магии не бывает.
    > Подгонять что угодно под тесты любимая задача для очковтирателей.

    А ты самокритичен! Правда, тесты так и не предоставил.

    Ну и не очень понятно, какие именно религиозные обеты не дают написать Военам более правильные тесты на правильных ЯП в Shootout-e?


     
  • 4.193, Аноним (193), 09:45, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    В любой прикладной задаче, где потребуется передать владение каким-либо массивом объектов или их свойств, раст сразу садится а лужу.
     
     
  • 5.221, Аноним (218), 14:48, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    В этом случае есть варианты: отстрелить ногу в ручном управлении памятью, позвать на помощь GC. Интересно, что же выберут сишники?
     
  • 3.219, Аноним (218), 14:42, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • –2 +/
    >Без какой потери производительности? Тесты посмотри. Магии не бывает.

    Про zero cost дремучие люди не слышали?

     
  • 2.170, Аноним (170), 03:02, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Потому что раст не позволяет безопасно работать с памятью и теряет производитель... большой текст свёрнут, показать
     
     
  • 3.173, Аноним (59), 03:21, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • –3 +/
    И что же архаичного в синтаксисе и дизайне Раста Он напротив современен - в нем... большой текст свёрнут, показать
     
     
  • 4.215, Аноним (193), 14:12, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Ну так вставь борроу чекер в GCC, тебе же никто не мешает. И раст сразу становится ненужон.
     
     
  • 5.258, Аноним (218), 10:01, 26/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Только вот кода под этот самый gcc с борроу чекером нет и не будет.
     
  • 3.175, Прохожий (??), 03:33, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Проверка работы с памятью проводится на этапе компиляции, а не на этапе выполнен... большой текст свёрнут, показать
     
     
  • 4.216, Аноним (193), 14:14, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Всяк кулик своё болото хвалит. Вакансии есть? Нет. Лесом.
     
     
  • 5.248, Прохожий (??), 22:03, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Вобще-то есть. Кто ищёт, тот найдёт. Это первое. Второе. Надо не только на вакансии смотреть, а ещё нравится ли лично вам тот или иной язык программирования. Если не нравится, а вы бегаете исключительно за зарплатой (никакого удовольствия от работы), мне вас искренне жаль. Очень быстро спалите свою психику, лимбическая система не выдержит.
     
  • 3.222, Аноним (218), 14:52, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    >Ну тогда или нужно смотреть на самом деле безопасные и верифицируемые языки вроде хаскеля

    Из всех типизированных функциональных языков вы выбрали один из самых неповоротливых.
    >или на управляемые вроде питона

    Спасибо, не надо
    >или джавы

    На чём реализовать саму джаву? А операционную систему для джавы?
    >и стараться писать безопасные программы на быстрых языках вроде того же си/на ассемблере

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

     
  • 3.223, Аноним (218), 14:53, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    >Ну тогда или нужно смотреть на самом деле безопасные и верифицируемые языки вроде хаскеля

    Из всех типизированных функциональных языков вы выбрали один из самых неповоротливых.
    >или на управляемые вроде питона

    Спасибо, не надо
    >или джавы

    На чём реализовать саму джаву? А операционную систему для джавы?
    >и стараться писать безопасные программы на быстрых языках вроде того же си/на ассемблере

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

     
  • 2.207, xPhoenix (ok), 12:46, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Это люди из анекдота про реку с пираньями и мост с надёжностью "всего лишь" в 99,99%.
     
     
  • 3.214, Аноним (193), 14:08, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Просто не правильно рассчитывали вероятность. Правильно было: или сломается, или нет, т.е. 50%
     
  • 2.265, anonymmmeer (?), 12:23, 26/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    >Впервые

    звездёшь

    >позволяющий безопасно

    снова звездёшь

    >без потери производительности,

    опять звездёшь

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

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

     
     
  • 3.274, Аноним (59), 21:24, 26/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Где ж маркетинг, если это всё очевидности. Си - вообще не даёт никаких защит, а тут борроу чекер. Если вы не разбираетесь, не надо комментировать с умным видом про "пойманных на маркетинг"
     
     
  • 4.286, anonymmmeer (?), 13:45, 27/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    >Си - вообще не даёт никаких защит, а тут борроу чекер.

    не даёт из коробки, это как gdb не часть vim.

    но если надо есть frama-c, а если это слишком много, то есть статический анализатор или просто более сильные флаги компилятора.

    Все защиты есть, просто это не IDE поставить с плагинами и делать вид, что это и есть профессионализм.
    У товарища Дейкстры IDE не было, но профессионалом он был.

    p.s. C язык высокого уровня, вот в ассемблере защит и правда нет.

     

     ....большая нить свёрнута, показать (48)

  • 1.107, Аноним (-), 17:40, 24/11/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    >За последние три года в библиотеке было выявлено 57 проблем с корректностью работы, из которых 20 были помечены как уязвимости.

    Кто тут говорил, что Раст безопасен?

     
     
  • 2.113, Аноним (50), 17:53, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Раст небезопасен там есть unsafe
     
     
  • 3.172, Прохожий (??), 03:06, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    В данном случае следовало бы сказать, что не Rust, а некоторые библиотечные функции.
     
     
  • 4.183, Аноним (50), 08:55, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    На безопасном языке невозможно написать небезопасную библиотеку. Головой поработай чутка.
     
     
  • 5.249, Прохожий (??), 22:13, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Да, можно. Но это будет осознанный поступок в отличие от кода на Си, где вы даже не заметите, как на очередную мину наступите, а потом, когда это выстрелит в проде, потратите ещё кучу времени на поиск бага.
     
  • 5.272, Аноним (263), 17:53, 26/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Тонко ;)
     
     
  • 6.279, Прохожий (??), 01:54, 27/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Здесь более подходит слово "глупо".
     
  • 5.278, Прохожий (??), 01:53, 27/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > На безопасном языке невозможно написать небезопасную библиотеку.

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

     
  • 2.171, Прохожий (??), 03:05, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Я говорил. Но всегда уточнял, что безопасность касается только типовых ошибок работы с памятью, а не вобще всех на свете, от которых может спасти только формальная верификация, как здесь уже отмечали. Однако эта верификация - процесс медленный, очень дорогой, и поэтому далеко не всегда целесообразный.
     
     
  • 3.184, Аноним (50), 08:57, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Go тоже безопасность от типовых ошибок.
     
     
  • 4.244, Прохожий (??), 21:43, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ну вот зачем вы продолжаете из сообщения в сообщение демонстрировать дремучее невежество? Код на Go будет более тормознутым и непредсказуемым в плане производительности по сравнению с кодом на Rust. Потому что в Go используется сборщик мусора. А в Rust его нет.
     

  • 1.130, Bottle (?), 20:00, 24/11/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А толку, если у язычка нет спецификации? Он небезопасен by design, парадоксально, но даже Си безопаснее, потому что минимальная работа по стандартизации проведена.
     
     
  • 2.134, Аноним (-), 20:39, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Это вы про тот стандарт, которым подтираются (-fno-strict-aliasing) чтобы собрать ядро linux?
     
     
  • 3.210, Bottle (?), 13:15, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Я сам терпеть не могу Си, но, в отличие от Rust, он имеет несколько относительно взаимозаменяемых реализаций.
    Если что-то плохое случится с разработкой компилятора Rust (например, крупный слом обратной совместимости), это затронет всех разработчиков на Rust.
     
     
  • 4.211, Аноним (-), 13:25, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Я сам терпеть не могу Си, но, в отличие от Rust, он имеет несколько относительно взаимозаменяемых реализаций.

    У раста тоже есть несколько компиляторов.

    > Если что-то плохое случится с разработкой компилятора Rust (например, крупный слом обратной совместимости), это затронет всех разработчиков на Rust.

    Это как?
    У них есть Edition в которых как раз фиксируются изменения ломающие совместимость.
    Т.е можно указать Edition-2018 и спокойно писать.

    А если завтра в С29 сломают? То что будет?
    Точно так же зафиксируется версия языка в проекте и всё, проблем быть не должно.

     
  • 4.226, Аноним (218), 15:01, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    >Я сам терпеть не могу Си, но, в отличие от Rust, он имеет несколько относительно взаимозаменяемых реализаций.

    И каких же? А то целые новости "$проект теперь можно собирать llvm"!
    >Если что-то плохое случится с разработкой компилятора Rust (например, крупный слом обратной совместимости), это затронет всех разработчиков на Rust.

    А что же будет в си в этом случае? Опять нельзя будет проект собирать любым компилятором?

     
  • 4.233, Анонимусс (-), 17:20, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > несколько относительно взаимозаменяемых реализаций.

    Ну есть. А толку?
    Вот потратили N человеколет на то, чтобы ядро компилировалось еще хотя бы чем-то кроме gcc. Отличный пример взаимозаменяемости. А напр. хромиум достаточно долго не компилился gcc10, пока это тоже не исправили.

    > Если что-то плохое случится с разработкой компилятора Rust

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

    > крупный слом обратной совместимости

    У раста как раз с обратной совместимостью все лучше чем у си и с++.

     
  • 2.138, Аноним (45), 21:18, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > А толку, если у язычка нет спецификации? Он небезопасен by design, парадоксально,
    > но даже Си безопаснее, потому что минимальная работа по стандартизации проведена.

    Это да, поэтому минимальный код для сложения знаковых чисел _по_стандарту_:
    [CODE]

    #include <limits.h>

    void f(signed int si_a, signed int si_b) {
      signed int sum;
      if (((si_b > 0) && (si_a > (INT_MAX - si_b))) ||
          ((si_b < 0) && (si_a < (INT_MIN - si_b)))) {
        /* Handle error */
      } else {
        sum = si_a + si_b;
      }
      /* ... */
    }[/CODE]
    красота, че!


     
     
  • 3.141, Аноним (50), 21:31, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Как это оптимизировать чтобы код выполнялся за минимальное количество тактов? Да никак код или быстрый или безопасный или рыжая морда опять звездит.
     
     
  • 4.145, Аноним (-), 21:44, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > код или быстрый или безопасный или ...

    поведение просто определеной и у тебя не будет UB.
    А просто будет two's complement wrapping.

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

     
  • 4.147, Аноним (45), 22:17, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Как это оптимизировать чтобы код выполнялся за минимальное количество тактов?
    > Да никак код или быстрый или безопасный или рыжая морда опять звездит.

    Ну, с высоты опеннетных, совсем не палящихся кекспердов-теоретиков все может быть.
    А так-то:
    [CODE]
    if (__builtin_sadd_overflow(si_a, si_b, &sum))
    [/CODE]
    и будет из всех проверок на (не очень экзотических) платформах условный JO/BVS, вместо вон того вон.
    Работает в шланге, gcc и icc - ну это кому шашечки.

     
  • 4.230, Аноним (218), 15:24, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    С помощью зависимых типов, очевидно же. Но сишники же про типизацию не слышали, у них везде void*
     
  • 3.235, Ну блин (?), 17:40, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    На уровне ассемблера и регистров процессора, сложение двух 32-битовых регистров со значениями 0x7FFFFFFF тоже приведёт к переполнению. Вот только процессор об этом явно скажет флагом, а ЯВУ этот факт от программиста сознательно прячут.
    Вот и рождаются такие монстры "сложения по стандарту"
     
  • 2.143, Аноним (-), 21:34, 24/11/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > но даже Си безопаснее

    Си дыряв прям по его убогому недостандарту. Потому что назвать, да и еще и хвастаться, стандартом то, в чем 193 UB - это просто плевок в лицо всем стандартизаторам
    gist.github.com/Earnestly/7c903f481ff9d29a3dd1

    При этом в safe расте нет UB. При том что у него нет "коммитетского" стандарта, а набор RFC.
    rust-lang.github.io/rfcs/

    В unsafe есть немного UB, из-за необходимости взамодействия с другими языками, в том числе и с мерзопакостной. doc.rust-lang.org/reference/behavior-considered-undefined.html

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

     
     
  • 3.212, Аноним (13), 13:52, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > При этом в safe расте нет UB.

    в safe C тоже

     
     
  • 4.217, Аноним (-), 14:18, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    >> При этом в safe расте нет UB.
    > в safe C тоже

    А что это за "safe C"?
    Я в стандарте такого не читал.
    Оно вообще релизнулось?

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


     
     
  • 5.228, Аноним (13), 15:17, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Я в стандарте такого не читал.

    можешь курсы пройти

    https://ldra.com

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

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

     
     
  • 6.229, Аноним (-), 15:23, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    >> Я в стандарте такого не читал.
    > можешь курсы пройти
    > https://ldra.com

    Курсы мисры? Спасибо за совет)
    Насколько я помню все "рекомендации" не являются обязательными к исполнению.

    Я открыл ISO/IEC 9899:2011 и там нет ничего про "safe c"

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

    Я на расте не пишу, пусть другие делают.
    И кстати у них получается - видеодрайвер для M это достаточно низкоуровнево?
    Или прошивки для вольво или рено?

     
     
  • 7.231, Аноним (13), 15:33, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > видеодрайвер для M это достаточно низкоуровнево?

    да, но когда напишут ещё безопасно - приходи

    https://www.khronos.org/vulkansc

    > Или прошивки для вольво или рено?

    не в курсе что там но машинки их не особо ценятся на рынке

     
     
  • 8.232, Аноним (-), 15:56, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Если чуваков устраивает МИСРА без ISO стандарта, то ок Если кому-то захочится б... текст свёрнут, показать
     

  • 1.153, Аноним (153), 23:19, 24/11/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Сапожник то без сапог!
     
  • 1.181, Аноним55 (?), 08:08, 25/11/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Предполагаю, что истинной целью проекта Rust является отвлечение ресурсов потенциальных конкурентов на изучение бесперспективного проекта и бессмысленные дискуссии. Это известные действия, и в науке даже имеют специальный термин - "троянское обучение".
     
     
  • 2.182, Аноним (50), 08:52, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Да методичку по саботажу никто пока что не менял и не исправлял.
     
     
  • 3.190, Аноним (-), 09:28, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Да методичку по саботажу никто пока что не менял и не исправлял.

    А откуда у вас информация, что методичку не поменяли?
    Палитесь, товарищ!

     
  • 2.192, Аноним (193), 09:41, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Вы не понимаете, это всё - борьба с безработицей. Так же как и крипта.
     
  • 2.250, Прохожий (??), 22:20, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • –2 +/
    У вас предполагалка сломалась. Раст восстребован: Гугл, Амазон, Дискорд, Дропбокс, Клаудфлэр - все эти фирмы используют Раст, а скоро ожидается и в ядре Линукса (хотя это и находит определённое сопротивление некоторых дедов, которые уже просто не могут).

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

     
     
  • 3.260, Аноним (178), 11:32, 26/11/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Критиковать легко. А что вы лично предлагаете?
     
     
  • 4.267, Прохожий (??), 13:39, 26/11/2024 [^] [^^] [^^^] [ответить]  
  • –2 +/
    А предлагаю следующее. Всем притормозить инновации и начать переписывать имеющиеся проекты на Раст. Пусть вы потратите на это десять лет и разгоните опытных программистов, которые не хотят изучать это фуфло. Потому что
    > Гугл, Амазон, Дискорд, Дропбокс, Клаудфлэр - все эти фирмы используют Раст
     
     
  • 5.276, Прохожий (??), 01:43, 27/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Под инноовациями понимается очередная порция CVE-шек, которые потом не один деся... большой текст свёрнут, показать
     
  • 5.281, Прохожий (??), 02:14, 27/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Потому что
    >> Гугл, Амазон, Дискорд, Дропбокс, Клаудфлэр - все эти фирмы используют Раст

    Что плохого в том, что перенимать положительный опыт у лидеров в сфере разработке ПО?

     
  • 4.275, Прохожий (??), 01:37, 27/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Предлагаю использовать Rust в новых проектах вместо морально устаревшего C, например. Ну и вообще там, где требуется высокая производительность.
     
     
  • 5.283, Прохожий (??), 07:49, 27/11/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Прости, коллеги, я тут немного сам с собой спорю. Это не потому что не с кем, а потому что с умными людьми приятно и поспорить.
     
     
  • 6.289, Аноним (263), 20:02, 27/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Самомнение-с зашкаливает
     

  • 1.191, Аноним (191), 09:37, 25/11/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    >в 7500 встречаются блоки кода, выполняемые в контексте "unsafe". За последние три года в библиотеке было выявлено 57 проблем с корректностью работы, из которых 20 были помечены как уязвимости.

    Такая вот безопасТная безопасность ;)

     
  • 1.194, Сергей (??), 09:49, 25/11/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Я правильно понимаю, обнаружив уязвимость в единственой библиотечке RUST, я поимею доступ ко всему, что создано на RUST
     
     
  • 2.195, Нонон (?), 10:36, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Это должна быть как минимум популярная библиотека. А чем популярнее библиотека тем более умные люди там пишут. И вряд ли будут косячить в блоках unsafe. Нали блоки unsafe им в принципе надо

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

     
     
  • 3.203, keydon (ok), 12:10, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > А чем популярнее библиотека тем более умные люди там пишут

    Сильное утверждение, проверять я ее конечно не буду

     
  • 2.204, Аноним (193), 12:20, 25/11/2024 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 2.251, Прохожий (??), 22:25, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Стесняюсь спросить, вы вообще программировали когда-нибудь в своей жизни? Потому что судя по задаваемому вопросу, вы или очень далеки от этой темы, или беспросветно глупы.
     
     
  • 3.257, Аноним (8), 01:44, 26/11/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    В каждой бочке затычка. Люди пишут своё мнение. У тебя чтоли разрешение спрашивать?
     
     
  • 4.261, Аноним (178), 11:34, 26/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Он знает про ядро. Опытный собеседник.
     
     
  • 5.271, Аноним (263), 17:46, 26/11/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Про существование такой штуки, как ядро.
     
  • 4.277, Прохожий (??), 01:47, 27/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Подобные вопросы выглядят как очень и очень тупой троллинг. Мне НЕ нравится такой стиль общения. И я по этому поводу написал своё мнение. Вы, как будто, не против, чтобы каждый высказывал своё мнение, да?
     
  • 2.268, Аноним (218), 14:06, 26/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Нет, поскольку не все программы используют эту библиотеку, кроме того, у библиотек разные версии
     

  • 1.238, Аноним (238), 18:44, 25/11/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    почему было изначально вместо rust'а с unsafe не сделать блок safe в уже всем известных сях?
     
     
  • 2.239, Аноним (-), 19:02, 25/11/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    потому что 1 Последние лет пять а может и дольше я слышал только то, что доп... большой текст свёрнут, показать
     
     
  • 3.269, Аноним (263), 17:40, 26/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    >3. Скорее всего это будут принимать в стандарт лет 10 - а это вторая священная корова, для любителей небезопасных языков.

    Вот в этот -std=gnu2xyz сами разработчики компилятора это могут добавить, не дожидаясь официального стандарта.

     
  • 2.259, Аноним (218), 10:02, 26/11/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    У сишников было лет пятьдесят, и никаких подвижек в этом направлении нет. Так ещё лет двадцать пройдёт, и ничего не изменится
     
  • 2.290, ы (?), 18:16, 28/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Вообще люди, работающие с Си, давно для этого по-максимуму используют встроенные проверки в компилятор, которых с каждым годом становится всё больше (и обязательно собирают с -Werror, чтобы посильнее по рукам било). Используют статические анализаторы, используют определённый code style и делают code review не для галочки. И у них прекрасно получается писать вполне себе safe код. Поэтому проблема в Си чисто организационная - кто-то хочет писать грамотный и корректный код, а кто-то хочет поскорее выкатить версию.
     

  • 1.282, Прохожий (??), 02:21, 27/11/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Мда. Вместо обсуждения реальных проблем языка Rust и возможных способов их преодоления люди склонны заниматься всяким словоблудием и тупым троллингом.

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

    В итоге, вместо полезного обмена опытом получаем перепалку на тему "Rust не нужен, потому что я его не осилил".

    Беда, печаль.

     
     
  • 2.284, Прохожий (??), 10:11, 27/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Чтобы знать о реальных проблемах этого языка программирования, надо же вначале хоть что-то прочитать о нём. А это уже гораздо сложнее для когнитивных возможностей некоторых высказывающихся. Я тоже программировать как-то не сильно. Но
    > заниматься всяким словоблудием и тупым троллингом

    люблю.
    И это подтверждает мою т.з.

     
  • 2.285, Аноним (193), 12:56, 27/11/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Домыслы. На другое когнитивных способностей не хватает.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



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

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