Главная Юзердоски Каталог Трекер NSFW Настройки

Программирование

Ответить в тред Ответить в тред
Check this out!
<<
Назад | Вниз | Каталог | Обновить | Автообновление | 219 38 53
Rust #38 /rust/ Аноним 13/05/25 Втр 06:26:38 3452718 1
rust-string-meme.jpg 50Кб, 576x680
576x680
average-rust-de[...].webp 47Кб, 505x495
505x495
programmerhumor[...].png 1061Кб, 1600x1617
1600x1617
7vx28m7qso291.webp 60Кб, 640x640
640x640
Добро пожаловать в тред, посвященный гарантиям, обещаниям, владению, заимствованию и другим концепциям языка Rust!
Предыдущий тред : >>3407697 (OP)

Rust — blazing fast язык для системного программирования без segfault'ов и с гарантиями потокобезопасности. Он позволяет писать безопасный и эффективный код, который легко поддерживать и масштабировать.

Ссылка на официальный сайт: https://www.rust-lang.org/

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

НОВИНКА: Rust для Windows: https://metanit.com/rust/windows/

IDE для Rust: https://areweideyet.com/
GUI для Rust: http://www.areweguiyet.com/
Web для Rust: https://www.arewewebyet.org/
Игры на Rust: https://arewegameyet.rs/
Что еще есть для Rust?
- Посмотри сам: https://wiki.mozilla.org/Areweyet

Основная литература:
Rust Book (версия на русском языке): https://doc.rust-lang.ru/book/
Rust Book: https://doc.rust-lang.org/book/
Rustlings (упражнения для привыкания к Rust): https://github.com/rust-lang/rustlings
Rust by Example: https://doc.rust-lang.org/rust-by-example/
The Rustonomicon (для продвинутых): https://doc.rust-lang.org/nomicon/
Programming Rust: https://www.oreilly.com/library/view/programming-rust/9781491927274/
100 упражнений по Rust: https://rust-exercises.com/100-exercises/

Ресурсы на русском:
https://rust-lang.ru/
Отдельное спасибо автору этого гитхаба (старому ОПу). Здесь ты сможешь найти много полезной информации: https://gist.github.com/TatriX/183c816f1346d418f969c4576c2b9b41
Аноним 13/05/25 Втр 18:06:54 3453318 2
Аноним 13/05/25 Втр 18:18:59 3453322 3
Аноним 13/05/25 Втр 18:43:53 3453336 4
1681713559834.png 26Кб, 1044x220
1044x220
>>3453318
На нём servo и wgpu...
А писать браузер на расте, ну камон, гайз.
Аноним 13/05/25 Втр 20:37:02 3453388 5
image 98Кб, 900x900
900x900
Растишки. Хочу вкатиться к бэкенд. Нужно для себя, а не для работы по найму (я так понимаю, что в этом смысле в РФ не разгуляешься).
Рассматривал разные варианты: PHP, Node.js, Go, Rust (Java и Kotlin не рассматриваю, очень не зашли).

У раста выявил только два минуса для себя:
- кривая обучения очень уж крутая (чтобы что-то начать делать в бэке нормально нужно месяцев 12)
- долгая разработка в сравнении в другими языками (то, что я сделаю на других языках за 1-2 дня, на расте буду делать неделю или две)

В других языках нашел минусов намного больше. Меньше всего в Go, но он не заточен на сложную бизнес-логику, сделать-то можно конечно, но на костылях и с тяжелой поддержкой в дальнейшем. А мой проект содержит сложную бизнес-логику: бухучет, оперативный учет и т.п. (я сам бухгалтер), которую я планирую годами расширять и совершенствовать. И это будет именно веб-проект со всеми вытекающими (будет даже telegram mini app).

Но экспертных материалов по практическому применению Rust в бэкенде я не смог найти. Как-то все в общих чертах, обзорно, толком полную картину не составишь. Это как в статьях про Python - да он может всё, очень гибкий, можно и в бэк и в ml и в гуй тоже может. А на деле - очень медлительный и очень прикладной, но хорошо для DS и ML (клей для Си в основном).

В концепциях программирования я не профессионал, но умею в VBA, Python и 1С в рамках своих компетенций по профессии). А также немного в CSS, HTML и JS.

Дайте пожалуйста вашу экспертную оценку. Если будет время, напишите пожалуйста развернутый ответ.
Аноним 13/05/25 Втр 20:51:51 3453403 6
Аноним 13/05/25 Втр 20:59:02 3453410 7
Аноним 13/05/25 Втр 20:59:16 3453411 8
image 700Кб, 1490x1600
1490x1600
>>3453403
От нейродебилов не получилось взять релевантную информацию. Они и про Пиструн мне говорят: О да, это отличный вопрос. Python может решить все ваши проблемы. Огромное сообщество, дохулирд фреймворков...
Аноним 13/05/25 Втр 21:12:22 3453423 9
>>3453411
Так ты знаешь питон, начинай писать на питоне. А не спрашивай дикпики о выборе языка. И еще думай как сделать так чтобы можно было как можно больше делигировать в будущем, наемным макакам, а не самому писать все.
Аноним 13/05/25 Втр 21:27:50 3453447 10
>>3453423
Извини, бро, но неужели ты думаешь, что я не рассматривал этот вариант? Питон не отвечает моим требованиям по производительности. Нужно что-то пошустрее. Хотя бы уровня Node. Но это опять компромиссы. Уже 2 недели в ступоре хожу, читаю, смотрю, слушаю, но так не могу найти консенсус.
Аноним 13/05/25 Втр 21:37:59 3453462 11
>>3453447
Чел. Ты хотя бы мвп запили для начала. А уж потом думай о производительности для своего круда. 100% ты не сможешь одновременно учить все и пилить что-то рабочее. Ты в расте только начнешь изучать лайвтаймы с боровчекером и уже забудешь о своей главной цели из-за когнитивного перегруза.
Аноним 14/05/25 Срд 00:27:56 3453566 12
>>3453388
>У раста выявил только два минуса для себя:
Я тебе добавлю третий минус от себя - время компиляции. Попробуй хоть раз скомпилировать ну какой-нибудь скажем форум целиком сделанный на расте и ты охуеешь. А то что ты сказал... Нуууу для меня это не является минусами - 1) "кривая обучения очень уж крутая" - хорошо, меньше всяких тупых детей, рукожопов и случайных людей будет. 2) "долгая разработка в сравнении в другими языками" - мне лично похуй, за меня 70% кода нейронка пишет.

>экспертных материалов по практическому применению Rust в бэкенде я не смог найти
Хуёво искал. Заходишь на amazon.com, в поиск вбиваешь слово "rust", категория "books" и там будет писят тыщь этих книг.

>Меньше всего в Go, но он не заточен на сложную бизнес-логику
Скорее проблема в тебе, а не в go. Это ты не заточен на сложную бизнес-логику.
Аноним 14/05/25 Срд 06:37:46 3453616 13
>>3453388
Никто не пишет на срасте бек для веба потому что слишком много времени занимает, ты вместо алгоритмов пишешь бойлерпринт и сражаешься с языком. Сервер игры - частично, может быть, чаты - неплохо, почему бы и нет, трансляции поедания кала - вполне рабочая тема.

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

Если хочешь писать бек на компилируемом языке, то во-первых используй zig (этот тред реклама zig на самом деле) потому что бойлерпринта меньше, во-вторых тебе придётся писать ебейшую кучу собственных велосипедов, и я что-то нихуя не уверен что это имеет смысл. Для твоей бизнес-логики придётся самому писать конечные автоматы, сигналы и эвенты, и всё это с аллокацией и структурами данных на массивах. Будешь не только бухгалтером, но и системным архитектором, лолд, готов?
Аноним 14/05/25 Срд 07:02:20 3453628 14
>>3453616
>Никто не пишет на срасте бек
ВНИМАНИЕ, ВСЕМ СРОЧНО ПЕРЕСТАТЬ ПИСАТЬ БЭК, АНОН НА ДВАЧЕ СКАЗАЛ ЧТО НА НЕМ НИКТО НЕ ПИШЕТ
ВСМЫСЛЕ УЖЕ НАПИСАЛИ ВСЁ!?!?! УДАЛЯЙТЕ!
Аноним 14/05/25 Срд 07:31:56 3453634 15
>>3453628
Ну и что ты там написал, шиз? Покажешь или как всегда?
Аноним 14/05/25 Срд 07:36:42 3453637 16
Аноним 14/05/25 Срд 07:47:35 3453642 17
>>3453637
> борда
Это хуйня которая занимает 200 строчек в JS для всего сервера и 200 строчек для клиента? Пиздец мощно. Что-то ещё будет?
Аноним 14/05/25 Срд 07:59:32 3453644 18
>>3453642
ну напиши за 200 строчек, ну или покажи борду что за 200 строчек написана
Аноним 14/05/25 Срд 08:34:11 3453652 19
>>3453644
Блядь, да что угодно https://github.com/jennypeng/ImageBoard Первое что попалось. Тут строчек 300, наверное, основная часть это счётчики, лол, которые можно написать не так уебищно. Думая основная работа с БД, роутами и АПИ для борды занимает строчек 100, не больше.

