The OpenNET Project / Index page

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

Первый стабильный выпуск Arti, официальной реализации Tor на языке Rust

03.09.2022 09:40

Разработчики анонимной сети Tor сформировали первый стабильный выпуск (1.0.0) проекта Arti, развивающего Tor-клиент, написанный на языке Rust. Выпуск 1.0 отмечен как пригодный для использования обычными пользователями и обеспечивающий тот же уровень конфиденциальности, юзабилити и стабильности, что и основная реализация на языке Си. Стабилизирован также API, предлагаемый для использования функциональности Arti в других приложениях. Код распространяется под лицензиями Apache 2.0 и MIT.

В отличие от реализации на Си, которая вначале была спроектирована как SOCKS-прокси, а уже потом подогнана под другие потребности, Arti изначально развивается в форме модульной встраиваемой библиотеки, которую смогут использовать различные приложения. Кроме того, при разработке нового проекта учитывается весь прошлый опыт разработки Tor, что позволяет избежать известных архитектурных проблем, сделать проект более модульным и эффективным.

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

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

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

Выпуск 1.0 в основном сосредоточен на базовой работе в роли клиента. В версии 1.1 планируется реализовать поддержку подключаемого транспорта и бриджей для обхода блокировок. В версии 1.2 ожидается поддержка onion-сервисов и сопутствующих возможностей, таких как протокол управления перегрузкой (RTT Congestion Control) и средства защиты от DDoS-атак. Достижение паритета с клиентом на языке Си намечено в ветке 2.0, в которой также будут предложены привязки для использования Arti в коде на различных языках программирования.