В пидорасте бойлерпринта просто дохуя. Слишком дохуя для адекватного написания бека.
Аноним 14/05/25 Срд 08:51:06 3453661 20
Untitled.png 1Кб, 50x43
50x43
image.png 21Кб, 344x559
344x559
>>3453652
> https://github.com/jennypeng/ImageBoard
ахахахаа там буквально 1 форма + просмотр

> Первое что попалось
тебе реально при поиске движков борды всё что выдало древнее говно уровня лабы 12 летней давности?
попробуй получше поискать, что то реально похожее на борду

> Думая основная работа с БД, роутами и АПИ для борды занимает строчек 100, не больше.
ну если дальше уровня лабы не уходить то да
Аноним 14/05/25 Срд 09:16:34 3453686 21
>>3453661
> ахахахаа там буквально 1 форма + просмотр
Погоди, что не так? В борде только это и есть. Треды и доски реализуются ещё двумя функциями.
> тебе реально при поиске движков борды всё что выдало древнее говно уровня лабы 12 летней давности?
Да, гугл в наши дни нихуя не ищет.
> ну если дальше уровня лабы не уходить то да
Чел, это борда. Тут нет ничего сложного. Прямо совсем ничего. На расте это сложно только из-за того что язык говно.
Аноним 14/05/25 Срд 09:19:07 3453690 22
>>3453644
Однажды в качестве proof of concept написал вики-движок на пыхе примерно в 150 строк. Правда, с безопасностью там было всё плохо.
Аноним 14/05/25 Срд 09:20:14 3453693 23
>>3453686
>Погоди, что не так? В борде только это и есть.
блять чел, ну ты глянь хотя бы как борда на которой ты сейчас находишься выглядит и что делает кроме того что просто тебе показывает треды

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

>Тут нет ничего сложного
кто тут про сложность говорит?
легко != 10 строчек кода, тут есть еще функционал кроме того чтобы тебе хтмл показать + формочку сделать
Аноним 14/05/25 Срд 09:58:17 3453719 24
>>3453693
> блять чел, ну ты глянь хотя бы как борда на которой ты сейчас находишься выглядит и что делает кроме того что просто тебе показывает треды
Так расскажи мне что она такого делает, кроме подсчёта статистики и полутра вызовов апи. Ты точно писал борду? Сколько запросов апи у тебя было?
> предлагаешь мне вместо тебя гуглить? точно сам не справишься?
Да, мне поебать на это дерьмо.
> кто тут про сложность говорит?
> легко != 10 строчек кода,
Если ты пишешь на нормальном языке для бекенда - сложность прямо пропорциональна количеству строк кода. В случае сраста это конечно не так, но это проблема языка.
> тут есть еще функционал кроме того чтобы тебе хтмл показать + формочку сделать
Это борда. Всё что борда делает - сохраняет и отправляет стринги. Доски, топ тредов и прочая хуйня решаются ещё одной строчкой которая добавляет посты в кэш/бд. Самая сложная часть харчка - это капча.
Аноним 14/05/25 Срд 10:15:41 3453750 25
image.png 11Кб, 375x199
375x199
>>3453719
>Так расскажи мне что она такого делает, кроме подсчёта статистики и полутра вызовов апи.
модерация + админка
медия
(в моем случае) реал тайм постинг
базовая безопасность (чтобы не завайпали гомонеграми)
настройка борды
избранное \ скрытие

>сложность прямо пропорциональна количеству строк кода
во дибил

>Да, мне поебать на это дерьмо.
ну так а о чем с тобой говорить?

> борда это супер просто 20 строчек кода
> хоть один движок видел\писал?
> пук среньк, всё просто строчка бд апи формочка
> ты хоть понимаешь функционал борды
> пук среньк, строчка капча
Аноним 14/05/25 Срд 10:36:40 3453786 26
>>3453750
> модерация + админка
Ого, много. Поздравляю, твой апи расширился на один запрос. Вместо пяти стало шесть. Если ты создаёшь команду чмодератеров, то будет семь. Семь апи точек, бля, много...
> медия
Что медия? Стрим файла это функция на 20 строчек. С буферами работает. Конечно, в пидорасте это будет минимум 1к строк отборного говнокода, но что поделать...
> в моем случае) реал тайм постинг
Постинг и так всегда реалтайм. Тут всё наоборот, чтобы делать постинг батчами нужно больше кода, да и нахуй это не нужно особо.
> базовая безопасность (чтобы не завайпали гомонеграми)
Две строчки кода при использовании кук, четыре строчки кода при использовании токена. Много....
> во дибил
Речь идёт про нормальный язык бекенда, а не про раст.
> ну так а о чем с тобой говорить?
Можешь ещё повизжать о том как сложно тебе было писать борду на срасте.
> > пук среньк,
Сколько вызовов апи было на твоей борде? Напиши мне это, не стесняйся.
Аноним 14/05/25 Срд 10:47:06 3453804 27
>>3453786
ну уже слишком жирно
Аноним 15/05/25 Чтв 00:58:08 3454544 28
LVipHvjfSLg.jpg 113Кб, 660x740
660x740
>>3453642
>Это хуйня которая занимает 200 строчек в JS для всего сервера и 200 строчек для клиента? Пиздец мощно. Что-то ещё будет?
У меня есть проекты на расте. Я пишу бекенд. Что ты хотел-то?
Вот описание проекта ---> https://pastebin.com/raw/RxjYq1iW
Вот пример кода ---> https://pastebin.com/raw/JBerjWZj
Там около ~130 тысяч строк лютого пиздеца на расте, не считая typescript и фронта.

мимо-другой-анон
Аноним 15/05/25 Чтв 01:24:59 3454549 29
>>3453616
>ты вместо алгоритмов пишешь бойлерпринт
Смотри... у тебя есть вот такой контент https://pastebin.com/raw/zLD4WLCr Сможешь его декодировать в бинарный файл? Я тебе даже решение на расте могу подсказать https://pastebin.com/raw/Wt90DY9p
Аноним 15/05/25 Чтв 01:26:59 3454551 30
>>3454544
> Вот пример кода
На какой нейронке генерил?
Аноним 15/05/25 Чтв 06:32:40 3454649 31
>>3453388
>кривая обучения очень уж крутая (чтобы что-то начать делать в бэке нормально нужно месяцев 12)
С растом ты будешь каждый день своей жизни учиться, потому что две трети любого кода на расте — это объявления новых вспомогательных типов для ублажения компилятора, и соответственно, работающие с тобой люди будут непрерывно писать новые и новые вспомогательные конструкции под свою логику.
Помню, я охуел, когда увидел, насколько сложно. Safe реализация двусвязанного списка на Rust настолько нереальна, что они по итогу сплошной unsafe ебанули в std.

>Меньше всего в Go, но он не заточен на сложную бизнес-логику, сделать-то можно конечно, но на костылях и с тяжелой поддержкой в дальнейшем
В чом тяжесть поддержки? Пиши на Elixir, лол.

>Это как в статьях про Python - да он может всё, очень гибкий, можно и в бэк и в ml и в гуй тоже может. А на деле - очень медлительный и очень прикладной, но хорошо для DS и ML (клей для Си в основном).
По-моему никто не скрывает, что питон еле ползает. Можешь попытаться у нейросетки поспрашивать вопросы, и подчёркивать ей, типа "я хочу не мейнстрим", "какие альтернативные взгляды на этот вопрос бывают?".
Гуй, кстати, очень грустный в питоне. Я не в последнюю очередь думал свою либу многозадачности под нужды гуя адаптировать, но там настолько всё плохо в питоне, что ну его нахуй. Питон — это реально bash, со всеми вытекающими и втекающими.
Аноним 15/05/25 Чтв 06:33:50 3454650 32
>>3453411
>От нейродебилов не получилось взять релевантную информацию. Они и про Пиструн мне говорят: О да, это отличный вопрос. Python может решить все ваши проблемы. Огромное сообщество, дохулирд фреймворков...
Странно. Можешь показать пример промта, по которому нейросетка выдала тебе хуйню?
Аноним 15/05/25 Чтв 06:37:58 3454651 33
>>3454544
>>3454549
Нейровысеры не интересуют. Следующий раз приноси свой код, посмотрю что там у тебя.

>>3454649
>две трети любого кода на расте — это объявления новых вспомогательных типов для ублажения компилятора
>Помню, я охуел, когда увидел, насколько сложно. Safe реализация двусвязанного списка на Rust настолько нереальна, что они по итогу сплошной unsafe ебанули в std.
База. А если это мультипоток будет? На этом пидорастёнок зависнет, потому что токены в GPT исчерпались.
Аноним 15/05/25 Чтв 06:45:39 3454652 34
>>3454544
>Вот описание проекта ---> https://pastebin.com/raw/RxjYq1iW
>Вот пример кода ---> https://pastebin.com/raw/JBerjWZj
>Там около ~130 тысяч строк лютого пиздеца на расте, не считая typescript и фронта
Наркоман, это ты мне про AWS чесал в облачном тхреаде?
Аноним 15/05/25 Чтв 10:11:34 3454758 35
take.png 59Кб, 1065x291
1065x291
Я вам немного раста принёс.
Аноним 15/05/25 Чтв 10:13:00 3454762 36
>>3454544
>У меня есть проекты на расте. Я пишу бекенд
Тред про системный язык, пройдите нахуй.
Аноним 15/05/25 Чтв 10:51:59 3454819 37
Почему у зига такой ублюдский тулинг спустя 5 лет? Литералли хуже крестов. Вот я создал проект через zig init, он собирается, но при сборке мне пишет:
> error: invalid option: -Dcpu
> error: invalid option: -Dtarget
> error: invalid option: -Doptimize
Что это блять, в build.zig нет никаких аргументов и я не передаю ему?
А дальше под этим стектрейс build.zig, без ошибки. Что ты хочешь, сука?
Есть менеджер пакетов, но название пакета и название модуля разное, я должен идти в репу и смотреть в zig.mod как они назвали модуль. Потом ещё прописывать в build.zig сборку и импорт каждой зависимости. При этом мне пришлось смотреть видос на ютубе как правильно добавить её в build.zig, ведь документация к zon не гуглится. Ебануться.
И эти мудаки зачем-то переписывают LLVM на зиге, не осилив даже сделать нормальную сборку и документацию. Воистину красноглазые пердоли не умеют в юзерфрендли софт, только в пердольное говно.
А потом они ещё рассказывают как у них встроен clang в компилятор и его можно использовать как более удобную замену крестового компилятора. Более удобную чем что? Чем makefile как из нулевых? При этом они рассказывают про нативную поддержку сишки без ffi в зиге, но как мне например заинклюдить Windows.h под виндой? Я должен сам окружение настраивать руками? Виндобляди даже в нулевые про такую дикость не слышали.
Аноним 15/05/25 Чтв 11:17:06 3454844 38
>>3454819
>Rust #38 /rust/
>Почему у зига

я ебу? это тред раста
Аноним 15/05/25 Чтв 16:16:05 3455279 39
Аноним 15/05/25 Чтв 17:34:08 3455343 40
15/05/25 Чтв 18:27:16 3455412 41
>>3455279
Назови своё имя, хохлодемон)
Аноним 15/05/25 Чтв 19:46:40 3455488 42
>>3455343
Неа.

Кстати, какая IDE на расте в 2025 году считается наилучшей?
А то переписывание emacs на расте забросили https://github.com/remacs/remacs
Аноним 15/05/25 Чтв 22:29:05 3455632 43
>>3455279
Умом Ржавый не понять,
И кол-вом строчек не измерить:
У него особенная стать —
В Раст можно только верить.
(Ф. Тютчев)

ПОЗДРАВЛЯЮ ВАС, РАСТОВЧАНЕ, С ДЕСЯТИЛЕТИЕМ ПОТРЯСАЮЩЕЙ РАСТ ПОБЕДЫ! ПУСТЬ ВАШ КОД БУДЕТ БЕЗОПАСНЫМ КАК НЕПРИСТУПНАЯ КРЕПОСТЬ, БЫСТРЫМ КАК ГОНОЧНЫЙ БАЛИД! ПУСТЬ ЗАВИСТНИКИ КРИЧАТ ПРО СВОЮ СЛАБОСТЬ И НИАСИЛ СИНТАКСИСА! СЛАВА РАСТУ! ПОБЕДЕ СЛАВА!
Аноним 16/05/25 Птн 08:17:53 3455744 44
>>3455632
Давно пора, ебена мать, умом растишку понимать!
Аноним 17/05/25 Суб 07:22:39 3456720 45
rust2.png 25Кб, 673x241
673x241
rust1.png 16Кб, 496x203
496x203
не понимаю. Почему на обращения на получение элемента в векторе через &v[0] ругается, а на &v.get(0) нет
Аноним 17/05/25 Суб 07:55:27 3456726 46
>>3456720
Потому что раст сделали наглухо пизданутые чулочники. Функция get возвращает указатель на элемент массива. Просто получить элемент по индексу будет v[]
Вот так работает:
fn main() {
let mut v = vec![1,2,3,4,5];
let first = v[0];
v[0] = 42;
v.push(6);
println!("{first}");
println!("{v:#?}");
}
Аноним 17/05/25 Суб 07:56:57 3456727 47
>>3456720
У тебя println! закомментирован на втором пике.
Аноним 17/05/25 Суб 08:24:18 3456731 48
party.jpg 248Кб, 1752x996
1752x996
Live from the 10 Years of Rust celebration in Utrecht, Netherlands, the Rust team is happy to announce a new version of Rust, 1.87.0!
Аноним 17/05/25 Суб 10:04:58 3456779 49
Аноним 17/05/25 Суб 10:16:07 3456790 50
image.png 176Кб, 313x305
313x305
Аноним 17/05/25 Суб 10:35:22 3456807 51
>>3456731
Лучше бы показали кто это говно спонсирует. А то такие довольные, явно баблищем их заваливают, и неспроста, явно не от полезности и прибыльности этого высера.
Аноним 17/05/25 Суб 11:18:02 3456825 52
>>3456790
Челик похож на мару бос.
Аноним 17/05/25 Суб 11:34:13 3456840 53
>>3456807
На официальном сайте внизу есть ссылки на спонсоров.
Аноним 17/05/25 Суб 13:11:49 3456924 54
>>3456825
Кто она по национальности? He? She? His? Hmm? Sheet?
Аноним 17/05/25 Суб 17:21:06 3457066 55
>>3456720
>>3456726
fn main() {
let mut v = vec![1, 2, 3, 4, 5];
{
let first = &v[0];
println!("The first element is: {}", first);

}
v.push(6);
println!("The vector is: {:?}", v);
}

Причина подрыва?
Аноним 17/05/25 Суб 17:51:25 3457083 56
image.png 1174Кб, 1325x562
1325x562
Аноним 17/05/25 Суб 18:05:06 3457092 57
>>3457083
Я знаю что растанам больно от реальности, но ЯП с безопасной памятью - это в первую очередь джава и шарп. Про раст никогда речи даже и не шло.
Аноним 17/05/25 Суб 18:37:22 3457128 58
>>3457092
ни один из них не системный, лучше бы го хотя бы привел
Аноним 17/05/25 Суб 18:42:05 3457130 59
>>3457128
На системных ЯП ничего кроме ОС не пишут. Все реальные задачи решаются безопасными языками с GC.
Аноним 17/05/25 Суб 18:51:12 3457136 60
🤨.jpg 58Кб, 576x1024
576x1024
>>3457130
>На системных ЯП ничего кроме ОС не пишут
ты дурак?
Аноним 17/05/25 Суб 18:52:34 3457137 61
>>3457136
А зачем на них что-то другое писать? В вебе у джавы производительность выше раста.
Аноним 17/05/25 Суб 18:53:35 3457139 62
>>3457137
>В вебе
в браузерах я так понимаю тоже?
Аноним 17/05/25 Суб 20:00:45 3457195 63
>>3457137
Поэтому тот же дискорд на раст а не жаву переписывали?
Аноним 17/05/25 Суб 20:32:37 3457217 64
>>3457195
Для освоения выделенных деняк.
Аноним 17/05/25 Суб 20:37:18 3457223 65
>>3457217
Откуда у игрулькодаунов деньги?
Аноним 17/05/25 Суб 23:52:55 3457332 66
Аноним 18/05/25 Вск 08:57:01 3457421 67
rust3.png 84Кб, 1090x755
1090x755
rust4.png 27Кб, 745x240
745x240
rust5.png 48Кб, 663x464
663x464
решаю задание из туториала. Норм?
Как комментарии принято оформлять?
Аноним 18/05/25 Вск 17:48:27 3457711 68
>>3453616
Чел весь финтех сидит на расте и пишет на нем свои микрописьки, альфа, сбер, тинек. Все вакансии открыты можешь сам убедиться в этом.

Впрочем то что это хуйня какая то я согласен. Даже не представляю сколько там у них ебли с этим, как будто проще было на плюсах даже кек
Аноним 18/05/25 Вск 17:50:29 3457712 69
Аноним 18/05/25 Вск 18:09:09 3457726 70
>>3457711
> Чел весь финтех сидит на расте
Проснись.
Аноним 18/05/25 Вск 21:33:29 3457831 71
>>3457711
У альфы вижу только одну вакансию с растом. И там же рядом го, жава. У сбера тоже одна. У тинька ноль.
Аноним 18/05/25 Вск 23:25:25 3457877 72
>>3457831
Ну да, ну крч у них есть жесткие команды которые пишут на расте требовательное рпс. С улицы не залететь, но пишут же