В течение следующих нескольких лет работа будет направлена на реализацию функциональности, необходимой для работы релеев и серверов директорий. Когда код на Rust достигнет уровня, способного полностью заменить вариант на Си, разработчики намерены придать Arti статус основной реализации Tor и прекратить сопровождение реализации на Си. Поддержка версии на языке Си будет прекращена постепенно с предоставлением возможности плавной миграции.

  1. Главная ссылка к новости (https://blog.torproject.org/ar...)
  2. OpenNews: Выпуск Arti 0.2.0, официальной реализации Tor на языке Rust
  3. OpenNews: Первый бета-выпуск Arti, реализации Tor на языке Rust
  4. OpenNews: Проект Tor опубликовал Arti 0.0.3, реализацию клиента Tor на языке Rust
  5. OpenNews: Выпуск новой стабильной ветки Tor 0.4.7
  6. OpenNews: Представлена реализация Tor на языке Rust, которая в будущем заменит вариант на Си
Лицензия: CC-BY
Тип: Программы
Короткая ссылка: https://opennet.ru/57723-arti
Ключевые слова: arti, tor, rust
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (282) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, рукоблуд импортный (?), 10:34, 03/09/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +6 +/
    раст на си писали
     
     
  • 2.4, Аноним (4), 10:41, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +13 +/
    Вообще-то нет. На OCaml. Но потом заселфхостили и переписали на расте.
     
     
  • 3.13, Аноним (13), 11:23, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    вообще-то да, ocalm написан на си, как и llvm
     
     
  • 4.27, Аноним (27), 11:44, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +10 +/
    Логическая ошибка. Раст написан на раст. Чтобы прийти к утверждению, что "раст  раньше был написан на ocaml, который написан на С, поэтому раст сейчас написан на С" нужно очень сильно удариться головой.

    Если бы у рыбы была шерсть, то в ней бы водились блохи, ага.

     
     
  • 5.39, Аноним (13), 11:55, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • –4 +/
    рад, что ты признал свою неправоту и то, что раст написан на си
     
     
  • 6.48, Аноним (48), 12:04, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ну скинь код раста, написанный на С, поржом. Сумеешь отличить?)
     
     
  • 7.127, Аноним (127), 17:26, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • –4 +/
    https://github.com/thepowersgang/mrustc
     
     
  • 8.190, pincher2012 (ok), 00:31, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Странно, а в описании написано что он на C ... текст свёрнут, показать
     
  • 5.150, Аноним (-), 21:00, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > Логическая ошибка. Раст написан на раст.

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

     
     
  • 6.152, Аноним (-), 21:07, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    >> Логическая ошибка. Раст написан на раст.
    > Особенно вон тот LLVMный кодогенератор *пуууук-пуук-пук*

    https://github.com/bjorn3/rustc_codegen_cranelift
    > Cranelift codegen backend for rust
    >  Rust 97.2%  Shell 2.8%

    Попробуй еще раз, громче


     
     
  • 7.272, Аноним (-), 21:04, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > https://github.com/bjorn3/rustc_codegen_cranelift

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

     
     
  • 8.324, Аноним (-), 22:47, 05/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    https hacks mozilla org 2020 10 a-new-backend-for-cranelift-part-1-instruction... большой текст свёрнут, показать
     
     
  • 9.333, Аноним (-), 01:06, 06/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    А таки референсный хруст генерит код плюсовым LLVM Хоть там как тасуй, а факты ... текст свёрнут, показать
     
  • 4.50, Аноним (50), 12:06, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    OCaml не написан на си, звиняй.
     
     
  • 5.56, funny.falcon (?), 12:31, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    А на чём?

    Ну, с одной стороны ты прав: большая часть компилятора на Ocaml.

    С другой - нет: большая часть рантайма и байт-код интерпретатор на C.

     
     
  • 6.111, n00by (ok), 15:13, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    А я бы посмотрел, как интерпретатор перепишут на безопасном языке. В текущей реализации читается файл байт-кода, для каждого опкода вычисляется адрес машинной команды соответствующей метки case и переписывается поверх опкода. При исполнении выполняется нестандартный для Си goto *ptr. Ну или оптимизация switch не производится, тогда работает медленнее.
     
     
  • 7.151, Аноним (-), 21:01, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Переписать можно хоть на брейнфаке, другой вопрос кому это будет потом нужно.
     
     
  • 8.215, n00by (ok), 07:50, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Я переписал на ассемблере AMD64, сравнил производительность с оригиналом, теперь... текст свёрнут, показать
     
     
  • 9.273, Аноним (273), 21:12, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Про производительность никто и не говорил Технически, даже питонист позорный мо... текст свёрнут, показать
     
     
  • 10.300, n00by (ok), 13:26, 05/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Так в производительности ВМ вся соль Не понятно, как на Rust без unsafe добитьс... текст свёрнут, показать
     
     
  • 11.325, Аноним (325), 23:36, 05/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Лучшая VM - ее отсутствие Хрустики это поняли, как и сишники А в чем собственн... большой текст свёрнут, показать
     
     
  • 12.335, n00by (ok), 09:43, 06/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Тут ветка про OCaml Там есть и компилятор в машинный код, но и интерпретатор ос... текст свёрнут, показать
     
  • 4.142, Аноним (-), 20:31, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > вообще-то да, ocalm написан на си, как и llvm

    Вообще-то, раст написан на питоне. Пруф:
    https://github.com/ShivamSarodia/ShivyC
    > C compiler created in Python.

     
     
  • 5.274, Аноним (273), 21:13, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    В названии опечаточка, там ShittyC конечно же должно быть.
     
  • 3.214, Аноним (214), 06:27, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Это называется "забутстрапили".
     
  • 2.49, Аноним (50), 12:05, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Си не написан на си. Все три популярных компилятора (gcc, clang, msvc) написаны на C++.

    Где теперь твой бог?

     
     
  • 3.57, funny.falcon (?), 12:35, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Но есть и компиляторы, написанные на C. Как минимум, tcc. Да и старые версии gcc в принципе ещё можно использовать.

    А ещё есть компилятор, написанный на scheme. Его написали в паре с простым интерпретатором scheme на C, чтобы обеспечить бутстрап языка C не зависимый от «больших» реализаций.

     
     
  • 4.76, Прохожий (??), 13:16, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > Да и старые версии gcc в принципе ещё можно использовать.

    А ещё можно плакать, страдать, но продолжать давиться кактусами, как те мышки. Но зачем?

     
  • 4.159, Аноним (50), 22:18, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Столлман написал первые версии gcc на Паскале.
     
  • 4.174, Аноним (-), 23:32, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > Но есть и компиляторы, написанные на C. Как минимум, tcc. Да и
    > старые версии gcc в принципе ещё можно использовать.
    > А ещё есть компилятор, написанный на scheme.

    Но почему-то почти все пользуются софтом, собранным gcc/clang/msvc, нэ?

     
     
  • 5.176, Аноним (176), 23:36, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    В gcc большая часть кодовой базы, внезапно, си. Но вообще для сишника плюсы подучить так то логично было бы, чтобы сочетать высокоуровневые конструкции с мощью низкоуровневого доступа сей. Хрустики это тоже пытаются, но сказать что у них получилось менее коряво чем у плюсеров - да, пожалуй, спорно. Единственное что у них реально хорошо это borrow checker. Остальное смесь корпоративного булшита и грабель.
     
     
  • 6.181, Аноним (-), 23:45, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > В gcc большая часть кодовой базы, внезапно, си.

    И поэтому плюсовая часть "не считается", ясно понятно.

    > Хрустики это тоже пытаются, но сказать что у них получилось менее коряво чем у плюсеров - да,
    > пожалуй, спорно. Единственное что у них реально хорошо это borrow checker.
    > Остальное смесь корпоративного булшита и грабель.

    Какой великолепный, эталонный опеннетный онализ, с подробным сравнением, перечислением и разбором конкретных недостатков </сарказм>

     
     
  • 7.186, Аноним (186), 00:25, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Есть некоторая разница между "плюсовой частью" и "написано на плюсах". Хотя так то удобно не заметить 90+% сей и выпятить кусочки плюсоты. Почему-то пытаясь троллить сишников этим фактом. Очень странная идея, на сях там больше чем на плюсах, сильно больше. Так что сказать что оно на плюсах было бы вообще некорректно. На смеси сей и плюсов.
     
  • 4.175, Аноним (176), 23:33, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +3 +/
    GCС по сей день написан "в основном на си". А до 4.5, чтоли, там только си и был, потом плюсы разрешили юзать. Умеренно весьма.
     
  • 3.66, Дед (??), 12:47, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Ну на самом деле изначально компиляторы писали на тумблерах, потом, машинные коды, потом ассемблер, потом кросс ассемблер, потом Си, потом кросс Си, и уже потом все остальное
    *ворчит по дедовски
     
     
  • 4.68, Дед (??), 12:58, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Причем никто никогда не писал компиляторов на fortran, algol, cobol, ada, ну разве что в качестве учебных вещей. Потому что это мертвеые языки как и java, python и многое другое
     
     
  • 5.74, Вася (??), 13:11, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    фига се мертвые - Python в научном сообществе стандарт, на Джаве андроиды размовляют...
     
     
  • 6.82, Прохожий (??), 13:28, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    При всей мегапопулярности Питона и Джавы нельзя не отметить, что эти два языка далеки от идеала и должны умереть, чем раньше, тем лучше. Первый - из-за тормознутости и убогости языковых средств (ни ООП, ни ФП нельзя считать сколь-либо адекватной реализацией в Питоне пока что, увы). Второй - из-за громоздкости рантайма. То, что Джава в ОС Андроид основной ЯП - это жирный минус для последней:  там, где конкурент легко обходится 4 гигами ОЗУ, Андроиду подавай 8 или даже 12 при прочих равных. Хотя нет, ещё следует отметить плохую отзывчивость программ на Андроиде по сравнению с конкурентом (роликов на Ютьюбе на эту тему навалом).
     
     
  • 7.165, Аноним (165), 22:58, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    У всех языков и технологий есть свои преимущества и недостатки в конкретных обла... большой текст свёрнут, показать
     
     
  • 8.222, Прохожий (??), 10:40, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Я бы назвал это от безысходности, а не заслуженно ... текст свёрнут, показать
     
  • 6.177, Аноним (176), 23:37, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Как угодно но на питоне только лабораторные макеты и имеют смысл. Остальное на нем получается... ну вот как лабораторный макет, кишками наружу и без корпуса, зато за час свинтили из того что было под рукой.
     
  • 5.129, Аноним (129), 17:32, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ну то, что на Ada не писали компиляторов, очень сомнительно. Да и на Algol тоже. В своё время, Algol был, вполне себе, универсальным ЯП.
     
     
  • 6.135, Дед (??), 19:22, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    https://en.wikipedia.org/wiki/List_of_compilers
    как найешь что то коммерческое на ada или algol сообщи научной обществености, а то мужики то незнают
     
  • 5.134, pavlinux (ok), 18:47, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Ada жива и процветает в сферах, куда вам, говнокодерам, путь закрыт.
    ГОСТ 27831-88, ISO 8652-87 и MIL-STD-1815 никто не отменял.
     
     
  • 6.145, Аноним (-), 20:46, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    на чём взяли тебя?
     
  • 6.164, Михрютка (ok), 22:57, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    товарищ, тут вон давеча уже объяснили, что ГОСТ - поповское^Wэфесбешное слово. а вы еще какими-то исо и мил-стандартами кидаетесь. может вы того, засланный? и цифры какие-то после ГОСТ, не удивлюсь, если вы тайно посещаете товарища майора.
     
  • 6.178, Аноним (-), 23:38, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    На сях таки и под примерно вон то самое пишут. На хрусте - они бы хотели, наверное, но у них все слишком волатильно даже для рекомендаций как кодать используя их нечто не прострелив себе пятки.
     
  • 2.67, ranen (?), 12:53, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    когда-то все было дыркой на перфокарте.
     
     
  • 3.97, n00by (ok), 14:24, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Дрыка - это такая квазичастица, что бы уйти от отрицательного заряда электрона в расчётах. А в перфокартах - отверстия.
     
     
  • 4.115, ranen (?), 15:26, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Слово дырка может иметь очень много различных значений. Я применил его в прямом значении. Ваш синоним в данном контексте сужает значение моего высказывания.
     
     
  • 5.124, n00by (ok), 16:59, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Отверстие делает человек, а дырки случаются сами собой. Это упрощенно, если не углубляться в детали с тем Аноном выше. =)
     
     
  • 6.133, ranen (?), 18:32, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    "дырки случаются сами собой" - наверно их создал Бог.
     
  • 4.187, Аноним (186), 00:27, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > Дрыка - это такая квазичастица

    Экие вы абстракционисты-эксгибиционисты затейники...

     
  • 3.309, Брат Анон (ok), 14:59, 05/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Дырка пробивается случайно. А на перфокарте -- отверстие.
     
     
  • 4.320, ranen (?), 18:08, 05/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    толковый словарь Вам в помощь.
     
  • 2.205, Аноним (205), 01:47, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Девочки, узбагойтесь. Всё написано на ассемблере.
     
  • 2.207, freehck (ok), 04:30, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > раст на си писали

    Даже если бы это было так: какая, извините, разница?

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

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

     

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

  • 1.3, Урри (ok), 10:37, 03/09/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +5 +/
    Это новость об Arti или о Rust?

    Три абзаца про арти, четыре про раст.

     
     
  • 2.9, Аноним (9), 10:46, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    В оригинале еще больше расписано.
     
  • 2.35, Аноним (35), 11:52, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Это новость о переписывании всего на раст. Есть такое хайповое движение, называется Rewrite everything in Rust.
     
     
  • 3.75, Прохожий (??), 13:14, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +6 +/
    Это не хайповое движение. Это жестокая необходимость, увы, в силу дырявости программ на морально устаревшем языке C, с которой ничего не могут поделать ни стилистика программирования, ни санитайзеры, ни линтеры, ни прочие ухищрения, придуманные люди. Как было 70% ошибок некорректной работы с памятью, так и остаётся эта печальная статистика для более-менее крупных проектов (понятно, что в программах уровня hello world тяжело напортачить).
     
     
  • 4.92, Аноним (92), 14:04, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    FF пытались переписать - не получилось.
     
     
  • 5.98, Аноним (98), 14:24, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    В мазилле распил бабла и сокращение разработчиков, им не до переписывания.
     
     
  • 6.183, Аноним (-), 23:54, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    А кто и что простите на хрусте вообще смог? А, через сколько там лет камасутры, вот, написали сильно обкоцаный вариант тора, не умеющий практически ничего из того что нужно для реального применения, зато пафоса развели - на десять версий обычного тора хватит.
     
     
  • 7.185, Аноним (-), 00:04, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >> Arti 0.0.1 — 29 Oct 2021
    > А, через сколько там лет камасутры,

    Эталонный опеннетный онализ ...
    > зато пафоса развели - на десять версий обычного тора хватит.

    Пафос и ЧСВ местных анонимов-знатоков-онализаторо наверное на миллион версий потянет, правда предъявить они не могут ни одной. Почему-то.

     
     
  • 8.188, Аноним (186), 00:29, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    До 0 0 1 видите ли там потуги были еще лет пять до этого, просто не работало воо... текст свёрнут, показать
     
     
  • 9.194, Аноним (-), 00:39, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Да сразу 20, чо уж мелочиться ... текст свёрнут, показать
     
     
  • 10.198, Аноним (-), 00:50, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Можно посмотреть по комитам сколько там rust в дире основного дерева болтался Е... текст свёрнут, показать
     
     
  • 11.202, Аноним (-), 01:01, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Можно правда, очередной опеннетный анализ сказки про время разработки и 90 с... текст свёрнут, показать
     
  • 11.209, freehck (ok), 04:47, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Можно Вот иди, поройся в коммитах и предоставь людям ссылку на обоснование свое... текст свёрнут, показать
     
  • 9.210, freehck (ok), 05:06, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Первый коммит в Arti 7 мая 2020го, 1605 строк Минимальные наработки, явно черн... текст свёрнут, показать
     
     
  • 10.275, Аноним (273), 21:17, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    А там сначала дира rust была прямо в основном дереве сишной Впрочем, с такого э... текст свёрнут, показать
     
     
  • 11.291, Аноним (-), 23:43, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Ну ты вон, такой знаток, что даже не знаешь, как считается время разработки нет... текст свёрнут, показать
     
  • 5.117, НяшМяш (ok), 15:37, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +4 +/
    10% это в бесконечно раз больше кода на расте, чем у онанимуса.
     
     
  • 6.321, Аноним (127), 18:33, 05/09/2022 [^] [^^] [^^^] [ответить]  
  • +3 +/
    онанимус и не обязан писать на rust, на Си или на чём-другом.
    онанимус даёт ценные указания как на самом деле надо писать программы
     
  • 4.162, Урри (ok), 22:55, 03/09/2022 Скрыто модератором
  • –1 +/
     
     
  • 5.224, Прохожий (??), 10:51, 04/09/2022 Скрыто модератором
  • +2 +/
     
     
  • 6.250, Урри (ok), 11:51, 04/09/2022 Скрыто модератором
  • +/
     
     
  • 7.267, Аноним (9), 18:56, 04/09/2022 Скрыто модератором
  • +/
     
  • 7.281, Прохожий (??), 22:11, 04/09/2022 Скрыто модератором
  • +/
     
     
  • 8.283, Аноним (9), 22:43, 04/09/2022 Скрыто модератором
  • +/
     
     
  • 9.285, Прохожий (??), 22:48, 04/09/2022 Скрыто модератором
  • +/
     
  • 8.302, n00by (ok), 13:31, 05/09/2022 Скрыто модератором
  • +/
     

     ....ответы скрыты модератором (25)

  • 1.5, Аноним (5), 10:42, 03/09/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    нет раста - нет проблем.
     
     
  • 2.19, Аноним (9), 11:38, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Но фишка в том что реализация на раст только появилась, а проблемы были задолго до...
     
     
  • 3.148, Аноним (129), 20:51, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    С Растом будет ещё больше.
     
     
  • 4.189, Аноним (186), 00:30, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Зависимость от {google, amazon, ms} уже достаточно большая проблема как по мне.
     
     
  • 5.213, Аноним (-), 06:11, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Расскажи это Linux Foundation
     
     
  • 6.225, Аноним (-), 10:54, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Расскажи это Linux Foundation

    Надеюсь, ты понимаешь, что "Этодругое!™©"
    Как впрочем и
    https://isocpp.org/wiki/faq/wg21
    > a few of the individual members of the ISO C++ committee.
    > Bryce Adelstein Lelbach (NVIDIA, Library Evolution Working Group chair)
    > Matt Austern (Google, SG8 Concepts chair)
    > Dean Michael Berris (Google)
    > Hans Boehm (Google, SG5 Transactional Memory chair, SG1 Concurrency chair emeritus)
    > Stephen D. Clamage (Oracle, PL22.16 chair emeritus)

     
     
  • 7.276, Аноним (276), 21:19, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    В каком бы месте в C++ или Linux Foundation у вон тех был бы контроль над репами с сорцами пхаемыми по дефолту ALL'у? А в хрусте с их карго - репка в лапках "некоммерческого" фаундейшна, такая мелкая разница.
     

  • 1.7, pashev.ru (?), 10:44, 03/09/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +8 +/
    Кстати, если отложить смехуечки в сторону, Раст меняет мышление. Программировать на Си++ после раста довольно... волнительно. Вот если я хочу добавить объект в список — что произойдёт? Скорее всего, копирование, если есть конструктор копирования. На Расте это тоже можно либо явно с помощью x.clone(), либо неявно с помощью x.copy() [как на Си++]. Однако по-умолчанию компилятор просто передаст владение объектом списку (move semantics) и не даст больше ссылаться на сходную переменную.


     
     
  • 2.8, pashev.ru (?), 10:45, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    * на исходную переменную.
     
  • 2.10, pashev.ru (?), 10:49, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Нету x.copy(), конечно. Есть https://doc.rust-lang.org/std/marker/trait.Copy.html
     
  • 2.12, InuYasha (??), 10:59, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Современный ++ монструозен. Но при наличии опыта проблем с пониманием происходящего не возникает.
     
     
  • 3.23, аннонн (?), 11:41, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Что-то у писателей ядра с опытом CVEшки возникают регулярно.
     
     
  • 4.61, InuYasha (??), 12:42, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Как это относится к сказанному мной выше?
     
     
  • 5.73, Прохожий (??), 13:08, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Напрямую, если подумать.
     
     
  • 6.191, Аноним (-), 00:32, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Вообще-то создатели ядра на ++ не пишут. И к тому же - ну вы сделайте проект такой сложности на хоть там чем, посмотрим сколько CVE будет у вас. Вон там пыхтонисты и рубисты ухитряются сверкать RCE вулнами, "вторым за неделю", видимо, так можно было не только на сях.
     
     
  • 7.242, Прохожий (??), 11:43, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Если имелся ввиду Линукс, то да, не пишут. И да, я в курсе, что ошибки в коде возникают не только и не столько из-за непонимания. Я пояснил свою мысль ниже в этой ветке. Проблема C++ - это undefined behavour. И вот из-за него и возникают порою ошибки с пониманием.
     
  • 4.100, Ан (??), 14:32, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ядро написано на Си, это раз, и возникают далеко не так часто, как ты пытаешься представить, это два.
     
     
  • 5.143, Ананимус (?), 20:31, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > не так часто

    Ахахахах. Сразу видно что человек не имеет никакого о ношения к ядерной разработке.

     
     
  • 6.163, Урри (ok), 22:57, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    24 миллиона строк. одна сивиешка в пару месяцев.

    Деточка, ты только что на первый курс поступило, да?

     
     
  • 7.180, Ананимус (?), 23:44, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > 24 миллиона строк. одна сивиешка в пару месяцев.
    > Деточка, ты только что на первый курс поступило, да?

    Моя любимая рубрика "давай откроем git log":

      $ git log --since=last-month | grep -cEi '(use*after*free|memory*corruption)'
      88

    Ещё вопросы? :)

     
     
  • 8.193, Аноним (-), 00:37, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    И сколько из этого фуфла - мержи по иерархии Впрочем что с хрустиков взять, гре... текст свёрнут, показать
     
  • 8.226, Урри (ok), 10:56, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    1,122,627 commits Так что там про вопросы, одноизвилинное Ты само смотрело что... текст свёрнут, показать
     
     
  • 9.258, Ананимус (?), 12:51, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Ты что-то говорил про одну в пару месяцев ... текст свёрнут, показать
     
  • 3.72, Прохожий (??), 13:07, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Даже при наличии опыта у людей иной раз всё-таки возникают проблемы с пониманием происходящего. Потому что undefined behavior - одна из "фишек" C++.
     
  • 3.103, Аноним (98), 14:35, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Но при наличии опыта проблем с пониманием происходящего не возникает.

    А есть люди с такими умениями? Кроме пары опеннетовцев, конечно.

     
  • 3.153, ip1982 (ok), 21:12, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > Но при наличии опыта проблем с пониманием происходящего не возникает.

    Конечно. Так и с полётом на Ту-154 проблем не возникает при наличии опыта. Но на МС-21 лучше.

     
     
  • 4.211, freehck (ok), 05:18, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > Так и с полётом на Ту-154 проблем не возникает при наличии опыта.

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

    Для понимая прочих: Ту-154 очень не отзывчивая машина. Если интересно -- на ютубе сейчас много пилотов блоги ведут, можете погуглить.

     
     
  • 5.277, Аноним (-), 21:26, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Зато SSJ отзывчивый в мануальном режиме вышел, пилот чуть не так джойстик - и он об полосу как хряпнется, вплоть до стоек шасси пробивающих баки.
     
  • 2.104, n00by (ok), 14:36, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    А в Расте списки интрузивные, или это уже не важно?
     
     
  • 3.144, Ананимус (?), 20:34, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    https://docs.rs/intrusive-collections/latest/intrusive_collections/
     
     
  • 4.195, Аноним (-), 00:40, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > let mut list = LinkedList::new(TestAdapter::new());

    Так и представляю себе что будет когда вебмакаки засунут это в кернел и обнаружат что, оказывается, not enough memory для ядра штатная ситуация и совсем не повод для паники.

     
     
  • 5.201, Аноним (-), 00:55, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +3 +/
    >> let mut list = LinkedList::new(TestAdapter::new());
    > Так и представляю себе что будет когда вебмакаки засунут это в кернел

    Не надейся, никто тебя туда не пустит.

    > и обнаружат что, оказывается, not enough memory для ядра штатная ситуация

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


     
     
  • 6.227, Урри (ok), 11:04, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > Интересно, когда опеннетные эксперты обнаружат, что для ядерной разработки не испоьзуют
    > юзерспейсные версии либ, а пишут свои ...

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

     
     
  • 7.230, Аноним (-), 11:10, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    >> Интересно, когда опеннетные эксперты обнаружат, что для ядерной разработки не испоьзуют
    >> юзерспейсные версии либ, а пишут свои ...
    > шо, апять все с нуля переписывать? ради модномолодежного (уже нет) языка? все
    > миллионы строк?

    Шо, ты не знал что в ядре не применеяют юзерспейсные либы? Ну, типичный эксперт опеннета.
    И какие миллионы строк, о чем ты бредишь?


     
  • 7.249, Прохожий (??), 11:50, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Деточка, если новый язык позволит свести на нет ошибки работы с памятью, чей удельный вес в коде достигает 70 процентов от общего количества ошибок, то для софта, критически важного для бизнеса, это может сэкономить миллионы, а иной раз и миллиарды долларов. Вполне себе веский повод, чтобы задуматься о переписывании.
     
  • 6.278, Аноним (-), 21:28, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Не надейся, никто тебя туда не пустит.

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

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

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

     
     
  • 7.290, Аноним (-), 23:41, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    А ты самокритичный, че Опеннетный эксперт считает, что ядерная замена stdli... большой текст свёрнут, показать
     
     
  • 8.326, Аноним (326), 23:45, 05/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Не без этого И кстати то что часть патчей у меня только на локалхосте и в апстр... большой текст свёрнут, показать
     
  • 5.241, ip1982 (ok), 11:42, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    >> let mut list = LinkedList::new(TestAdapter::new());
    > Так и представляю себе что будет когда вебмакаки засунут это в кернел
    > и обнаружат что, оказывается, not enough memory для ядра штатная ситуация
    > и совсем не повод для паники.

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

     
  • 5.257, Ананимус (?), 12:49, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    То они добавят try методы, как уже сделали для collcections :)
     
     
  • 6.279, Аноним (279), 21:47, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > То они добавят try методы, как уже сделали для collcections :)

    А это типа не костыль, типа не приход к тому же что и сишники, и не распадение яп на 2 субдиалекта? :)

     
     
  • 7.292, Аноним (-), 23:45, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    >> То они добавят try методы, как уже сделали для collcections :)
    > А это типа не костыль, типа не приход к тому же что
    > и сишники, и не распадение яп на 2 субдиалекта? :)

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

     
  • 7.297, Ананимус (?), 10:20, 05/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > А это типа не костыль, типа не приход к тому же что и сишники, и не распадение яп на 2 субдиалекта? :)

    Какие субдиалекты?

      FooBar::new();
      FooBar::try_new()?;

    Все.

     
     
  • 8.327, Аноним (327), 00:13, 06/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Ну вот такие Второго варианта вообще не было изначально, и воткнуть прямо в наз... текст свёрнут, показать
     
     
  • 9.329, Ананимус (?), 00:52, 06/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Есть две функции, одна вернет ошибку, вторая запаникует Какие два диалекта, зак... текст свёрнут, показать
     
  • 4.216, n00by (ok), 08:10, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Спасибо.

    // Since these are shared references, any changes in the values are reflected in
    // the list.

    «Однако по-умолчанию компилятор просто передаст владение объектом списку (move semantics) и не даст больше ссылаться на сходную переменную.»

     
  • 2.260, Аноним (260), 14:38, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Java так мышление меняет уже лет 20, если не больше.
     

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

  • 1.21, Аноним (21), 11:40, 03/09/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Было интересно посмотреть на результаты аудита сего кода, вот тогда и станет ясно, насколько раст безопасен
     
  • 1.24, Аноним (35), 11:42, 03/09/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >если в коде не используются блоки "unsafe".

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

     
     
  • 2.146, Аноним (146), 20:50, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Очень известный плагин cargo-geiger. Устанавливается командой cargo install cargo-geiger
    https://user-images.githubusercontent.com/3704611/53132247-845f7080-356f-11e9-
     
     
  • 3.280, Аноним (279), 21:49, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > Устанавливается командой cargo install cargo-geiger

    Из репов контролируемых MS/amazon/google? Вот спасибо.

     
  • 2.156, morphe (?), 21:16, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +4 +/
    > особенно взаимодействие unsafe-блоков в зависимости с внешним кодом хрен сделаешь

    Если unsafe блок ломается при неправильном вызове кода - значит это неправильный unsafe блок.

    А так - большинство популярных библиотек с unsafe и так прошли аудит, а большая часть кода unsafe и не использует.

     

  • 1.25, Аноним (25), 11:42, 03/09/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    раст не решает проблемы утечек памяти, значит в любой момент может быть прибит OOM или зафризит систему
     
     
  • 2.29, Анонн (?), 11:45, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +6 +/
    А разве какой-то язык решает проблему OOM?
     
  • 2.30, Аноним (35), 11:48, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Причём прибит по ООМ может быть X-сервер или совершенно левая программа, в которой ошибки нет, но пгосто жрёт больше всех.

    А на счёт "зафризит систему". Юзай винду, линукс непригодная для работы система, в ней за 20 лет 12309 так и не соизволили пофиксить. Если бы на винде такое было, лицензию на винду вообще никто бы не купил.

     
     
  • 3.110, RedHat Support (?), 14:56, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ядро 5.15. При сборке образа утилитами e2fsdroid и mke2fs системой пользоваться невозможно, это сущий ад. Причем что раньше (до 5.15) была эта проблема, что сейчас.
    Справедливости ради на винде он тоже присутствует, но систему так не вешает.
     
  • 3.196, Аноним (-), 00:44, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Вообще есть такая штука как oom score adjust И в современных дистрах иксы обычн... большой текст свёрнут, показать
     
     
  • 4.208, Аноним (208), 04:44, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > наезжая на тех кто компы без предустановки продает что пираси способствуют

    Предустанавливаем ubuntu/mint/manjaro и никаких проблем. Некоторые производители так и делают

     
  • 4.221, Аноним (221), 10:23, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    А толку, если ООМ-киллер всё гавно тупой и прибивает всё подряд Брузер выжрал п... большой текст свёрнут, показать
     
     
  • 5.256, morphe (?), 12:24, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > винде 7 с куда меньшим количеством оперативы всё прекрасно работает.

    На винде по дефолту включается своп, и выключать его не рекомендуется, т.к нет оверкоммита

     
  • 5.259, Аноним (-), 13:43, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    >>Вообще есть такая штука как oom score adjust.
    > А толку, если ООМ-киллер всё гавно тупой и прибивает всё подряд. Брузер
    > выжрал память, потому что менеджер памяти в линуксе и/или его станд.
    > библиотеке говно, но газмазал по нескольким процессам - ну значит убьют
    > не браузер, а например иксы, плазму, или программы в вайн.

    Неужели у лапчатых есть всякие аджуст скоры и юзерспейсные обработчики oom на питоне, но нет простейшего аналога

    > man protect – protect processes from being killed when swap space is exhausted
    > EXAMPLES
    >  Mark the Xorg server as protected:
    >           pgrep Xorg | xargs protect -p
    >

     
  • 5.328, Аноним (-), 00:36, 06/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    С правильной развесовкой OOM score он таки критичные процессы не прибивает И ли... большой текст свёрнут, показать
     

  • 1.28, Аноним (35), 11:45, 03/09/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >Излишняя требовательность компилятора rustc, отмечаемая некоторыми как недостаток, на деле оказалась благом, так как если код компилируется и проходит тесты, значительно повышается вероятность его корректности.

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

     
     
  • 2.40, Аноним (13), 11:55, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    как и любая другая программа. ты только что начал программировать вообще, а не именно на расте
     
     
  • 3.51, Аноним (35), 12:07, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Это просто ты на C++ и особенно на C не программировал. В C можно 3 часа отлаживать один сигсегв, чтобы потом выяснить, что C не проверяет типы указателей при вызове функций и что у тебя либо местами перепутаны 2 указателя на 2 структуры, либо в функцию вообще передана левая хрень. В плюсах с этим получше. Либо обнаружить, что код-то выглядит хорошо, но в маросах в лучшем случае дрянь по типу #define PI (3.14 + random() * 0.01) // happy debugging, bastards.
     
     
  • 4.54, Аноним (54), 12:27, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > C не проверяет типы указателей при вызове функций

    Это что за компилятор такой?

     
  • 4.91, Аноним (91), 14:01, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >#define PI (3.14 + random() * 0.01) // happy debugging, bastards

    Я не программист от слова совсем. Без подкола, поясни, плз, в чем здесь засада?

     
     
  • 5.101, Анонн (?), 14:32, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Засада в том, что написавший это нехороший человек "переопределяет" константу PI и все результаты будут чуть плавать на значение random()*0.01.
     
     
  • 6.109, n00by (ok), 14:54, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Засада в том, что стандарт мало кто читает, чем много кто злоупотребляет. "Переопределять" макрос нельзя.

    6.10.3/2
    An identifier currently defined as an object-like macro shall not be redefined by another #define
    preprocessing directive unless the second definition is an object-like macro definition and the two
    replacement lists are identical. Likewise, an identifier currently defined as a function-like macro
    shall not be redefined by another #define preprocessing directive unless the second definition is a
    function-like macro definition that has the same number and spelling of parameters, and the two
    replacement lists are identical.

     
     
  • 7.118, НяшМяш (ok), 15:43, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > shall not

    Это переводится не как "не может быть", а как "не должен быть". Программ, злоупотребляющих парой #undef + #define полно.

     
     
  • 8.126, n00by (ok), 17:20, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    В случае стандарта оно формализовано вот так 4 Conformance 1 In this Internati... текст свёрнут, показать
     
  • 8.203, Аноним (-), 01:25, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    ЧСХ у компилеров есть варнинги на эту тему Вот как раз чтобы там где это и прав... текст свёрнут, показать
     
     
  • 9.345, НяшМяш (ok), 19:34, 06/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    А много больших и полезных программ существует, которые компилируются без единог... текст свёрнут, показать
     
  • 6.263, Аноним (91), 15:02, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    >нехороший человек "переопределяет" константу

    Неужели невозможно на этапе компиляции запретить redefine уже определенных констант?

     
     
  • 7.299, Ананимус (?), 13:21, 05/09/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >>нехороший человек "переопределяет" константу
    > Неужели невозможно на этапе компиляции запретить redefine уже определенных констант?

    В C препроцессор работает до концепляции :)

     
     
  • 8.330, Аноним (276), 00:54, 06/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Тем не менее, в gcc каком есть опции на эту тему А еще - только подумайте, есть... текст свёрнут, показать
     
     
  • 9.337, Ананимус (?), 14:28, 06/09/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Какие опции, родное сердце Препроцессор просто заменяет одну строчку на другую ... текст свёрнут, показать
     
     
  • 10.341, n00by (ok), 17:55, 06/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Будешь дальше гнать лажу - придётся применить к тебе препроцессор ... текст свёрнут, показать
     
  • 10.343, Ананимус (?), 19:16, 06/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Самое нелепое, что у nooby подгорело и он меня заблокировал D ... текст свёрнут, показать
     
  • 7.340, n00by (ok), 17:51, 06/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    >>нехороший человек "переопределяет" константу
    > Неужели невозможно на этапе компиляции запретить redefine уже определенных констант?

    Поскольку выше ответил тролль и любитель мракобесия Ананимус, вот правильный ответ:



    $ cat macro.c
    #define PI 1
    #define PI 2

    $ gcc macro.c
    macro.c:2: предупреждение: «PI» переопределён
        2 | #define PI 2
          |
    macro.c:1: замечание: это расположение предыдущего определения
        1 | #define PI 1
          |



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

     
  • 7.344, Ананимус (?), 19:25, 06/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    >>нехороший человек "переопределяет" константу
    > Неужели невозможно на этапе компиляции запретить redefine уже определенных констант?

    n00by пытается казаться умным, но у него не получается:

    #define FOOBAR пиписька
    #undef  FOOBAR
    #define FOOBAR большая_пиписька

    int
    main(void)
    {
    FOOBAR;
    }

    n00by, перестань позориться пожалуйста.

     
     
  • 8.348, n00by (ok), 11:12, 07/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Вот хорошо видна гнусная демагогия, какую любят друзья мракобесия - добавил und... текст свёрнут, показать
     
  • 4.108, n00by (ok), 14:51, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Если три часа отлаживаете - то обычно дело не в языке, а том что глаз замылился. Через 30-60 минут стоит переключиться на что-то другое, в итоге время сэкономите.
     
     
  • 5.157, лютый ж.... (?), 21:50, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    >Если три часа отлаживаете - то обычно дело не в языке, а том что глаз замылился.

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

     
     
  • 6.204, Аноним (-), 01:27, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +4 +/
    > пишет (за давностью лет не помню), ошибка обращения к памяти 0x34ee5345ff...
    > даже непонятно в чем суть ошибки.

    Поэтому культурные люди со временем учатся в юнит-тесты, test driven development и fuzzing. Это кстати не только на сях полезно так то. Особенно в сетевом и т.п. софте. Ремоты же могут что угодно слать. Те за кого "яп подумает" узнают чем это чревато сложным способом.

     
     
  • 7.261, Аноним (260), 14:40, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ага, а потом эти люди получают кучу говнокода, который способен проходить тесты, но изменения резко не приветствуются.
     
     
  • 8.331, Аноним (-), 00:57, 06/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Тебя что, тесты с комитом послали Ну извини, может быть, твой код был не так уж... текст свёрнут, показать
     
  • 6.217, n00by (ok), 08:33, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Вы же при этом не пялились в отладчик всё это время, а писали «не воспроизводится». Я ловил ошибки, когда компилятор с определёнными ключами генерировал мусор, так что не очень разделяю восторги некоторых.
     
     
  • 7.332, Аноним (-), 01:00, 06/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > Вы же при этом не пялились в отладчик всё это время, а
    > писали «не воспроизводится». Я ловил ошибки, когда компилятор с определёнными
    > ключами генерировал мусор, так что не очень разделяю восторги некоторых.

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

     
  • 5.220, Аноним (221), 10:08, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Нет, дело в языке. C++ о таком предупреждает на этапе компиляции в вибе error, а си - проглатывает.
     
     
  • 6.255, n00by (ok), 12:21, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Да хоть в HTML, не надо ничего три часа отлаживать, когда на то нет веских оснований. Академический час 45 минут, перерывы, даже фильм в среднем полтора часа - всё это не на пустом месте придумано. Если это неизвестно и не понятно интуитивно, то возникает вопрос, а на своём ли месте человек, кто допустил Вас до отладки.
     
     
  • 7.265, Аноним (-), 18:16, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > Академический час 45 минут, перерывы, даже фильм в среднем полтора часа - всё это не на пустом месте придумано.

    Расчёт на среднестатистическую психику, для которой удерживать внимание дольше 15 минут сложно, а целый час невозможно.

     
     
  • 8.303, n00by (ok), 13:35, 05/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    В вузы идут не среднестатистические Но даже Бог на 7й день отдыхал ... текст свёрнут, показать
     
     
  • 9.305, Ананимус (?), 14:35, 05/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Ват У нас 32 граждан с высшим образованием ... текст свёрнут, показать
     
     
  • 10.308, n00by (ok), 14:56, 05/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Что там у вас за высшее, когда не слышали про нормальное распределение Где - мо... текст свёрнут, показать
     
     
  • 11.310, Ананимус (?), 15:05, 05/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    На какой именно глобус ты пытаешься тут нормальное распределение натянуть, прост... текст свёрнут, показать
     
     
  • 12.311, n00by (ok), 15:18, 05/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    То есть высшего у тебя нет Так, галлюцинации с глобусом Видать со вчера не отп... текст свёрнут, показать
     
  • 4.298, _kp (ok), 12:30, 05/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    >> 3 часа отлаживать один сигсегв

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

    >> C не проверяет типы указателей при вызове

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

    >>В плюсах с этим получше

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

    >>#define

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

     
     
  • 5.301, Ананимус (?), 13:27, 05/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >>> 3 часа отлаживать один сигсегв
    > А собрать отладочную версию, чтоб само показало где... нет.. тольлько харкор.

    В ядре уже несколько лет отлавливают порчу памяти при использовании мелланоксовского драйвера. Там гонка, которая портит SLAB. Либо не воспроизводится совсем, либо по пять раз подряд. Отловить до сих пор не могут.

     

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

  • 1.31, Аноним (31), 11:48, 03/09/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Если весь Тор будет написан на Раст, у растофилов будет первый реальный вин
     
     
  • 2.43, Аноним (13), 11:58, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    это будет эпик фейл
     
     
  • 3.69, Прохожий (??), 12:58, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    В лагере воинов борьбы против Раста? Ну да, с этим трудно не согласиться.
     
     
  • 4.114, Аноним (13), 15:25, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    у тех, про кого написано, учись читать
     
     
  • 5.228, Прохожий (??), 11:08, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Я не телепат, мысли читать не умею. А где этому можно научиться, о великий чтец с Опеннета?
     
     
  • 6.307, Аноним (307), 14:50, 05/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Ты сначала букварь научись читать, потом за мысли будешь хвататься.
     
  • 2.45, Аноним (35), 11:59, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Да фейл же будет, раст же платформы не поддерживает.
     
     
  • 3.70, Прохожий (??), 13:00, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Например, какие?
     
     
  • 4.80, anonon (?), 13:21, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    ща тебе накидают всяких или маргинальных платформ на полторы калеки, или древних как фекалоид мамонта, или одновременно и первых и вторых
     
     
  • 5.84, Прохожий (??), 13:30, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Тогда я спрошу, зачем им на этих платформах Tor. Ведь с высокой вероятностью его на них никогда и не было.
     
     
  • 6.85, Анонн (?), 13:34, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Исключительно чтобы сказать "вот поэтому ваш раст ненужон!"
    Это примерно как аргументы "низя писать драйверы на раст! он нивсе платформы поддерживает!" для железок, которые рассчитаны только на x86 и arm))
     
     
  • 7.87, Прохожий (??), 13:41, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Я возражу примерно следующим образом. Если Tor-а никогда не было на этих платформах, значит, Tor не нужен на этих платформах. Значит, Rust не создаёт никаких проблем пользователям этих платформ.

    Собственно, ситуация с драйверами - та же примерно. Если на платформе A никогда не было устройства B, чей драйвер сейчас написан на Rust, значит, никто не пострадал и нет смысла воевать против Rust.

     
     
  • 8.102, annonn (?), 14:35, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Ты не понял Смысл в том чтобы хейтить Раст и устраивать срач Поэтому если ну... текст свёрнут, показать
     
     
  • 9.231, Прохожий (??), 11:10, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Да всё я понял Давно уже здесь ... текст свёрнут, показать
     
  • 3.119, НяшМяш (ok), 15:46, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Забавно, что в оригинале статьи авторы радуются, что упростилась поддержка винды и прочей дичи, типа андроида с айосью. Вот у сишников рванёт, когда благодаря расту тор появится на большем количестве платформ.
     

  • 1.33, Корец (?), 11:50, 03/09/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    Отлично, а теперь подождём немного и узнаем, действительно ли раст так хорош в плане безопасной работы с памятью или это очередной распиаренный буллшит.
     
     
  • 2.313, burjui (ok), 16:28, 05/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Молодец, кинул-таки какашку в нашу сторону, не упустил возможность. А если в Arti всё пойдёт хорошо, ты же извинишься и признаешь свою неправоту? Конечно, нет! Хейтерки же гнилые люди по определению: радуются неудачам, молчат про победы.
     
     
  • 3.334, Корец (?), 04:04, 06/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > Молодец, кинул-таки какашку в нашу сторону, не упустил возможность. А если в
    > Arti всё пойдёт хорошо, ты же извинишься и признаешь свою неправоту?
    > Конечно, нет! Хейтерки же гнилые люди по определению: радуются неудачам, молчат
    > про победы.

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

     
     
  • 4.353, VladSh (?), 15:56, 09/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Смартфоны с самого начала тоже активно пиарили, и теперь смарты - говно? Ну, возможно...
     
     
  • 5.355, Корец (?), 21:27, 09/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > Смартфоны с самого начала тоже активно пиарили, и теперь смарты - говно?
    > Ну, возможно...

    А разве нет? После окончания срока поддержки довольно мощное железо отправляется остаётся без обновлений ибо вендорлок. А потом они начинают кукарекать про кризис полупроводников...

     
     
  • 6.356, VladSh (?), 15:48, 14/10/2022 [^] [^^] [^^^] [ответить]  
  • +/
    То уже из другой оперы)

     

  • 1.34, Аноним (35), 11:51, 03/09/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    >таких как протокол управления перегрузкой (RTT Congestion Control)

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

     
  • 1.38, Аноним (35), 11:55, 03/09/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    >удобными библиотеками бэкдоров

    Пофикшено.

     
  • 1.42, Аноним (35), 11:58, 03/09/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    >В версии 2.0 ожидается

    что Васюки переименуют в Новую Москву, а Москву - в Старые Васюки.

     
     
  • 2.223, Alladin (?), 10:42, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Я за, всегда будоражила данная идея:)
     

  • 1.52, Аноним (52), 12:09, 03/09/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Почему все считают что наделав (по их мнению) идеального софта и получив скалеоз - больше шансов заработать на заветный дошик ? Пишите говнокод посоны, за его неоднократное переделывание получить корку хлеба куда более реалистично.
     
     
  • 2.294, Аноним (294), 02:32, 05/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Так оно и происходит во имя святого грааля новояза. Вообще либернутым все новое обязательно лучше старого. А то что оно по логике не пролезает, так через задницу затолкают. Мол типа сморите посоны мы тут дело делаем офигеть какое важное. Црушникам жизнь портим. Сновден одобряэ. Что-то фаерфокс нифига не полностью на растишке.
     

  • 1.53, Аноним (35), 12:12, 03/09/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    >Из недостатков выделяется большой размер результирующих сборок - так как стандартная библиотека Rust не поставляется в системах по умолчанию, её приходится включать в предлагаемые для загрузки пакеты.

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

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

     
     
  • 2.266, freecoder (ok), 18:51, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Это сказано про крейты, а не библиотеки. Крейты для этого и предназначены, чтобы их статически линковать - делить одни и те же модули между разными проектами. Но никто не мешает сделать вам динамическую библиотеку и использовать ее.
     

  • 1.59, eganru (?), 12:41, 03/09/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +7 +/
    В треде прямо неприязнь какая-то к людям, что хуже чем надо пишут на C и достаточно нормально на rust.

    Да пусть хоть на чем пишут и радуются, если это решает их проблемы.

     
     
  • 2.78, Прохожий (??), 13:20, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Маленькое уточнение. Не обязательно эти люди пишут хуже, чем надо на C. Вполне возможно, что эти люди просто наконец-то осознали, как убог язык C в наши дни, и что пора наконец-то его поменять на что-то более адекватное.
     
     
  • 3.93, eganru (?), 14:11, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    [i]Не обязательно эти люди пишут хуже, чем надо на C.[/i] - новость о проблемах, с которыми люди столкнулись во время разработки и которые слава богу удалось уменьшить сменой языка.

    [i]осознали, как убог язык C в наши дни[/i] - главная проблема любого языка программирования в наши дни это ты. потому что ты пишешь на любом языке программирования глючное говно.

     
     
  • 4.233, Прохожий (??), 11:15, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >потому что ты пишешь на любом языке программирования глючное говно

    Разница в количестве, всё-таки. Если язык А позволяет создать продукт с меньшим количеством глюков по сравнению с языком Б при прочих равных, то очевидно, что язык Б пора выкидывать на свалку.

     
     
  • 5.296, eganru (?), 08:58, 05/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    [i]Если язык А позволяет создать продукт с меньшим количеством глюков по сравнению с языком Б[/i] - как Вы ловко начали говорить за всех. Я точно пишу код на С с меньшим числом проблем по сравнению с Rust. Это я уже выяснил. Дальше-то что? Rust на свалку выкидывать?

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

     
     
  • 6.346, Аноним (346), 21:15, 06/09/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    О да! Вот он настоящий программист™. Ядро линукса ждет тебя, а то слишком много дыр в последнее время.
    Ну или ты просто настолько фигово пишешь на раст, что любая проблема на си получается лучше?

    > и все радуются от результата

    Вот с этого места начинаются проблемы. Я как-то совсем не радуюсь когда сервак ломают через zero-day vulnerability. И тысячи других людей тоже. Поэтому они просят - или пиши хорошо, или меняй инструмент.

     
     
  • 7.347, eganru (?), 08:45, 07/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    [i]что любая проблема на си получается лучше?[/i] - я начал писать на С когда rust еще не было. Скорее всего было бы странно, если бы я писал на rust лучше чем на С.
    Но я проверил. Я пишу на С лучше, быстрее и с меньшим числом проблем.

    [i]Поэтому они просят - или пиши хорошо, или меняй инструмент.[/i] - у тебя есть уверенность что сменив инструмент лучше станет? Все возьмутся за руки и начнут резко писать лучше? По моему опыту будет вагон костылей и unsafe чтобы обойти ограничения языка.

     
     
  • 8.349, Аноним (98), 11:58, 07/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Нет, но зато будут значительно реже за границы массивов вылезать ... текст свёрнут, показать
     
  • 3.167, Урри (ok), 23:02, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Есть С++, Джава, Хаскель. Че вас именно от си то так пригорает?
     
     
  • 4.169, Аноним (-), 23:08, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    >> В треде прямо неприязнь какая-то к людям, что хуже чем надо пишут на C и достаточно нормально на rust.

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


     
     
  • 5.251, Урри (ok), 11:54, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    >>> Вполне возможно, что эти люди просто наконец-то осознали, как убог язык C в наши дни, и что пора наконец-то его поменять на что-то более адекватное.
    >>  Есть С++, Джава, Хаскель. Че вас именно от си то так пригорает?

    Ответа на вопрос, я так понимаю, не будет? Ничего неожиданного.

     
  • 4.282, Прохожий (??), 22:21, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • –4 +/
    А чё ты решил, что у кого-то пригорает? Просто Си - это язык-динозавр, явно не отвечающий современным потребностям из мира ПО. Пора на заслуженный отдых. C++ туда же, кстати, давным-давно пора отправить, но по другим причинам - принципиально неустранимый дефект в виде UB, и сверхсложность спецификации, которую в полном виде не дано освоить ни одному человеку на Земле. Кто-то тут про лёгкость чтения и сопровождения кода говорил. Вот и подумай на досуге над этим в контексте этих двух языков. Надеюсь, справишься с домашним заданием?

    У Джавы и Хаскеля совершенно другие сферы применения, и в этой теме их обсуждать не имеет особого смысла.

     
     
  • 5.304, _kp (ok), 13:43, 05/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    А что есть для системного программирования, кроме "динозааров" С и С++? ;)

    Даже для детского робота на Питоне, за кадром трудятся библиотеки на С++. И так везде.

     
     
  • 6.323, Анонн (?), 20:18, 05/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ада. Самое что ни на есть системное. На самых требовательных к надежности направлениях.
    Но распространенность очень маленькая, т.к. разрабатывать на ней сложнее и медленнее и была вытеснена си-быдлокодерами, которые могли фигак-фигак и в продакшн.
     
  • 2.79, Ананимус (?), 13:21, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +9 +/
    Опеннетчиков оскорбляет, что разработчики софта не советуются с ними на чем им этот самый софт писать.
     
  • 2.81, Анонн (?), 13:27, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > если это решает их проблемы.

    и создает кучу проблем другим ¯\_(ツ)_/¯

     
     
  • 3.88, Прохожий (??), 13:42, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Или решает заодно кучу проблем для других. ;)
     
  • 3.106, Аноним (127), 14:40, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Каких?
     
     
  • 4.107, Анонн (?), 14:45, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Вот таких например https://access.redhat.com/security/cve/cve-2022-2588
     
     
  • 5.125, Аноним (127), 17:18, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Rust виноват в том что в cls_route.c сделали use-after-free
    Не иначе какой-то растоман затесался к разработчикам
     

  • 1.83, Аноним (83), 13:29, 03/09/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +5 +/
    Даааа, в таком коде баги искать трудновато
     
     
  • 2.232, Урри (ok), 11:10, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > Даааа, в таком коде баги искать трудновато

    Ты че, пес, какие баги? Раст не позволяет писать баги!

     
     
  • 3.237, Прохожий (??), 11:20, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    И зачем бы я так неумело передёргивал? Или до тебя никак не дойдёт, что Раст призван уменьшить количество ошибок определённого класса (работа с памятью), а не вообще всех?
     
     
  • 4.239, Урри (ok), 11:41, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +6 +/
    Это не передергивание, это сарказм.
    Ибо растаманы почему-то уверены, что существует единственный класс ошибок - ошибки работы с памятью. И если их накорню изничтожить (как, например, сделали джава с шарпом), то придет вселенская справедливость и софт магическим образом станет безошибочным и его даже не надо будет поддерживать.

    Ну а читабельность кода, поддерживаемые платформы, скорость работы и скорость разработки, количество библиотек и все остальное их не интересуют.

    [added]
    Ах да, еще они уверены, что единственные такие кто додумался "правильно" работать с памятью. Никаких тебе смартпоинтеров (даже в сишечке), никаких куч с автоматическим менеджером объектов, вообще ничего из уже считай сто лет активно развивающейся индустрии никто не использовал и не использует.

     
     
  • 5.243, Аноним (-), 11:43, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > Это не передергивание, это сарказм.
    > Ибо Воены Супротив Раста почему-то уверенны, что растаманы почему-то уверены, что существует единственный класс ошибок

    Пофиксил, не благодари.

     
     
  • 6.245, Урри (ok), 11:45, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Вот за это вас, растаманов, и не любят. Мозгов ноль, одно чсв.
     
     
  • 7.247, Аноним (-), 11:47, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > *Пук-пук-пук! Пу-у-у-у-к!*

    Вот за это вас, Военов и не любят - конкретики 0, мозгов и знаний 0, одно ЧСВ и пускание газов в лужу.


     
  • 5.253, Прохожий (??), 11:58, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    >Ибо растаманы почему-то уверены, что существует единственный класс ошибок - ошибки работы с памятью.

    Кто тебе такую глупость сказал? Или сам придумал только что, а потом сам же и засарказмил?

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

    И снова какие-то дикие фантазии на заданную тему. Если в чем растиане и уверены, так это в том, что их язык вполне может конкурировать на равных с Плюсами и Си. А ещё они уверены в zero-cost abstractions в Расте, к чему всякие сборщики мусора отнести точно нельзя.

     
     
  • 6.314, burjui (ok), 16:36, 05/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Просто Урри уверен, что его долгоиграющие проблемы в ментальной и половой сферах решаются тупым и бессмысленным хейтом к Rust. А ещё он уверен, что способен написать что-то кроме говнокода, и плюсики на Опеннете от таких же интеллектуально ограниченных индивидуумов ему в этом помогут.
     
  • 6.350, Аноним (350), 16:49, 07/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > Если в чем растиане и уверены, так это в том, что их язык вполне может конкурировать на равных с Плюсами и Си.

    А с Карбоном?

     

  • 1.86, Аноним (86), 13:41, 03/09/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Лучшебы на PHP реализацию закрафтили.
     
     
  • 2.136, th3m3 (ok), 19:54, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Ого, кто-то ещё даже помнит про php в 2022 году.
     
     
  • 3.158, Аноним (83), 22:03, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    А чем заменили PHP в 2022 году?
     
     
  • 4.172, Михрютка (ok), 23:28, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +3 +/
    на РНР. Раст На Расте.
     

  • 1.89, РастаГангста (?), 13:51, 03/09/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Вперед!
     
  • 1.90, Аноним (92), 13:59, 03/09/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > половина ... уязвимостей будет исключена ... если в коде не используются блоки "unsafe"

    Если бы да кабы... Слишком много условностей и будущего времени.

     
     
  • 2.137, Аноним (-), 20:18, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >> половина ... уязвимостей будет исключена ... если в коде не используются блоки "unsafe"
    > Если бы да кабы... Слишком много условностей и будущего времени.

    Ну так покажи всем этим ламерам как надо - напиши свою реализацию без уязвимостей.

     
     
  • 3.315, burjui (ok), 16:42, 05/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Изи.

    #include <AGI.h>

    int main()
    {
        return agi_generate_main("Tor without bugs");
    }

     

  • 1.95, Аноним (95), 14:14, 03/09/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    зачем нужен этот тор если под ним не работает ни один сайт, особенно те которые заклоудфларены
     
     
  • 2.147, Аноним (-), 20:50, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Наглая ложь. Пишу с пом. Тора, сёрфлю так же - клаудфлэйр обычно показывает наг-скрин на 2-3 секунды и говорит "secure", и дальше отображается сайт.

    Хорошая попытка, тов. мл. лейт., но - нет

     

  • 1.96, Alexey Torgashin (?), 14:20, 03/09/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    У меня это название Арти, ассоциируется с двумя хачами-музыкантами - их зовут Артик+Асти. Мужик и баба. Они на русском поют, точнее они вроде бы уже распались и не поют.

    Но мне запомнилась одна их песня - "Под грустный дэнс я так красиво теряю тебя". Я когда слышу эту песню все время думаю - "Армяне ГРУСТЯТ". И улыбаюсь.

     
     
  • 2.120, НяшМяш (ok), 15:49, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Казалось бы, причём тут A Rust Tor Implementation (=
     
  • 2.354, VladSh (?), 16:03, 09/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Есть ещё бойлеры такие.
     

  • 1.121, Аноним (127), 16:36, 03/09/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Как хорошо что на опеннет так много знающих людей, которые понимают насколько на самом деле ужасен rust
     
     
  • 2.123, Аноним (-), 16:58, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Вот ! Сразу ощущаеш что не все в этом мире тупые деграды.
     
     
  • 3.128, Аноним (127), 17:31, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Сразу ощущаешь себя не "тупым деградантом", способным только глупости в комментарии писать, а "знающим" человеком
     
  • 3.206, Аноним (205), 01:50, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Да, есть ещё в этом мире умудрённые опытом школьники.
     
  • 3.316, burjui (ok), 16:44, 05/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    А только вы.
     
  • 2.130, Аноним (92), 17:47, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > на опеннет так много знающих людей

    Видят опыт Мозилы, которой пришлось выгнать растаманов из-за провала проекта по переписыванию FF на раст.

     
     
  • 3.139, Аноним (-), 20:25, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >> на опеннет так много знающих людей
    > Видят опыт Мозилы, которой пришлось выгнать растаманов из-за провала проекта по переписыванию FF на раст.

    И очень избирательно не видят одновременное "выгоняние" комманды реагирования на угрозы, большей части security team и MDN. Видимо тоже, потому что "провалились", ага.
    Опеннетные "знатоки", одним словом.


     
     
  • 4.160, Аноним (92), 22:28, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > "выгоняние" комманды реагирования на угрозы

    Естественно, что их выгнали, чтобы не палили контору.

     
  • 4.171, Михрютка (ok), 23:21, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    а также я, например, очень избирательно до сих пор не вижу "выгоняния" CEO мазиллы с ее окладом в эээ в 2018 было два с половиной ляма, но случился ковид, потому к 2020 ей накинуди до трех, а щас еще и топливный кризис, не удивлюсь, если на бензин и отопление накинули до пяти лямов.

    единственно, что для зиц-прэзидентессы фимы, которая назначена худо-бедно дотянуть мозиллу до title 11, это многовато, как по мне.

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

     
  • 3.161, Аноним (146), 22:35, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Вообще-то причины были другие. Финансовые. Учитывая что большая часть доходов Мозиллы давно уже идет от Гугла это и не удивительно.

    А проект оксидации ФФ никто не закрывал https://wiki.mozilla.org/Oxidation

     
     
  • 4.170, Аноним (-), 23:18, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Вообще-то причины были другие. Финансовые.

    Менагерам на третью яхту не хватало.
    > Учитывая что большая часть доходов Мозиллы давно уже идет от Гугла это и не удивительно.

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

     

  • 1.131, Аноним (-), 18:05, 03/09/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Название "Tor" знают все. А этот "Arti" хpeн кто знает, не приживется.
     
     
  • 2.132, Анонн (?), 18:24, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Так никто проект переименовывать не собирается. Просто под капотом будет другая либа.
    Это как переезд с OpenSSL на LibreSSL - большинство пользователей об этом даже не узнали.
     

  • 1.140, Аноним (-), 20:29, 03/09/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    > половина всех отслеживаемых проектом уязвимостей будет исключена в реализации на Rust, если в коде не используются блоки "unsafe".

    ясно.

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

    понятно.

    Где-то я подобное уже видел, и продолжаю наблюдать. Негры миролюбивы и кротки, если их iq превышает 140. Обширные потери ББМ на деле оказались благом, так как теперь значительно повысилась вероятность перевооружения на более новые образцы. Улыбаемся и машем.

     
     
  • 2.149, Аноним (-), 20:53, 03/09/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Это транс-правда.
     
  • 2.219, Аноним (127), 09:03, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Опеннетовцы зрят в корень и видят все уловки растоманов и их транцправду
     
     
  • 3.252, Аноним (92), 11:58, 04/09/2022 [^] [^^] [^^^] [ответить]  
  • +6 +/
    Ты думаешь, у растаманов по две головы и три мозга? Ан нет... Изобретением божественных языков занимаются как раз недалёкие люди.
     
     
  • 4.295, Аноним (127), 05:55, 05/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Я думаю что у опеннетовцев пишущих комментарии по 3 головы и 2 мозга и они очень далёкие люди
     
     
  • 5.317, burjui (ok), 16:47, 05/09/2022 [^] [^^] [^^^] [ответить]  
  • +3 +/
    И для всех было бы лучше, если бы они были ещё дальше, в специально отведённых местах.
     
     
  • 6.322, Аноним (127), 18:34, 05/09/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Каких?
     

  • 1.168, Аноним (168), 23:04, 03/09/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Нууу поднять статистику скачивания как минимум затем, чтобы мамкины эксперты бальзам «звёздочка» сэкономили, стоит.
     
  • 1.286, Аноним (286), 22:48, 04/09/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    бинарь меньше? как потребление озу? в чем выгода?
     
  • 1.289, Neon (??), 23:21, 04/09/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Вот будет смех, когда посыпятся дыры в софте, написанном на Расте.)
     
     
  • 2.306, Аноним (307), 14:48, 05/09/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Да сыпались уже. Почтенные анонимы сразу напомнили растаманнам: "Ну что сынку, помог тебе твой Rust?"
     

  • 1.293, Palintin (ok), 00:58, 05/09/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    где экзешник качать?)))
     
     
  • 2.319, burjui (ok), 16:51, 05/09/2022 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Из аттача, конечно :)
     

  • 1.336, Аноним12345 (?), 09:49, 06/09/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Вчера впервые в жизни поставил тор
    Фригейт на прошлой неделе перестал работать
    А на рутрекер вот теперь через тор хожу
     
  • 1.351, Аноним (350), 17:12, 07/09/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Вот типичный пимер спама про rust.

    Фактически повода для новости нет. А новость есть.

    Текущий tor что либо поменял? Нет.

    В планах текущего tor'а добавить функциональность? Нет.

    В планах текущего tor'а добавить безопасность? Да. Когда-то. Когда-нибудь. Но не сейчас.

    То есть это "новость" про план, в оталенном будущем. А если учитывать историю, то в будущем, которое может и не наступить. И эта "новость" является главной.

     

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



    Спонсоры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

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