>>3457726
Ладно, согласен погорячился
Аноним 18/05/25 Вск 23:50:36 3457891 73
>>3457877
Ну крч ты начал фантазировать про пидорастные команды которых нет. Уверен они там пишут полтора микросервиса, связанные с либой на расте. А в бизнес-логику и БД их даже близко не пускают, даже на полшишечки.
Аноним 19/05/25 Пнд 00:02:39 3457898 74
>>3457891
Ну ладно, да. Ты только угомонись дерьмое ебаное
Аноним 19/05/25 Пнд 00:25:06 3457907 75
>>3457898
Не трясись ты так. Подумаешь обосрался прилюдно.
Аноним 19/05/25 Пнд 00:26:58 3457908 76
Аноним 19/05/25 Пнд 00:29:22 3457910 77
Аноним 19/05/25 Пнд 00:34:11 3457911 78
>>3457910
> ответ
> аргумент
Какой же ты пидор.
Аноним 19/05/25 Пнд 01:22:02 3457922 79
>>3457908
Адаптеры крайней будет писать удобнее и ну мере конвертеры по.
Аноним 19/05/25 Пнд 14:14:54 3458149 80
>>3455279
Языку всего десять лет, а его уже интегрируют в линукс и постепенно вытесняют плюсоговно (в предметной области максимально ригидной к изменениям). Для сравнения какому-нибудь пистону уже больше 30 лет, а выстрелил он только когда нейросетки начали разрабатывать.
Аноним 20/05/25 Втр 01:19:15 3458364 81
кто нибудь собирал rust под mipsel?
на оф сайте нет версии выше 1.71.1
Аноним 20/05/25 Втр 02:39:38 3458381 82
>>3458149
>а его уже интегрируют в линукс
Что педики Пинусу Трольвальдосу скажут, то он и будет делать
Аноним 20/05/25 Втр 03:47:37 3458386 83
Аноним 20/05/25 Втр 07:45:27 3458406 84
>>3458149
а на си уже через год после выхода портировали весь юних, значит си в 10 раз пизже
Аноним 20/05/25 Втр 09:37:18 3458473 85
>>3458381
Почему плюсопедики за 40 лет не смогли навязать пинусу свою волю, а растофаги смогли?
Аноним 20/05/25 Втр 09:38:04 3458474 86
>>3458406
Все так. Для своего времени это был гигапрорыв.
Аноним 20/05/25 Втр 09:49:45 3458483 87
>>3458473
Линусу это пропихнули после курса таблеток и прочих нападок со стороны небазового сообщества.
Аноним 20/05/25 Втр 11:53:37 3458551 88
>>3458149
плюсы за столько лет к линуксу даже не подпустили
Аноним 20/05/25 Втр 13:20:01 3458600 89
>>3458551
Ну и прекрасно, Линукс это говноговна
Аноним 20/05/25 Втр 16:48:08 3458817 90
>>3458483
Все так. Лично Сорос и Блэкрок пропихнули.
Аноним 20/05/25 Втр 18:59:23 3458976 91
>>3458817
И лично выебали Пинуса в жопу
Аноним 21/05/25 Срд 09:42:31 3459234 92
>>3458483
>Линусу это пропихнули после курса таблеток и прочих нападок со стороны небазового сообщества.
Линус уже давно выполняет роль наёмного сотрудника, который будет делать то, что ему скажут, "love it or leave it". Ему просто напомнили об этом, когда он однажды выебнулся. Всем мейнтейнерам об этом аналогично напоминают. Никакой свободы в ядре линя уже давно нет, вся разработка лежит под корпорациями — свобода заключается в том, как эти хотелки корпораций ты будешь выполнять.

Есть объективные проблемы со включением Rust в ядре, например, тот факт, что изначально это был специализированный инструмент для написания браузера — взять те же Sync/Send, которые приколочены гвоздями к компилятору и очевидно являются узкоспециализированным инструментом, бесполезным в ядре, в котором не просто потоки и lock-free код, а есть прерывания, у которых особая культура кодинга.
Пришлось вычищать стандартную библиотеку от браузерного говна, и только после этого Rust подпустили к написанию драйверов. Я не верю, что раст когда-то пустят дальше, потому что дальше там просто сплошняком unsafe код, который лишает применение Rust смысла — всё ядро нужно будет переписывать под прихоти раста, как и вообще любая строчка кода требует усилий для ублажения компилятора, иначе компилятор её не примет.

>>3458551
>плюсы за столько лет к линуксу даже не подпустили
Если от плюсов брать безопасное подмножество, то от них почти ничего не остаётся по итогу — в помойку отправляется 80% std и две трети спецификации C++. И даже после этого компиляторы C++ настолько ебливые, что их очень тяжело сделать совместимыми и безопасными, слишком уж это беспорядочное нагромождение фич и слоёв совместимости. Сука, C++ только несколько лет назад научилось линковать static поля в объявлении класса — это пиздец товарищи, как с яхзыком без поддержки интерфейсов типов работать? В языке есть hpp-реализация и cpp-реализация, но интерфейсов в C++ не существует, помимо сишных. А если ты всё равно пользуешься только сишными фичами, то зачем тебе C++?
Аноним 21/05/25 Срд 09:47:17 3459238 93
>>3459234
>интерфейсов типов
нинужна
Аноним 21/05/25 Срд 09:54:14 3459244 94
>>3459234
> интерфейсов типов
> hpp-реализация и cpp-реализация
Шиз, зачем ты пишешь на си с классами и жалуешься на кресты? Это как писать на расте и жаловаться что ГОвно плохое. Модули уже давно в крестах работают стабильно, сишные хедеры больше не нужны. Что ты там про линковку выдумываешь вообще не понятно, экспорты работают как и должны.
Аноним 21/05/25 Срд 10:20:16 3459263 95
>>3459244
> Модули уже давно в крестах работают стабильно, сишные хедеры больше не нужны.
Давно? С 2024 стабильная поддержка в основным компиляторах — это "давно"? Ты какого года рождения? Для меня "давно" модулей C++ вообще не существовало даже в прототипах.
Так-то мне самому модули C++ тоже нравятся — за 35 лет пора бы уже.

Тем не менее, одних модулей недостаточно для решения проблема. Например, проблему непрозрачных и private объявлений типов модули не решают — это по прежнему можно описать только сишными типами. Исключения для ядерной разработки нужно вырезать из яызка — а хули в C++ остаётся без исключений и опирающегося на них RAII? Как я и писал — мало что остаётся.
Аноним 21/05/25 Срд 10:24:59 3459265 96
>>3459263
> проблему непрозрачных и private объявлений типов
Шизик, какие ты там проблемы нашёл? Для начала забудь про сишку и пиши на крестах.
Аноним 21/05/25 Срд 10:37:38 3459278 97
>>3459234
>сплошняком unsafe код, который лишает применение Rust
Я уже выше вам дэбилам говорил, что раст это не про безопастность, а про нескучный синтаксис, раст никакой безопасности не гарантирует, безопастность может гарантировать только человек, который пишет на язык_нейм и доказательства.
Аноним 21/05/25 Срд 10:40:22 3459279 98
>>3459244
>на си с классами и жалуешься на кресты
>си с классами
А если он не использует ооп-дерьмо, а пользуется тем, что в плюсах nullptr - это ключевое слово, а булы - это отдельные типы, это кресты или "си с классами"?
Аноним 21/05/25 Срд 10:42:17 3459281 99
>>3459279
Это ещё хуже - он просто притащил крестовый std в сишку и пишет на сишке.
Аноним 21/05/25 Срд 10:53:54 3459292 100
>>3459281
>крестовый std
Нахуя его использовать? Алсо, тех же рефов нет в си, а это пиздатая фича, использовать супер ограниченное подмножество плюсов вообще говоря годная идея. Так ты не ответил, что такое си с классами?
Аноним 21/05/25 Срд 11:12:13 3459307 101
image.jpg 106Кб, 523x523
523x523
image1.jpg 6056Кб, 3000x4000
3000x4000
Эх ебёт же кто-то такую..
Аноним 21/05/25 Срд 11:32:30 3459323 102
>>3459307
Судя по серьге врядли. Интересно она кобла или ковырялка?
Аноним 21/05/25 Срд 11:59:02 3459331 103
>>3459307
И не таких ебут. Что поделать, по статистике на 9 кунчиков в мире 10 всратух.
Аноним 21/05/25 Срд 12:16:34 3459340 104
Аноним 21/05/25 Срд 12:28:40 3459356 105
>>3459340
Какой яп, такое и обсуждение.
Аноним 21/05/25 Срд 13:42:41 3459453 106
>>3459340
Но он пидераст фить ха
Аноним 23/05/25 Птн 17:05:37 3460917 107
>>3460897
>Блять и чо? Я дрочу на трапов ииии?
Ты гей просто. Гомосексуал. Гомосексуалист, как раньше говорили.
Аноним 23/05/25 Птн 17:25:04 3460931 108
Аноним 24/05/25 Суб 08:19:05 3461225 109
таки не могу понять, чем отличается &str от String.

"asdfaf" выдает &str, ссылку на строку. Кто при этом владеет строкой?
Аноним 24/05/25 Суб 09:51:33 3461261 110
>>3461225
По-твоему правомерно говорить о "владении" без соответствующей записи? По-моему, нихуя. Прямая цитата из учебника: "такая запись становится владельцем".
Аноним 24/05/25 Суб 10:04:54 3461274 111
>в растотреде удалили пост с трапопикчей
Рустакеаны, вас это не задевает?
Аноним 24/05/25 Суб 12:23:45 3461412 112
Нужно ли знать С++, чтобы писать на Rust?
Аноним 24/05/25 Суб 18:31:33 3461686 113
>>3461412
Зачем тебе писать на раст тогда. Зачем в принципе писать на раст, чтобы с языком сражаться?
Аноним 24/05/25 Суб 20:36:51 3461737 114
8724be18-d947-4[...].png 2629Кб, 1024x1536
1024x1536
Главная истеричка треда
Аноним 24/05/25 Суб 22:15:26 3461814 115
>>3461737
сам то понял что сказать хотел?
почему он растоман когда пишет не писать на расте
Аноним 25/05/25 Вск 03:07:09 3461909 116
Я вот не понимаю, вроде язык считается новопарадигменным, современным етц. НО сука вся та же сишная пердольксольная шляпа присутствует

fn, str, dyn, fs, Vec и прочее. Че больные что-ли?

Мы вроде не в девяностых где нужно было сэкономить пару килобайт текста, нахуя эти сокращения сраные нужны? Что полностью так впадлу слово написать? При чем не понятно по какому принципу сокращения, одна часть языка нормальная, другую решили отрезать. Какого хуя String полностью, а Vec уже сокращение?
Аноним 25/05/25 Вск 03:10:13 3461910 117
>>3461909
Vec - базовый тип. String - обертка.
Аноним 25/05/25 Вск 03:18:30 3461911 118
>>3461909
А то! Нет бы сразу написать AbstractProxyDecoratorBeanImpl
Аноним 25/05/25 Вск 12:44:34 3462067 119
>>3461910
Напиздела пидорастическая проститутка придорожная
Аноним 25/05/25 Вск 13:08:22 3462093 120
>>3461686
На расте есть сборщик карго, а не С++ ничего такого даже близко нет
Аноним 25/05/25 Вск 13:31:01 3462112 121
>>3462093
>На расте есть сборщик карго, а не С++ ничего такого даже близко нет
Уже отвечали — vcpkg есть для C++.
Аноним 25/05/25 Вск 13:31:55 3462113 122
Аноним 25/05/25 Вск 13:34:48 3462114 123
>>3462112
>vcpkg
уже отвечали, даже близко нет
Аноним 25/05/25 Вск 13:51:43 3462116 124
>>3462114
>уже отвечали, даже близко нет
Уже отвечали — близко да. Rust не умеет сам собираться на винде, просто для справки.
Аноним 25/05/25 Вск 13:53:17 3462118 125
>>3462116
> близко да
копиум
> сам собираться
сам то понял что сказал, затупок-студентик?
Аноним 25/05/25 Вск 16:21:15 3462216 126
>>3462118
>сам то понял что сказал, затупок-студентик?
Нет это ты, долбоебина, не смог решить задачи, которую решает chatgpt даже старой версии. Rust не умеет комплиировать сорцы в бинарники под win32 без установки стороннего ПО.
Аноним 25/05/25 Вск 16:49:10 3462225 127
>>3462216
я тебя услышал, студентик долбоёбик, напиши еще 10 постов где себя тупизднем выставляешь не понимающем нихуя в матчасти, а то думаю еще не всем понятно
Аноним 25/05/25 Вск 17:09:16 3462243 128
>>3462114
Поддерживаю, у раста хуже vcpkg. Где-то посередине между зигом в простынями скриптов сборки на зиге и простотой vcpkg.
Аноним 25/05/25 Вск 17:20:48 3462248 129
>>3462243
Ага. Когда хочешь версию либы запинить в vcpkg.json то нужно искать и прописывать хеш из репозитория vcpkg, когда эту версию запушили. Ничего более наркоманского Майкрософт придумать не смогла..
Аноним 25/05/25 Вск 17:27:44 3462249 130
Аноним 25/05/25 Вск 17:29:20 3462252 131
>>3462093
Ты сборщиком пользуешься примерно пару раз один раз за весь проект.
Аноним 25/05/25 Вск 17:38:55 3462259 132
Аноним 25/05/25 Вск 21:13:29 3462383 133
>>3461412
>Нужно ли знать С++, чтобы писать на Rust?
Нужно ли знать итальянскую кухню, чтобы готовить русские блюда?
Нужно ли знать вьетнамский язык, чтобы говорить по-немецки?
Нужно ли уметь водить машину, чтобы научиться ездить на мотоцикле?

Такого же рода вопросы.
Аноним 26/05/25 Пнд 03:38:32 3462578 134
Собеседование на раст-девелопера:

1. Что такое турборыба
2. Какого цвета чулочки сейчас на вас
Аноним 26/05/25 Пнд 05:32:26 3462586 135
unnamed.webp 7Кб, 640x360
640x360
>>3462578
>1. Что такое турборыба
Ну кстати это не шутки. Турборыба действительно используется, чтобы показать компилятору в какой тип приводить - ::<НекийТип>
Аноним 26/05/25 Пнд 08:16:45 3462621 136
>>3462112
>vcpkg
А он умеет собирать проект по команде vcpkg build? Или прежде надо ручками написать CMake-душнину?
Аноним 26/05/25 Пнд 11:51:32 3462782 137
Реально ли взять книгу по алгоритмам и запрограммировать их на Rust без использования unsafe? Мне вот почему-то кажется, что любой алгоритм на графах просто невозможно реализовать из-за слишком жесткой системы владения. Естественно, мы рассматриваем реализацию через ссылки и динамическую память, а не статические матрицы, как делают некоторые студенты в своих лабах.
Аноним 26/05/25 Пнд 12:37:40 3462817 138
>>3462782
>из-за слишком жесткой системы владения
Значит раст плохой инструмент для этой задачи. Проходите мимо.
>а не статические матрицы
>как делают некоторые студенты в своих лабах
Но повышается локальность данных. Алсо, если идти подобным путём, то получаем нулевую пользу от баран чекера.
Аноним 26/05/25 Пнд 12:39:03 3462818 139
Водкакнига.jpeg 79Кб, 700x933
700x933
Подскажите хорошую бумажную книгу по Rust?
Аноним 26/05/25 Пнд 12:40:48 3462819 140
>>3461910
>Vec - базовый тип. String - обертка.

Про fn что скажешь? У меня это основная претензия сейчас

Мимо вкатун с C-образных языков

Вообще, нахуя синтаксис изобретали новый? Что это дало по факту?
Аноним 26/05/25 Пнд 12:55:21 3462837 141
>>3462819
>Вообще, нахуя синтаксис изобретали новый? Что это дало по факту?
Ничего не дало, пидорасам захотелось сделать что-то ПРОГРЕССИВНОЕ просто так - это же пидорасы. Не потому что оно лучше, а потому что оно отличается от старого и типа нитакоекакфсе, понимаешь? В итоге ожидаемо получился кал, даже говноланг лучше выглядит.
Аноним 26/05/25 Пнд 13:02:03 3462844 142
>>3462837
>пидорасам захотелось сделать что-то ПРОГРЕССИВНОЕ просто так - это же пидорасы
Те, кто долго жил среди пидарасов, говорят, что они втайне стыдятся своего греха и стараются поразить всякими фокусами. Думают про себя так: «Да, я пидарас. Так уж вышло – что теперь делать… Но может быть, я гениальный пидарас! Вдруг я напишу удивительную музыку! Разве посмеют плохо говорить о гениальном музыканте…» И поэтому все время стараются придумать новую музыку, чтобы не стыдно было и дальше харить друг друга в дупло. И если б делали тихо, в специальном обитом пробкой месте, то всем было бы так же безразлично, как и то, что долбятся в сраку. Но их музыку приходится слушать каждый день, ибо заводят ее повсеместно. И потому не слышим ни ветра, ни моря, ни шороха листьев, ни пения птиц. А только один и тот же пустой и мертвый звук, которым хотят удивить, запуская его в небо под разными углами. Бывает, правда, что у пидарасов ломается музыкальная установка. В такие минуты спеши слушать тишину.
Аноним 26/05/25 Пнд 13:27:55 3462881 143
>>3462621
>А он умеет собирать проект по команде vcpkg build? Или прежде надо ручками написать CMake-душнину?
Cargo — это игрушка для написания hello world. Когда проект становится сложнее, то начинается:
https://github.com/ranger-finance/ostium-rust-sdk/blob/main/build.rs
https://github.com/rust-random/getrandom/blob/master/build.rs
https://github.com/rust-lang/libz-sys/blob/main/build.rs
https://github.com/dtolnay/proc-macro2/blob/master/build.rs
Я советую очень внимательно посмотреть на последний скрипт и осознать суть проблемы, которую я писал выше — вся "простота" опирается на единственный компилятор и тулчейн. Если компилятор-тулчейн не один, а если ещё и внешнее окружение может быть разное — всё, пиздец, приехали, расчехляй build.rs.

С другой стороны, действительно, включение одной либы на CMake выглядит больше:
option(ENABLE_FOO "Enable the Foo feature" ON)
if (ENABLE_FOO)
find_package(Foo REQUIRED)
target_link_libraries(myapp PRIVATE Foo::Foo)
endif()

Я для ответа попытался найти что-то масштаба SDL2, но ничего подобного для Rust просто нет. SDL2 я люблю потому, что у неё одни из самых ебливых зависимостей, потому что она сама абстрагирует особенности целевых платформ. Но ящик для Rust просто оборачивает SDL2 в FFI, полагаясь на уже произведённую CMake-ом конфигурацию при сборке SDL2.
Самая писечка:
https://github.com/Rust-SDL2/rust-sdl2/blob/master/Cargo.toml
[package.metadata.vcpkg]
dependencies = ["sdl2"]
Ой, шо за хуйня, Cargo не может собрать SDL2 на винде без vcpkg. Как же так?
Я напоминаю, что SDL2 — это каких-то сраных 150 тыс строк, это даже не GTK4, в котором уже порядка 600 тыс строк. Возьмите и перепишите SDl2 на расте! — А, не, не хотим, слишком сложно, хотим cargo build.

Ещё раз повторюсь: Cargo и Rust работают так классно, пока их используют в роли потешной дёргалки для внешних библиотек, пока им самим не нужно адаптироваться под окружение.
Питон тридцать лет назад прошёл по ТЕМ ЖЕ граблям, когда его система сборки считала, что на компьютере может быть единственный интерпретатор, единственный набор библиотек, и вообще, подходит любая платформа, если эта платформа — Unix.

Да, кстати, чуть не забыл, вообще-то в мире бывают ситуации, когда существует более одного репозитория, потому что на некоторых ЯП пишут что-то большее, чем hello world-ы, потому возникают патченные библиотеки, у которых своё версионирование — удачи применять pkgname >= 1.2.1 в таком случае. В данном случае я соглашусь с тем, что всё-таки дефолтное версионированние для центральной репы Cargo всё-таки проще, а сложные случаи такие же сложные, как и в vcpkg.
Аноним 26/05/25 Пнд 13:43:05 3462891 144
>>3462881
Если не заниматься линковкой архивов/шаред объектов, зачем вообще системы модулей/пакетов в целом, если можно дёргать репозиторий с исходниками?
Аноним 26/05/25 Пнд 13:49:30 3462894 145
>>3462881
Ещё добавлю, build.rs/build.zig - це харашо, потому что это 1 система сборки на язык, а в сях их больше 1-й, ну там Autotools/Cmake/Meson, если что не спорю с утверждением "Cargo — это игрушка для написания hello world".
>Я советую очень внимательно посмотреть на последний скрипт
Килотонны сборочного кода это везде так, где не hello world надо собирать, тут да, просто не отделаешься, если надо писать, то придётся написать.
https://github.com/systemd/systemd/blob/main/meson.build
Аноним 26/05/25 Пнд 14:47:47 3462941 146
>>3462891
>Если не заниматься линковкой архивов/шаред объектов, зачем вообще системы модулей/пакетов в целом, если можно дёргать репозиторий с исходниками?
Я напоминаю, что Cargo не в последнюю очередь был создан для того, чтобы побороть бесконечно медленную компиляцию в Rust. Без этой хуйни можно просто скачивать сорцы с гитхабов и класть в один каталог — зачем их как-то предварительно собирать, если они на одном языке и для одного тулчейна?
Тот же Delphi/Pascal, с которого я начинал и в котором я обожаю систему сборки, может вообще собирать огромный проект без единого прекомпилированного модуля. У меня так и было: полная сборка 6 млн строк библиотек из сорцов целых 5 минут собиралось на двухъяденой машине в хуй знает каком году — нейросетка мне подсказывает, что аналогичный объем кода на расте на той же машине будет собираться 3 часа. Инкрементальная сборка не делфи где-то 20 секунд была.

>3462894
>build.rs/build.zig - це харашо, потому что это 1 система сборки на язык, а в сях их больше 1-й, ну там Autotools/Cmake/Meson
Cargo НЕ решает целого ряда задач, для которых нужны Autotools/CMake/Meson. А именно — платформоспецифичная конфигурация зоопарка библиотек и инструментов на разных ЯП. Там, где нужно это сделать — Cargo дёргает тот же vcpkg (который дёргает cmake), как я показывал выше.

>Килотонны сборочного кода это везде так, где не hello world надо собирать, тут да, просто не отделаешься, если надо писать, то придётся написать.
Если взять скрип попроще:
https://github.com/DPDK/dpdk/blob/main/meson.build
где половину кода — это просто принты, то даже тут скрипт build.rs выглядит жирнее в два раза:
https://pastebin.com/jQzw8eYv
Нужно понимать, что DSL для CMake/Meson созданы не просто так, они решают задачу, которые неудобно решать ни башем, ни питоном, ни C/C++. Я сам имел честь делать проект на SCons, и я знатно наебался с этими вашими Тьюринг полными ЯП. Но разрабы Cargo посчитали, что они самые умные и им DSL не нужен.
По факту в Cargo просто повторили NPM со всеми его недостатками, а именно — хуёвой поддержкой сторонних средств сборки и распределённых источников сорцов (хорошо работают только если все пакеты есть в центральной репе). И лучшее, что может Cargo — это дёрнуть те же vcpkg+CMake.

Если же Rust начнёт претендовать на системный ЯП с собственным управлением внешними зависимостями, то тот же Meson внезапно напялят на Cargo, будете писать в дополнение к build.rs еще и meson.build, и рассказывать, что "лучше придумать было нельзя".
Аноним 26/05/25 Пнд 14:49:08 3462944 147
>>3462819
Не знаю, по-моему всё красиво.

Мимо вкатун из ниоткуда
Аноним 26/05/25 Пнд 14:49:44 3462947 148
опять троллинг тупостью от постеров?

систему сборки от пакетного менеджера отличить не могут и понять кто что делать должен?
Аноним 26/05/25 Пнд 14:51:40 3462949 149
>>3462947
>систему сборки от пакетного менеджера отличить не могут и понять кто что делать должен?
А где система сборки для Rust? Её нету.
Аноним 26/05/25 Пнд 15:26:41 3462989 150
>>3452718 (OP)
Какие чулочки и анальные пробки вы используете при разработке?
Аноним 26/05/25 Пнд 15:38:59 3463004 151
Аноним 26/05/25 Пнд 17:41:53 3463139 152
Аноним 26/05/25 Пнд 17:55:15 3463154 153
81CPbjLviYL.SL1[...].jpg 146Кб, 1143x1500
1143x1500
61Yg+YCq0gL.SL1[...].jpg 95Кб, 1000x1233
1000x1233
71chlL-lOCL.SL1[...].jpg 103Кб, 1216x1500
1216x1500
711iw6gcMSL.SL1[...].jpg 86Кб, 1189x1500
1189x1500
>>3462818
>хорошую бумажную книгу
Аноним 26/05/25 Пнд 18:33:37 3463181 154
Аноним 26/05/25 Пнд 18:37:43 3463184 155
>>3463181
У вас мегасервисы и гигасервисы? Понимаю..
Аноним 26/05/25 Пнд 19:27:25 3463242 156
Аноним 26/05/25 Пнд 20:04:11 3463278 157
>>3463242
>A nanoservice has the ability to run as a microservice if needed. However, a nanoservice also has the ability to be compiled for use within another server.
Получается обычные микросервисы которые можно в один бинарь объединить?
Звучит прикольно конечно, оссобено если они в одном бинаре как то эффективно между собой общаться начнут, но хзы какую эту проблему решает
Аноним 26/05/25 Пнд 20:08:13 3463281 158
>>3463278
Зумеры изобрели dll библиотеки.
Аноним 26/05/25 Пнд 20:43:49 3463312 159
>>3463281
>dll
Спермоблядь, плиз.
Аноним 27/05/25 Втр 00:20:10 3463407 160
Что там по вкату в айти с вашим чудо-языком?
27/05/25 Втр 01:30:16 3463413 161
Без названия.jpeg 195Кб, 1200x630
1200x630
>>3463278
>Звучит прикольно конечно, оссобено если они в одном бинаре как то эффективно между собой общаться начнут, но хз какую эту проблему решает
Сам автор объяснял https://youtu.be/J94ARUzhhWI?t=924 что
был кубернетис кластер, но его сложно было тестировать на локалхосте, отслеживать http-запросы и т.д. Они тогда разделили проект на несколько воркспейсов и закатали их в один dockerfile. В итоге несколько наносервисов сидят в одном докерфайле и общаются по tcp через контракты. Получается строгая типизация, проще тестирование и нет запросов по сети.

Но не суть. Это что-то типа тоника https://docs.rs/tonic/latest/tonic/ но чуть более колхозная реализация. Мне ещё нравится курс "Rust, data engineering course". Но его можно только купить, на торрентах нет нигде.
Аноним 27/05/25 Втр 01:36:52 3463414 162
1665175154326.png 416Кб, 2873x1489
2873x1489
>>3463413
> на торрентах нет нигде
Аноним 27/05/25 Втр 01:48:21 3463416 163
>>3463407
Нулевой, вката нет. Можешь только на месте затащить в проекты, обладая достаточной экспертизой
27/05/25 Втр 02:12:44 3463417 164
Аноним 27/05/25 Втр 10:51:29 3463554 165
Каракал рычит ш[...].mp4 10285Кб, 1080x1920, 00:00:14
1080x1920
>>3463154
>>хорошую бумажную книгу

Мне нужна одна книга, а не 4. И она нужна на русском языке, я ебал в рот изучать новую область на неродном
Аноним 27/05/25 Втр 11:31:29 3463588 166
>>3463416
>Нулевой, вката нет. Можешь только на месте затащить в проекты, обладая достаточной экспертизой
Это показательно. Ещё раз повторяясь: писать код на Rust сложно, долго, и дорого. В том числе из-за пиздецки долгой компиляции. Да, нейросетки ускоряют процесс, но другие ЯП они ускоряют ещё сильнее. Итого что-то более-менее серьёзное на Rust представляет собой тупо дёргалку библиотек на C/C++ — о какой безопасности указателей мы тогда ведём речь?
Аноним 27/05/25 Втр 11:51:21 3463602 167
>>3463588
Скоро Пинус Трольвальдос свое говноподелие на Руст перепишет
Аноним 27/05/25 Втр 12:09:51 3463611 168
Аноним 27/05/25 Втр 12:40:11 3463625 169
>>3463602
>Скоро Пинус Трольвальдос свое говноподелие на Руст перепишет
Очень нескоро. Им для драйверов пришлось std раста переделывать.

>>3463611
>>https://crates.io/crates/petgraph/0.8.1/dependencies
>Ебал в рот этот продукт нпмоподобный.
>>графы
>>алгоритмы
>>хуилион зависимостей
>Чёт я охуеваю.
Ну так они автоматически разрешаются Cargo, чо ты паришься? Да, в C/C++ большая часть этих зависимостей была бы в самом проекте.
Аноним 27/05/25 Втр 12:58:05 3463638 170
>>3463611
> нпм
Ну до этого кала невозможно дотянуться, он задал слишком высокую планку. Я помню как-то пытался развернуть китайский кал на ноде, там 1500 зависимостей и npm где-то на 800 зависимости отъёбывает, жмёшь рестарт сборки, он доходит до 850 и опять отъёбывает, и так по 50 зависимостей, причём каждый запуск пересборки это 10 минут. Я так долго даже с крестами никогда не ебался, как с нодой. А ещё если TS есть в проекте, это вообще мрак.
>>3463625
> они автоматически разрешаются Cargo
Проблема в том что время сборки улетает в космос, т.к. карга пересобирает часть зависимостей. У того же bevy каждая пересборка пересобирет 10 зависимостей из 350, в итоге поменял строчку, нажал сборку и ждёшь минуту-две в хеллоу-ворлде. Ещё и нет глобального кэша. Для примера опять тот же vcpkg можно привести, где есть нормальный глобальный кэш, зависимость собирается только один раз для всех проектов.
Алсо, почему так получилось что только на на крестах в msvc есть хот-релоад, а больше компилируемого ЯП с таким не существует? С задачей поменять строчку кода на горячую и сразу увидеть изменения справляется отлично.
Аноним 27/05/25 Втр 13:00:50 3463642 171
>>3463638
потому что нет abi а значит и нет .dll\.so
Аноним 27/05/25 Втр 13:14:53 3463650 172
>>3463554
>неродном
В ойти родной - это английский.
Аноним 27/05/25 Втр 13:23:08 3463656 173
>>3463625
>большая часть этих зависимостей была бы в самом проекте.
Что хорошо и правильно.
>>3463650
Он толстит.
Аноним 27/05/25 Втр 15:31:31 3463791 174
>>3463638
>Алсо, почему так получилось что только на на крестах в msvc есть хот-релоад, а больше компилируемого ЯП с таким не существует?
Спорная фича в целом. Если мне нужно один раз изменить поведение логики, то я просто в отладчике меняю переменные. Уже на уровне оптимизации "-Og" код становится настолько хуй пойми каким, что вообще теоретическая возможность его горячей подмены становится сомнительной — слишком много вещей потенциально может поменять одна строчка кода.
Во всяких там JVM/CLR/V8 есть заранее заложенные алгоритмы JIT-оптимизации-деоптимизации, благодаря которым можно нужную функцию деоптимизировать и подменить, но в AoT компиляции такой возможности нет.

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

Вот интерактивный REPL уже есть в отладчиках-компиляторах:
https://clang.llvm.org/docs/ClangRepl.html
Чо вам ещо надо?
Аноним 27/05/25 Втр 16:17:08 3463839 175
>>3463791
> Если мне нужно один раз изменить поведение логики, то я просто в отладчике меняю переменные.
Хот-релоад тупа быстрее, если большой проект. Отладчик слишком ограниченный контроль имеет, хот-релоад же любой код может пропатчить налету.
> вообще теоретическая возможность его горячей подмены становится сомнительной — слишком много вещей потенциально может поменять одна строчка кода
В msvc хот-релоад работает с О2, главное чтобы LTO выключено было.
Аноним 27/05/25 Втр 17:36:15 3463910 176
>>3463839
>хот-релоад же любой код может пропатчить налету
И нахуя? Откуда ты знаешь, что старый код не наделал сайдэффектов?

>В msvc хот-релоад работает с О2, главное чтобы LTO выключено было.
Мне нейросетка говорит, что с /O2 не работает. Уже сделали поддержку?
Аноним 27/05/25 Втр 17:38:44 3463912 177
>>3463910
>И нахуя?
чтобы не перезапускать сборку после изменения пары строчек, ускоряет дебаг в разы
хзы как там в вебе это у вас, в геймдеве это мастхев

мимо пробегал
Аноним 27/05/25 Втр 18:02:09 3463933 178
>>3463910
> Откуда ты знаешь
А ты откуда знаешь как код вообще работает? Это же читать надо, сложно.
> Мне нейросетка говорит
А бабки у подъезда что по этому поводу говорят?
> Уже сделали поддержку?
Всегда работало. Компилятору похуй на оптимизации, из дебаг-информации он знает всё. Дебаггер же без проблем работает с оптимизированным кодом в релизном билде, даже с LTO.
Аноним 27/05/25 Втр 18:28:01 3463951 179
>>3463933
>А бабки у подъезда что по этому поводу говорят?
Офф доки говорят то же:
https://learn.microsoft.com/en-us/visualstudio/debugger/supported-code-changes-cpp?view=vs-2022
"Unsupported scenarios
Debugging native apps compiled with /Zo (Enhance Optimized Debugging)...
Debugging optimized code.
"

>Компилятору похуй на оптимизации, из дебаг-информации он знает всё. Дебаггер же без проблем работает с оптимизированным кодом в релизном билде, даже с LTO.
Разговор шел не про отладчик, а про Hot Reload — это совершенно разные функции. Похоже, что ты долбоеб, который тупее нейросетки.

>>3463912
>чтобы не перезапускать сборку после изменения пары строчек, ускоряет дебаг в разы
>хзы как там в вебе это у вас, в геймдеве это мастхев
В геймдеве тесты обычно ведутся на минимальном уровне оптимизации, потому что без оптимизации игра бегает недопустимо медленно. А с оптимизацией Hot Reload не работает.
В остальном я согласен с тем, что стар игры может очень долго происходить. Возможно, стоит придумать что-то для ускорения старта игры. рукописный Hot Reload через DLL делался и без хитрых компиляторов — в таком видео его возможно выполнить даже с оптимизированным кодом.
Аноним 27/05/25 Втр 18:37:53 3463957 180
>>3463951
> А с оптимизацией Hot Reload не работает
работает

> Hot Reload через DLL
а ой, я про него и говорил (думал дебаггер также это и делает)
в расте кстати вобще возможно такое запилить?
Аноним 27/05/25 Втр 18:43:09 3463959 181
1643799335451.png 27Кб, 932x204
932x204
>>3463951
> Офф доки говорят то же
Так я тебе написал с какими оптимизациями он не работает. Мог бы уже сам проверить давно.
> это совершенно разные функции
Это ты даун. Хот-релоад в msvc делает дебаггер. Для этого надо включить дебаг-информацию для него.
Аноним 27/05/25 Втр 18:46:31 3463961 182
Аноним 27/05/25 Втр 18:49:01 3463962 183
Почему в расте присваиваение зовётся биндом, а не ассайментом? В хаскеле понятно, что бинд это бинд, а расте то почему?
Аноним 27/05/25 Втр 19:35:44 3463982 184
Аноним 27/05/25 Втр 20:04:42 3464010 185
image.png 38Кб, 839x135
839x135
Уже в какой лекции вижу. Почему у нас есть мутабельная ссылка на константу?
Аноним 27/05/25 Втр 20:20:48 3464022 186
>>3464010
> Почему
temporary lifetime extension
> Зачем
чтобы не возникало проблем в коде по типу r = &Class:new();

> константу
создается новая переменная, константа не изменяется
Аноним 27/05/25 Втр 20:25:46 3464027 187
>>3464022
> создается новая переменная, константа не изменяется
Разве не смысл ссылки в том, что она ссылается на существующий объект? Я сравниваю с плюсами, так там такое бы просто не скомпилировалось без const, что логично
Аноним 27/05/25 Втр 20:27:17 3464028 188
>>3464027
>на существующий объект?
он и существует, я же написал тебе переменную под капотом новую создают
Аноним 27/05/25 Втр 20:29:35 3464030 189
>>3464028
а, понял. только не перменная, а объект новый создался. это не rvalue из плюсов, а больше как если бы сделали новый объект инта от параметра 92. спасибо
Аноним 27/05/25 Втр 20:56:08 3464051 190
Блиц, нахуй.

fn main() {
let mut r = &mut 2;
r += 1;
println!("{}", r);
r = &mut 3;
r += 1;
println!("{}", r);
}

Такой код не сработает. Почему?
Аноним 27/05/25 Втр 20:57:39 3464052 191
Аноним 27/05/25 Втр 21:05:20 3464064 192
Аноним 27/05/25 Втр 21:08:55 3464067 193
Единственное, что хочу сказать - >>3464051 и >>3464064
не мой пост. Говорю, чтобы мне потом отвечали на вопросы, а не приняли за долбоёба
Аноним 27/05/25 Втр 21:27:33 3464073 194
>>3463962
>Почему в расте присваиваение зовётся биндом, а не ассайментом? В хаскеле понятно, что бинд это бинд, а расте то почему?
Самое смешное то, что в BPCL/CPL был бинд и для присваивания не использовался символ тождества, но два индуса, керниган и ритчи, нахуевертили нам фортрана, и с тех пор тождеством во многих ЯП обозначают присваивание. То есть, рандомная хуйня становится Industry Standard и Best Practice.

>>3464027
>Я сравниваю с плюсами, так там такое бы просто не скомпилировалось без const, что логично
"Const" в C++ — это одна из самых ублюдочных бездарных фичей высранных за историю IT. Вот насколько нужно быть ебанатом, чтобы обозначать переменную ключевым словом "const"? Потому логично, что в новом языке неконец-то сделали адекватные константы.
Аноним 27/05/25 Втр 21:34:55 3464074 195
>>3463959
>Это ты даун. Хот-релоад в msvc делает дебаггер. Для этого надо включить дебаг-информацию для него.
Его делает отладчик с компилятором. Причем, компилятор также высирает обновлённый PDB, чтобы отладчик в следующей итерации мог правильно обновить код.

>Так я тебе написал с какими оптимизациями он не работает. Мог бы уже сам проверить давно.
не мог, у меня не стоит VS. То, что я проверил, говорит однозначно, что для оптимизированного кода ни в каких версиях нельзя сделать Hot Reload.
Аноним 27/05/25 Втр 21:42:37 3464079 196
>>3464074
> То, что я проверил, говорит однозначно
Там где ты проверял ничего про О2 не написано. Ты просто тупой и не понимаешь что значит оптимизации.
Аноним 27/05/25 Втр 22:04:47 3464094 197
>>3464073
>чтобы обозначать переменную ключевым словом "const"
всегда обозначаю, это показатель хорошего кода.
Аноним 27/05/25 Втр 22:05:16 3464095 198
>>3464073
>"Const" в C++ — это одна из самых ублюдочных бездарных фичей высранных за историю IT. Вот насколько нужно быть ебанатом, чтобы обозначать переменную ключевым словом "const"? Потому логично, что в новом языке неконец-то сделали адекватные константы.
почему? вполне нормальная штука - константная переменная. В чём проблема?
Аноним 27/05/25 Втр 22:05:47 3464096 199
>>3464095
если че в расте по сути то же самое по умолчанию навешивается
Аноним 27/05/25 Втр 22:27:27 3464108 200
>>3464096
>по умолчанию
Шо бы не як у москалейв других яп?
Аноним 27/05/25 Втр 22:49:55 3464122 201
>>3464108
типо чтобы было удобнее писсать в фп стиле
Аноним 27/05/25 Втр 23:26:38 3464139 202
>>3464122
> фп стиле
А кто в нем пишет?
Аноним 27/05/25 Втр 23:42:47 3464145 203
>>3464122
>фп стиле
>пидораст
Но это же убогая байтоёбская императивщина для либерально-педерастических js-петухов, которые ещё вчера кнопки красили в веб-параше.
Аноним 27/05/25 Втр 23:54:44 3464148 204
>>3464139
Я раст учу только 2 часа, так что не могу ответить на этот вопрос. Но фп (а точнее его элементы) протекает посепенно в другие языки, в том числе в плюсы (в шаблоны в основном, хотя и на ренжах че то есть интересное). Так что скорее всего элементы кто то использует. Да даже в джаве стримы есть, что тоже отголосок фп и часто используется.
Аноним 28/05/25 Срд 00:18:25 3464158 205
Снимок экрана о[...].png 19Кб, 484x231
484x231
>>3464051
Звездочки проебались.
Аноним 28/05/25 Срд 00:50:40 3464165 206
>>3464094
>всегда обозначаю, это показатель хорошего кода.
Это очень спорный подход, который так или иначе будет заканчиваться в районе const_cast. Как ты не крутись, а всё равно что-то придётся кастовать. А потом пошло friend mutable, и по сути const превращается в хинт для линтера — примерно так к нему и стоит относиться. И уж точно const не гарантирует корректности работы с памятью. То есть, да, "показатель хорошего кода" — но это всё ещё не значит, что код не говно.
При этом код либы без const будет лаконичнее, особенно если имеют место сишные интерфейсы, в которых часто забивают на const.

>>3464096
>если че в расте по сути то же самое по умолчанию навешивается
Если чо — нет:
let mut x = 5;
let immut_ref = &x;
let mut_ref = &mut x; // error[E0502]: cannot borrow `x` as immutable because it is also borrowed as mutable

let mut x = 5;
let immut_ref = &x;
x = 10; // error[E0506]: cannot assign to `x` because it is borrowed

Всё то же самое спокойно работает в C++:
int x = 5;
const int immut_ref = &x;
mut_ref = &x;
mut_ref = 10;

x = 5;
immut_ref = &x;
x = 10;
Аноним 28/05/25 Срд 00:55:33 3464168 207
>>3464165
Ладно, разные вещи. Но в чем проблема то конста в плюсах? Конст касты - костыль. Его нет в норм коде. Он наверное существует только, как ты заметил, из за сишных либ, где мы точно знаем, что туда можно положить конст, но оно так не помечено
Что меня в джаве бесило - нет конста, передавая объект в функцию, ты не можешь быть уверен, что функция его не поломаеи
Аноним 28/05/25 Срд 01:11:58 3464171 208
>>3464168
>Конст касты - костыль. Его нет в норм коде
Я "норм кода" в жизни не видел. Если чо — по твоим же критериям libstdc++ не является норм кодом:
https://github.com/search?q=repo%3Agcc-mirror%2Fgcc+path%3A%2F^libstdc\%2B\%2B-v3\%2F%2F+const_cast&type=code
Mutable используется реже, но он всё равно есть:
https://github.com/search?q=repo%3Agcc-mirror%2Fgcc+path%3A%2F^libstdc\%2B\%2B-v3\%2F%2F+mutable&type=code

>Что меня в джаве бесило - нет конста, передавая объект в функцию, ты не можешь быть уверен, что функция его не поломаеи
Так и в C++ ты не можешь быть уверен, лол. Во-первых const_cast, во-вторых указатели-псевдонимы без const — в чём тут вообще можно быть уверенным? Уверенным можно быть только после строгого ревью каждого пул реквеста.
Аноним 28/05/25 Срд 02:45:47 3464205 209
>>3464165
>который так или иначе будет заканчиваться в районе const_cast.
Мы про константные переменный или про методы? В любом случае константные методы это так же прекрасно и нужно пихать const везде где только возможно.
>А потом пошло friend mutable
Значит проблемы в архитектуре приложения. Зочем тогда насиловать Кресты если можно писать на Си где тебя ни что не ограничивает?
Аноним 28/05/25 Срд 02:50:46 3464206 210
image.png 127Кб, 1430x816
1430x816
>>3464171
>Я "норм кода" в жизни не видел.
норм посаны так ебашут
Аноним 28/05/25 Срд 13:18:17 3464473 211
>>3464073
>переменную ключевым словом
>>3464094
>всегда обозначаю, это показатель хорошего кода.
Конст не для этого.
Аноним 28/05/25 Срд 15:08:54 3464555 212
>>3464473
>Конст не для этого.
Чулочки поправь
Аноним 28/05/25 Срд 15:32:28 3464586 213
>>3464555
Зверёк, ты сходи и выясни для чего const в сях, а не выёбывайся лишний раз.
Аноним 28/05/25 Срд 15:44:17 3464596 214
>>3464586
Пишу на Си и Крестах и хочу пояснения от чулочников итт поводу const, а не жалкие пуки через анальную пробку.
Аноним 28/05/25 Срд 17:45:50 3464665 215
image 43Кб, 1267x709
1267x709
Анон, угадай редактор
Аноним 28/05/25 Срд 19:23:51 3464721 216
Аноним 28/05/25 Срд 20:24:43 3464742 217
>>3464596
>на Си и Крестах
тред для ретардов ниже
Аноним 28/05/25 Срд 21:15:25 3464763 218
rust это попытка долбоёбов сделать паскаль.
Аноним 28/05/25 Срд 21:19:50 3464766 219
Настройки X
Ответить в тред X
15000
Добавить файл/ctrl-v
Стикеры X
Избранное / Топ тредов