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

Исходное сообщение
"Переработка драйвера VGEM на языке Rust"

Отправлено opennews , 03-Мрт-23 09:23 
Майра Канал (Maíra Canal) из компании Igalia представила проект по переписыванию драйвера VGEM (Virtual GEM Provider) на языке Rust.  VGEM включает около 400 строк кода и предоставляет не привязанный к оборудованию бэкенд GEM (Graphics Execution Manager), используемый для разделяемого доступа к буферам драйверов программных 3D-устройств, таких как LLVMpipe, с целью повышения производительности программной растеризации...

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


Содержание

Сообщения в этом обсуждении
"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 09:23 
>проект по переписыванию
>VGEM включает около 400 строк кода

Ух...


"Переработка драйвера VGEM на языке Rust"
Отправлено Вы забыли заполнить поле Name , 03-Мрт-23 11:28 
А сколько стало? Вангую что больше.unwrap()

"Переработка драйвера VGEM на языке Rust"
Отправлено Гость , 03-Мрт-23 13:19 
Зачем ванговать - на пулл реквест есть ссылка, посмотри и сам убедись

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 07-Мрт-23 09:35 
Ну, видишь, пришлось аж проект по переписыванию 400 строк кода. Надо еще пару архитектов нанять, но там чего-то увольнения везде, можно и подобломиться...

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 12:16 
Господи, я не верю, что это происходит на самом деле. Это какая-то шиза. Это, наверное, специально делают, чтобы просто посмеяться и что-то в этом духе.
>переписать
>400 loc

Ну это ли не п@здец? Язык уже давно production ready(по заявлению фанатов), а оригинальных проектов на нем можно по пальцам пересчитать. В основном бегают по гитхабу и ищут старые сишные проекты на пару тысяч строк, чтобы потом скопипастить и гордо заявлять "Я сделяль".


"Переработка драйвера VGEM на языке Rust"
Отправлено хрустовик , 03-Мрт-23 12:26 
Что-то я не получал от некоего анонима оффер на стопяцот килобаксов в секунду на написание оригинального проекта, на расте.
Где деньги билли, на школьных обедах не экономишь или в доту донатишь?
А, ты бесполезный халявщик... так сразу и сказал бы.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 12:33 
>Где деньги билли, на школьных обедах не экономишь или в доту донатишь?
>А, ты бесполезный халявщик... так сразу и сказал бы

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


"Переработка драйвера VGEM на языке Rust"
Отправлено Советский инженер , 03-Мрт-23 14:56 
>>Почему на переписывание хватает ресурсов, а для создание чего-то полезного нет?

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


"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 16:00 
>потому что те кто платят и определяют для себя что им полезно. видать сейчас им полезно немного

Да, переписанные grep и ls - это очень полезно. Смысл только один, чтобы потом в пропаганде говорить "Посмотрите сколько программ мы написали на расте", а по факту обычный копипаст маленьких сишных проектов.


"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 19:24 
Хейтерки, как обычно, фокусируются на пальце, вместо того, чтобы смотреть на небо. Любой язык сам по себе не очень интересен, будь он хоть в сто раз безопаснее и в двести раз быстрее любого другого. Интересна и важна экосистема, выстроенная вокруг языка — библиотеки, рекомендации, коммьюнити, best practices, книги. Очевидно, что всё это не возьмётся с потолка просто потому, что кому-то так захотелось. Все эти косвенно относящиеся к языку артефакты пишут люди. Когда-то С был ровно в такой же ситуации, как сегодня Раст: много хайпа и крайне мало кода. Хейтерки тех лет точно так же блеяли, мол, сишники ничего не умеют, только готовый софт с Алгола переписывать. Повторится ли история успеха мы сможем увидеть своими собственными глазами, но хейтерки в любом случае останутся блеющим стадом, каким они были на протяжении всей истории человечества.

"Переработка драйвера VGEM на языке Rust"
Отправлено wyry , 04-Мрт-23 23:11 
Вообще-то на C (чистом) уже был написан Unix, при том, что это была его фактически бета-версия, то есть взяли язык B, кое-что переделали и добавили под инженерные нужды, получили C. И используется уже несколько ДЕСЯТИЛЕТИЙ, написаны тонны кода. Rust уже существует приличное количество времени и на нём только и делают, что бесконечно что-то переписывают и агрессивно форсят. Почувствуйте разницу: язык, который сделан для Unix и который взлетел благодаря инженерам, причём C практически не менялся с момента сотворения и Rust, который УЖЕ ломал обратную совместимость (пусть и не так сильно, как утверждают совсем уж рьяные злые языки), а достижения крайне сомнительные, учитывая что годы идут, а воз и ныне там.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 05-Мрт-23 01:42 
А до Юниксов, надо полагать, ничего не было и волки на луну выли. Шесть дней Ритчи творил С, а на седьмой день запустил Юникс. Есть одна полезная для оздоровления мышления книжка, называется «The UNIX-HATERS Handbook». Что-то вроде комментов на опеннете, только из тех вот самых лет, когда диды были молодыми. Там и про совместимость, и про инженеров, и про то, как этот Юникс взлетал, и даже про то, где именно воз припарковали. Настоятельно рекомендую ознакомиться.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 18:15 
> А кто платит Сишникам и плюсовикам?

Корпорации вроде Apple, Google, Facebook, Microsoft, Oracle, IBM, и так далее. Точный список можешь посмотреть в логе коммитов в ядро по емейлам разработчиков.


"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 04-Мрт-23 00:58 
> А кто платит Сишникам и плюсовикам?

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

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

Полезного _тебе_? Они не только переписывают, но и пилят что-то новое - но интересное и полезное себе. Всякие васмеры, какие-то блокчейны во крипте, свои веб-серверы или какие-то рантаймы с идеологией процессов и отказоустойчивости а-ля Erlang, а корпораты - какие-то куски операционок или системы контейнерной изоляции. Они просто тебя забыли спросить, что они обязаны пилить, ты им подскажи. Тебе наверное очередной mp3-плеер нужен? Напиши им очередное письмо про то, что "надо игру, где можно грабить корованы"


"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 04-Мрт-23 08:49 
так и ты и все иксперты опеннет вместе взятые и этих 400 строк в жизни не напишите

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 09:26 
С++ в ядро они не пускают, а зато раст как миленькие.

"Переработка драйвера VGEM на языке Rust"
Отправлено Иваня , 03-Мрт-23 09:44 
C++ для них сложна, могут написать так, что вся память утечёт.

"Переработка драйвера VGEM на языке Rust"
Отправлено КО , 03-Мрт-23 10:36 
Так если результат такой же, чего рисковать?

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 20:34 
Это как раз на Си так пишут по умолчанию. На C++ есть RAII и unique_ptr, и чтобы начать писать с утечками надо явно завявить "я идиот, творю что хочу, компилятор подвинся". Ну то есть как в этом вашем Расте.

"Переработка драйвера VGEM на языке Rust"
Отправлено васёк , 03-Мрт-23 09:45 
Как там Страуструп свои книги начинает? C++ это улучшенный Си? Ну так Rust это улучшенный C++. Кушайте свою же лапшу.

"Переработка драйвера VGEM на языке Rust"
Отправлено 111 , 03-Мрт-23 09:54 
Прошу прощения, но вы -- Васёк. Никто и никогда не заявлял, что Rust это улучшенный C++.

"Переработка драйвера VGEM на языке Rust"
Отправлено васёк , 03-Мрт-23 10:04 
Естественно - в плюсах все настолько плохо, что проще новый язык сделать с нуля, чем C++ исправлять. Java, C#, Vala - это чтобы не городить C += 2

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 10:18 
Паскаль лучше раста

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 11:40 
COBOL лучше сишечки.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 12:28 
На полшишечки.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 12:22 
Конечно, что в школе вдолбили - то и лучше.

"Переработка драйвера VGEM на языке Rust"
Отправлено alexanderyt , 03-Мрт-23 13:47 
В шоле бейсик же был, в универе паскаль.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 18:40 
В школе микрософт ворд изучали. А в универе java.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 19:28 
В сельской школе и уездном универе? Охотно верю. В нормальных школах был Паскаль.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 12:23 
В каком месте Rust - улучшенный С++? Классы где?

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 12:45 
В идеалогическом. Подходы разные, да, как инструменты немного отличаются(плюсы все больше мимикрируют под раст в новых стандартах). Но ниша общая. Задачи те же. И даже чуть шире из-за эмбедед.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 13:01 
А кто сказал, что C++ нет в embeddet?.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 04-Мрт-23 00:04 
Его доля крайне мала - попробуй отпилить все ненужное типа исключений, stdlib.. си доминирует пока де факто. У раста вот некие потуги проявляются.

"Переработка драйвера VGEM на языке Rust"
Отправлено Советский инженер , 04-Мрт-23 15:33 
Ой да Б-же мой. Что там отпиливать?

-fno-rtti, -fno-exceptions и полетели.


"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 07-Мрт-23 10:04 
> -fno-rtti, -fno-exceptions и полетели.

Смотря куда. Вот ты хорошо знаешь что там stdlib будет делать допустим и какие у него аппетиты, worst case и проч? Си все ж попроще в плане предсказуемости и отсутствия всякой фигни. А у желающих навороты там где этим увлекаться не стоит - тойота получается. Когда кто-то весь стэк сожрал, оценить объем этого не смогли, и водителя почему-то размазало немного, когда переменные в блоке ECU стали пургу гнать и авто в разгон пошло. А, вы лететь хотите? Ну тогда скажите, какого цвета стопкран в самолете, во.


"Переработка драйвера VGEM на языке Rust"
Отправлено Советский инженер , 10-Мрт-23 11:26 
>> -fno-rtti, -fno-exceptions и полетели.
> Смотря куда. Вот ты хорошо знаешь что там stdlib будет делать допустим
> и какие у него аппетиты, worst case и проч?

да, я хорошо знаю stdlib, знаю какие апетиты у разных классов/функций , во что мне это выльется по коду/стеку/хипу.

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

Тойота написана на С. вот и все. Все были уверены как и ты что в С нельзя ошибиться, это ж такой простой язык!



"Переработка драйвера VGEM на языке Rust"
Отправлено подрывник , 03-Мрт-23 14:51 
>классы где

Там же, на месте. И множественное наследование даже.


"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 23:41 
Где в C++ нормальное ООП, где сообщенич между объектами, где аксесоры и мутаторы?
Ой сейчас любители плюсов мне расскажут что им это не нужно?

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 04-Мрт-23 14:44 
Вы хотите чтобы в языке, где таблица виртуальных методов слишком большие накладные расходы, у каждого объекта была своя очередь сообщений?

Такого даже в java нет.


"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 05-Мрт-23 01:47 
Посмотри на классы в Common Lisp, и потом ответь себе на вопрос: где классы в C++? Те костыли, что там вместо классов, выглядят просто смешно по сравнению с полумёртвым языком, стандарт которого не менялся с 1994 года. После этого обсудим круг задач, для эффективного решения которых необходим объектно-ориентированный подход.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 06-Мрт-23 05:56 
В Common Lisp идиотские классы. Да, MOP -- это довольно мощная штука, но, скажем честно, никакого OOP в Common Lisp нет, потому что нет инкапсуляции.


"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 09:57 
ага а будущий Rust++ это улучшенный Rust, который является улучшенным C++ который улучшает С.
Ждем светлого будущего.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 13:02 
В доме, который построил Денис Ричи.

"Переработка драйвера VGEM на языке Rust"
Отправлено www2 , 03-Мрт-23 17:09 
У Ричи до C был ещё B на основе BCPL.

"Переработка драйвера VGEM на языке Rust"
Отправлено user_Name , 03-Мрт-23 11:19 
Rust это аналог/подобие C, не улучшенный. Чтобы сравнивать его с C++, для начала пусть ООП и классы завезут. А пока это просто нискоуровневая копия C.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 12:48 
Не надо классы, вменяемой системы типов с трейтами и паттерн-матчингом достаточно.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 13:03 
Но без наследования не годится.

"Переработка драйвера VGEM на языке Rust"
Отправлено Илья , 04-Мрт-23 09:53 
Без мультинаследоаания в 7-10 классов в глубину, где всё перетёрто и отладка напоминает коллбек хелл?

Проходили, поэтому с++ на мороз и выбрасываем


"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 13:21 
Достаточно чтобы писать процедурный код, где полиморфизм сделан на костылях функций высших порядков. Натуральный привет из прошлого который фанатики фп выдают за будущее.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 12:06 
Если это улучшенный C++ покажи мне ООП на нем с наследованием и полиморфизмом.

"Переработка драйвера VGEM на языке Rust"
Отправлено подрывник , 03-Мрт-23 15:01 
Наследование через трейты:
- трейт "геометрическая фигурка"
-- окружность
-- треугольник
-- прямоугольник
Расчёт площади как полиморфная функция.

Поздравляю, вам в ядро таки добавили C++, только вот страшненький, кривой и корпо-противный.

"Жри что дают, скотина такая!" (c)


"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 07-Мрт-23 10:07 
На плюсоте еще страшней получаетсся, особенно системщина. Там все грабли сей на месте, начиная с дурацких изначальных стандартных типов и чокнутых правил работы с integer'ами - но бонусом к ним много новых. Если вот тут некто оверлоад оператору сделает - потом вон тот код может делать совсем не то о чем вы подумали.

"Переработка драйвера VGEM на языке Rust"
Отправлено keydon , 03-Мрт-23 12:14 
Запишу, буду предъявлять растоманам по требованию.

"Переработка драйвера VGEM на языке Rust"
Отправлено Анонимусс , 03-Мрт-23 10:01 
"C++ is really a terrible language!"
“C++ ended up with a bunch of terrible, unmaintainable garbage”

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 10:13 
Уже пробовали. Результат сильно огорчил.

"Переработка драйвера VGEM на языке Rust"
Отправлено bOOster , 03-Мрт-23 14:14 
Бред, в драйверах MacOSX С++ никого не огорчает.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 10:15 
Линус раньше против C++ высказывался. Если он теперь его пустит в ядро, то потеряет лицо. Нотэто к лучшему. Rust - лучше, когда используется адекватным образом с адекватной сборочньй системой, а не культом cargo.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 10:19 
> а не культом cargo

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


"Переработка драйвера VGEM на языке Rust"
Отправлено keydon , 03-Мрт-23 12:15 
> Линус раньше против C++ высказывался. Если он теперь его пустит в ядро,
> то потеряет лицо. Нотэто к лучшему. Rust - лучше, когда используется
> адекватным образом с адекватной сборочньй системой, а не культом cargo.

Так с растом и повесточкой он еще больше лицо потерял.


"Переработка драйвера VGEM на языке Rust"
Отправлено fumanchez , 03-Мрт-23 13:07 
Ну дал он им сменить master на main, и что с того? Наоборот, создал видимость, что они что-то решают, а по факту ничего не изменилось.

"Переработка драйвера VGEM на языке Rust"
Отправлено fumanchez , 03-Мрт-23 13:01 
Под идеальной сборочной, конечно же, подразумевается make? Или какой-то один из чудесных его обертывателей?

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 14:29 
Линус уже лицо потерял, когда прогнулся под корпоRust. Да и палец что-то свой спрятал, давно им не вертит.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 14:38 
Линукс всегда был проектом корпораций, причем там rust? Будто до этого он был написан разработчиками-одиночками.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 15:03 
До начала нулевых точно был проектом физлиц и групп физлиц. RH, в то время, назвать корпорацией, даже с большим натягом не получается.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 04-Мрт-23 00:17 
> RH, в то время, назвать корпорацией, даже с большим натягом не получается.
> In 1993, Bob Young incorporated the ACC Corporation
> In 1994, Marc Ewing created his own Linux distribution, which he named Red Hat Linux
> Young bought Ewing's business in 1995, and the two merged to become Red Hat Software

Red Hat Software является корпорацией с первых дней своего существования безо всяких натягов. Линукс перестал быть фофаном и стал бизнес-продуктом как раз в районе тех лет, 1992-1993 годы. С середины 90х в него начали вливать бабло в форме человекочасов большие дяди типа NASA. Так уж вышло, что для их числодробилен было дешевле допилить Линукс напильниками, чем тратиться на лицензии для Юниксов. И пошло-поехало. В нулевых на Линуксе уже не только зарабатывали все, кому не лень, но и мегакорпы типа IBM накидывали туда бабло экскаваторами. А после эпичного иска SCO Group стало окончательно ясно, что Линукс — такой же продукт, как MS Windows, AIX, HP-UX и другие. Но у фофанов какая-то альтернативная история, в которой у некоего мифического сообщества гениальных подвальных программистов злые корпы отжали любимую игрушку.


"Переработка драйвера VGEM на языке Rust"
Отправлено wyry , 04-Мрт-23 23:05 
Ага, назло плюсовикам угроблю всё. Было бы интересно, что Линус тех времён сказал бы про Rust. Сегодня он тупо отмалчивается изредко тролля мол для Rust будут задачи, где он точно ничего не сломает. Вам (да и многим другим) не кажется странным, почему именно Rust удостаиваится такой "чести"? Почему не D, не Vala? Vala УЖЕ давно используется в Гноме и абсолютно прозрачен в плане технологий. То есть если не C++ всегда можно было выбрать что-то ещё, но часть сообщества (не самая многочисленная) агрессивно навязывает именно Rust и у РАЗУМНЫХ людей почему-то не складывается обоснованных сомнений на этот счёт.

"Переработка драйвера VGEM на языке Rust"
Отправлено Товарисч , 03-Мрт-23 14:35 
Чуваки просто в теме секут, в отличие от вас :)

"Переработка драйвера VGEM на языке Rust"
Отправлено Илья , 04-Мрт-23 09:48 
Сипипи это для богоизбранных, которые обфусцируют код и врут, что никто кроме них не напишет лучше.

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


"Переработка драйвера VGEM на языке Rust"
Отправлено iPony129412 , 03-Мрт-23 09:32 
Это ещё лет пять надо.
Вот когда в младших классах школы начну учить Rust, вот тогда ещё лет через пять IT («оно» в переводе) изменится к лучшему.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 09:46 
Не изменится ровным счетом ничего. От того, что смузихлёбы не умеют работать с памятью и думают, что память
берётся из ниоткуда и уходит в никуда, не изменится ничего. Смузихлёбы должны писать на js и т.п., а системные программисты на Си. Вас же терапевт не оперирует, хотя так же медработник?

"Переработка драйвера VGEM на языке Rust"
Отправлено Анонимусс , 03-Мрт-23 10:06 
Мы все прекрасно видим, как пишут системные погромисты на си... что потом список CVE в новости на экран не влазит.

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


"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 10:17 
Rust - язык смузихлебов, а диды написали крутые иксы на сишечке.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 11:04 
Если по каждому малозначительному чиху выпускать CVE и орать, что всё пропало. А потом оказывается, что ничего не пропало и уязвимость как конь в вакууме, при определенных условиях и т.д. и т.п.
Вот например use-after-free, программа просто упадет в коредамп и всё. Что там исполниться? Где уязвимость?

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним123 , 03-Мрт-23 11:08 
Это на каком языке программа упадёт по use-after-free? На C чаще всего ничего не упадёт.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 11:11 
Ну если ваша ОС позволяет исполнять освобожденную память, то это проблемы ОС.

"Переработка драйвера VGEM на языке Rust"
Отправлено Дмитрий , 03-Мрт-23 11:34 
Как классно, что противники раста даже не знают как может быть проэксплуатирована use-after-free. Так победим

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 11:37 
вот объясните, как? А то у меня одна прога падает, всё время из-за этого? А я хочу, чтобы работало, не на расте же переписать?

"Переработка драйвера VGEM на языке Rust"
Отправлено не придумал , 03-Мрт-23 12:09 
Даже в ARMv8 и микроконтроллерах M33 и старше можно задавать участки памяти, откуда можно исполнять, откуда нет, и чему откуда можно читать.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 13:07 
Не надо путать W^X и use-after-free. Это совершенно разные вещи.
Если маркетологи вбили в головы, что use-after-free ой как страшно и не безопасно.
Это не значит, что всё так страшно.
И пусть растаманы напишут сперва ОС на своём языке без unsafe блоков, потом можно говорить о чём то.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 07-Мрт-23 10:13 
> Даже в ARMv8 и микроконтроллерах M33 и старше можно задавать участки памяти,
> откуда можно исполнять, откуда нет, и чему откуда можно читать.

А в системах с MMU это можно еще аж с 80386 ископаемого. Но вот только с точностью до страницы, права еще и хранить надо. А как тебе перспективка на 20 байнтую фигню по 4 кило выделять? И через сколько у тебя память закончится? А более гранулярно - окей, а права где хранить и кто это в таком объеме лопатить будет? У кортексов M вообще MPU обычно - даже не MMU, ну и регионов там полторы штуки на все. Много ты там назащщаешь? Для фирмвари условного тетриса - сойдет, но мы ж про штуку с ядро линя размером, а там еще задачи всякие, в количестве когда PID 32-битным стал ажно...


"Переработка драйвера VGEM на языке Rust"
Отправлено Дмитрий , 03-Мрт-23 16:02 
> как?

Очевидно, нет универсального способа. Но анализируя код можно найти способ заалоцировать новую память, которая наложится на старую. И последующими манипуляциями можно записать данные, которые затем считаются как корректные в месте, где у вас use-after-free.


"Переработка драйвера VGEM на языке Rust"
Отправлено www2 , 03-Мрт-23 17:14 
Если программа упадёт, то это уязвимость от атак на отказ в обслуживании.

"Переработка драйвера VGEM на языке Rust"
Отправлено keydon , 03-Мрт-23 12:18 
> Мы все прекрасно видим, как пишут системные погромисты на си... что потом
> список CVE в новости на экран не влазит.
> Раст прекрасно учит понимаю работы с памятью.
> Компилятор будет тебя бить по рукам до тех пор, пока даже самый
> тупой птушник не поймет где стек, а где куча, где нужно
> использовать боксинг, где нужно использовать арк и т.д.

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


"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 12:36 
>Раст прекрасно учит понимаю работы с памятью.
>Компилятор будет тебя бить по рукам до тех пор,

А вот здесь компилятор почему не помог? Кто будет учить ПТУшников?
https://github.com/rust-lang/rust/issues/108453


"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 10:07 
А что паскаль?

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 10:21 
Паскаль должен юзаться в драйверах, потому что этот язык диды писали.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 10:22 
Раст надо переписать на паскале, чтобы раст был ещё лучше и безопаснее

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 10:27 
А ещё сишечку надо переписать на COBOL, потому что его писали ещё более крутые и старшие диды.

"Переработка драйвера VGEM на языке Rust"
Отправлено Советский инженер , 03-Мрт-23 14:38 
более крутые и старшие - да.
но вот начсет дидов - не все так однозначно.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 14:18 
Не диды, а один конкретный дид.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 10:20 
Никогданибудь

"Переработка драйвера VGEM на языке Rust"
Отправлено не придумал , 03-Мрт-23 12:11 
типичный диагноз: ожидание, что вот когда будет X, тогда будет хорошо, надо бороться с Z

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 14:22 
Никогда в школах не начнут учить Rust. Слишком сложно для никогда до этого невидиших программление.

"Переработка драйвера VGEM на языке Rust"
Отправлено wyry , 04-Мрт-23 23:19 
Вы недооцениваете "таланты" министерств образования по всему миру. Python же протащили, некоторые даже с этого кайфуют (потому что он простой, аргумент просто железный), хотя это ужаснейший язык именно для обучения программированию.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 09:44 
это какой-то позор.

"Переработка драйвера VGEM на языке Rust"
Отправлено ИмяХ , 03-Мрт-23 09:52 
Полноценный графический драйвер в 400 сток кода это позор? А что тогда не позор? Миллиардострочный хелловорлд на си и джаваскрипте с Meson-ом?

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 10:53 
Хелло ворд на js пишется в одну строчку.
console.log("hello world 🌎");
Набрать это сможет даже опеннет эксперт

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 10:54 
Вот спасибо! Это ещё же протестировать на баги надо!

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 10:58 
Юнит-тест напиши

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 07-Мрт-23 10:14 
> Юнит-тест напиши

Так, блин, а где проект и архитектура?! И документацию не написали, между прочим.


"Переработка драйвера VGEM на языке Rust"
Отправлено AleksK , 03-Мрт-23 11:36 
А теперь запусти это без рантайма.

"Переработка драйвера VGEM на языке Rust"
Отправлено не придумал , 03-Мрт-23 12:13 
а разве сейчас можно без node_modules? += 200мб и 20000 файлов.

"Переработка драйвера VGEM на языке Rust"
Отправлено не придумал , 03-Мрт-23 12:14 
справедливости ради, это ещё и типичное средство отладки, всё в одной строке

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 11:00 
> Полноценный графический драйвер в 400 сток кода это позор?
>> предоставляет не привязанный к оборудованию бэкенд GEM (Graphics Execution Manager), используемый для разделяемого доступа к буферам драйверов

понятно...


"Переработка драйвера VGEM на языке Rust"
Отправлено keydon , 03-Мрт-23 12:20 
> Полноценный графический драйвер в 400 сток кода это позор? А что тогда
> не позор? Миллиардострочный хелловорлд на си и джаваскрипте с Meson-ом?

Позор расту что это язык переписывальщиков для переписывания.
Конечно, утилиту на 400 строк нужно срочно переписать (чем и занимаются 99% проектов на раст представляя очередной grep, htop, ls без "фатальных" недостатков)


"Переработка драйвера VGEM на языке Rust"
Отправлено bOOster , 03-Мрт-23 14:20 
Драйвер в 400 строк кода говорит только об одном - раньше силовикам было ух как сложно впендюривать в различные опенсоурс проекты закладки, в драйвера, в софт. А сейчас будет один rust runtime! В исходниках одно - в бинарном коде другое. И хрен там кто проверять будет соотвествие.


"Переработка драйвера VGEM на языке Rust"
Отправлено Анонимусс , 04-Мрт-23 11:45 
> было ух как сложно впендюривать закладки

Это шутка такая? Что там сложного? Пропустил пару проверок на null.
Или не проверил длину входящих данных и вышел за пределы буфера.

И готово. Никто не заметит, а если и заметят - "а чё такова, это обычная бажина, тысячи их"

Вот угадай что из этого https://www.opennet.dev/opennews/art.shtml?num=58622 сделали случайно, а что для того чтобы утекали пароли на специально подготовленных данных для специально обученных людей?


"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 10:12 
>за исключением vgem_slow
>Rust - быстрый

- говорили они.


"Переработка драйвера VGEM на языке Rust"
Отправлено Анонн , 03-Мрт-23 10:15 
А причем тут скорость О_о
Это расширенный тест ("Extended sanity check" в оригинале), поэтому сам тест медленный.
Там две группы тестов - vgem_basic и vgem_slow. А не потому что раст медленный.

"Переработка драйвера VGEM на языке Rust"
Отправлено РАСТислав Анонян , 03-Мрт-23 10:16 
Победное шествие раста поражает. После того, как перепишут llvm на раст, нужда в архаике типа C/C++ отпадет естественным путем, как отпадает пуповина после ее перерезания.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 10:21 
Смотрите, смотрите, тролль такой толстый, что пуповина развязалась

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 12:52 
LLVM собрались переписывать на Rust, серьёзно? Релиз хоть в 2043 ожидается?

"Переработка драйвера VGEM на языке Rust"
Отправлено раст переусложнён , 03-Мрт-23 17:01 
>отпадает пуповина

лол. пользователь раста в одном словосочетании.


"Переработка драйвера VGEM на языке Rust"
Отправлено InuYasha , 03-Мрт-23 10:37 
Новость-предостережение? Ок, мессадж принят.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 10:39 
Что, будешь сам переписывать обратно на Си, или заморозишь Си версию, если это драйвер понадобится?

"Переработка драйвера VGEM на языке Rust"
Отправлено Серб , 03-Мрт-23 12:38 
> Что, будешь сам переписывать обратно на Си, или заморозишь Си версию, если это драйвер понадобится?

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


"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 10:50 
Обязательные проверки компилятором обеспечат хоть какую-то стабильную работу. Кому от этого плохо? Кроме разве что самодовольных экспертов по Си, не написавших ничего сложнее хелло ворд

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 10:50 
Разработчица этого драйвера:
https://github.com/mairacanal

"Переработка драйвера VGEM на языке Rust"
Отправлено РАСТислав Анонян , 03-Мрт-23 11:20 
Из ее блога ( mairacanal.github.io/about/ ):


5. My favorite program language is C++ (tied with C).

6. I'm currently learning Rust.

7. I don't like to code in Python and Java.

8. I really like to program in Assembly (especially, x86, ARM, and MIPS).


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


"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 11:32 
8. Это больше из разряда мечтаний.
Сейчас единицы программируют на ассемблере. И на нем нереально написать что-то большое.

"Переработка драйвера VGEM на языке Rust"
Отправлено не придумал , 03-Мрт-23 12:17 
она написала, что любит, мне тоже нравилось когда-то, оно не сложно, просто ненаглядно

"Переработка драйвера VGEM на языке Rust"
Отправлено Максим , 03-Мрт-23 16:35 
Реально. Все приставочные игры 90-х на ассемблере написаны - большие и сложные.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 22:36 
> 8. Это больше из разряда мечтаний.
> Сейчас единицы программируют на ассемблере. И на нем нереально написать что-то большое.

http://www.kolibrios.org/en/screen.htm


"Переработка драйвера VGEM на языке Rust"
Отправлено wyry , 04-Мрт-23 22:34 
Вот кстати я бы против Rust абсолютно ничего не имела, если бы он не лез с ядро. И причины здесь даже не в технологиях и безопасности, а чисто политические - вендорлок, от ограниченной группы компаний. Кое как эту ситуацию разруливает реализация Rust на gcc, не знаю в каком состоянии сейчас и какая версия, но важно то, что Rust по сути не внося ничего концептуально нового, создаёт странный хайп и при этом не создаётся ничего нового. Мне как-то потребовался Flash Player, я слышала что как раз на Rust была крутая свободная реализация, на деле - это недоделанная хрень, которая даже не поддерживает AS3.0 и по сути очередня академическая поделка, а не реальный проект и вот так у Rust во всём.

"Переработка драйвера VGEM на языке Rust"
Отправлено Анонн , 05-Мрт-23 13:11 
Очень странные претензии.

> чисто политические - вендорлок

... это приколоченное ядро к gcc и gnu c extention и тысячи потраченных человекочасов, чтобы его можно было собрать еще хоть чем-то.

> по сути не внося ничего концептуально нового

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

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

Надо же. А мужики-то и не знают! (с)
Но через эту "недоделанную хрень" запускается большая часть (если не все) флешевые игры на Newgrounds, Armor Games, Kongregate и т.д. И у них оно работает.

Сам Ruffle изначально создавался как раз для сохранения цифрового наследия. И поддержка что AS3.0, что предыдущих версий делалась именно с упором на эту цель. И реализовывается вначале то, что необходимо именно для игр/роликов.

Сейчас заявлено, что AS3 Language реализован на 60%, а AS3 API на 25%. И вполне может оказаться, что этого достаточно для поставленных целей и остальное будет реализовываться только если найдутся заинтересованные (чего скорее всего не произойдет).

Или вы думали что за пять лет они реализуют все что Macromedia и Adobe нафигачили c 96 года?


"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 10:57 
Паскаль очень хороший язык, нет не взлетел.
При разработке Java например вдохновлялись Паскалем и его наследниками.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 12:41 
Сильно вдохновились, аж {} применили.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 15:16 
Скобки это самая главная часть языка, не иначе

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 15:28 
Но очень показательная от чего derived.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 15:33 
если вы не пишите ничего сложнее одной функции с hello world то да.

"Переработка драйвера VGEM на языке Rust"
Отправлено fumanchez , 03-Мрт-23 13:12 
Пруфы будут? Особенно про всем известных наследников Паскаля (которых аж целый Дельфи).

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 15:14 
http://www.delphikingdom.com/asp/viewitem.asp?catalogid=1155

Ответ профессора Вирта

"Нет, конечно, нет. Мы всегда следовали принципу Open Source. Компания Sun, как и другие, купила исходные коды. За очень недорого, кстати. Они очень серьезно исследовали этот код, я знаю это. Через семь лет после выхода ОБЕРНА они выпустили Java. В Java заимствовано несколько идей из ОБЕРОНА, но они коррумпировали его синтаксисом языка "С". С точки зрения продавцов это был достаточно умный ход".

Внезапно куча пруфов в ссылках вики
https://en.wikipedia.org/wiki/Java_%28programming_langu...

Внезапно^ modula-2, modula-3, oberon, object pascal и еще варианты паскаля это всё его наследники. А не только delphi


"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 15:22 
В тех книжках в которых я читала по турбопаскаль и делфи, всегда говорилось что у паскаля наследники modula, oberon и object pascal. Подробности не говорили, о том что Вирту не нравился object pascal и delphi но историю языка рассказывали.
Книжки эти до сих пор у родителей дома лежат, хотя 17 лет прошло.

"Переработка драйвера VGEM на языке Rust"
Отправлено fumanchez , 03-Мрт-23 22:45 
Это не пруф, это просто озвучено другим человеком, пусть и авторитетным. И аж 2 ссылки, из которых одна со словом Oberon, а другая со словом Modula, это не куча.

"Переработка драйвера VGEM на языке Rust"
Отправлено wyry , 04-Мрт-23 22:49 
На самом деле Вирт действительно опередил своё время. В допотопных книгах по Оберону есть вполне свежие идеи. Единственное с чем можно поспорить - это синтаксис, мне Сишный больше нравится, но это не принципиальный вопрос и вкусовщина.

"Переработка драйвера VGEM на языке Rust"
Отправлено _kp , 03-Мрт-23 10:57 
400 строк ? ;)
И в этом смехотворном объёме кода были ошибки работы с памятью, причем не устранимые ничем, кроме как переписанием?

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним123 , 03-Мрт-23 11:04 
Извечных ошибок нет. Неизвестные, может и есть, а может и нет. Нужно сделать чтобы точно небыло.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 11:06 
Этого никто не утверждает, что были ошибки работы с памятью. Скорее разработчица этого драйвера делает себе резюме, выше есть ссылка на профиль.

"Переработка драйвера VGEM на языке Rust"
Отправлено Анонимусс , 03-Мрт-23 11:20 
Тем не менее, "потребовалось создание новых привязок  [... с] типом XArray и абстракциями, связанными с прямым доступом к памяти, такими как DMA-барьеры (DMA fence)."
Уже польза, будет использоваться в более сложных драйверах.

"Переработка драйвера VGEM на языке Rust"
Отправлено _kp , 03-Мрт-23 11:41 
> Уже польза

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



"Переработка драйвера VGEM на языке Rust"
Отправлено Анонимусс , 03-Мрт-23 16:52 
Абсолютно не смущает.
Работа еще в процесс, оно проходит все тесты кроме двух из 12ти, причем для них указана причина (https://mairacanal.github.io/rust-for-vgem/#next-steps) и их исправление указано как следующий шаг.
Работы там еще много, сам автор пишет "So, there is a lot of work yet to be done!"

Когда представили предыдущий драйвер для GPIO - было куча нытья "он же почти ничего не делает"
Когда сделали драйвер для М1 - было нытье "Эппл нинужно"
Сейчас "представили" (хотя непонятно зачем сюда притащили новость о незаконченном драйвере) - нытье про то что тут всего 400 строк и не проходят два теста. Ну и не считая стандартного "ничитабельно", "корпорасты", "автор-транс" и тд


"Переработка драйвера VGEM на языке Rust"
Отправлено _kp , 03-Мрт-23 17:01 
Именно представление недописанного "hello world", как новости - и вызывает бурления.

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


"Переработка драйвера VGEM на языке Rust"
Отправлено Анонимусс , 03-Мрт-23 19:37 
> представление недописанного "hello world", как новости

А вот и нет. Такие бурления идут в каждой новости где хоть как-то упоминается раст - выход новой версии, интуль написал на нем прошивку, прогресс в добавлении в ядро - тема не важна, главное потоки хейта)

> стройными, красивыми, лаконичными, всё просто и понятно.

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


"Переработка драйвера VGEM на языке Rust"
Отправлено freecoder , 03-Мрт-23 22:55 
Если бы вы знали Rust также, как Си, то читаемость была бы высокая )
Однако там действительно есть не идеоматичные трудночитаемые места, которые нужно упростить. Например это:

match resv.add_fences(fence.deref(), 1, usage) {
    Ok(_) => match file.fences.alloc(Some(Box::try_new(Some(fence))?)) {
        Ok(id) => data.out_fence = id as u32,
        Err(_) => {}
    },
    Err(_) => {
        fence.signal()?;
    }
}
Лучше записать так:

if resv.add_fences(fence.deref(), 1, usage).is_ok() {
    if let Ok(id) = match file.fences.alloc(Some(Box::try_new(Some(fence))?)) {
        data.out_fence = id as u32;
    }
} else {
    fence.signal()?;
}


"Переработка драйвера VGEM на языке Rust"
Отправлено _kp , 03-Мрт-23 23:30 
> Если бы вы знали Rust также, как Си, то читаемость была бы

Да. Так лучше.
Но, как доходит до практического кода, то если "в лоб" переписать, то такая гадость получается.
А если переосмысливать, то и при переписывании с Си на Си конфетка будет ;)
Приходилось переписывать с Паскаля на С и С#, знаю.


"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 04-Мрт-23 00:14 
Такое clippy по идее должен фиксить

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 15:02 
400 строк это как минимум в 400 раз больше чем написал эксперт по Си с опеннет

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 11:46 
Да, это действительно событие. Оказалось возможным написать на Расте целых 400 строк рабочего кода для ядра.

"Переработка драйвера VGEM на языке Rust"
Отправлено _kp , 03-Мрт-23 12:14 
Не работающего в варианте на Rust! Вот в чем событие. ;)
А только запускающегося и частично функционирующего, в блоге ж сказано об этом.

В в этом и вопрос. Вроде бы тупо переписали, обложили unsafe блоками и обёртками. Что же могло пойти не так?


"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 13:26 
Как будто Си альфа версия этого драйвера работала идеально. Даже на 400 строках могут быть ошибки, и они наверняка были в ориг. драйвере в начале. Почему из каждого малейшего rust события пишутся новости? Это другой вопрос.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 13:54 
Потом что других нет, зачем вообще такое спрашивать это же самоочевидно.  

"Переработка драйвера VGEM на языке Rust"
Отправлено _kp , 03-Мрт-23 14:05 
> Как будто Си альфа версия этого драйвера работала идеально.

Скорее всего работал сразу.

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

На собственно функционал приходится совсем мало мало кода. И вот это "мало мало" привели в нечитаемый вид (исходник то смотрели?) и в итоге оно не портировалось.

Впрочем.. справедливости ради, автор и преследовал ни улучшение кода, ни повышение надёжности, а все лишь изучает Rust.
А маразм в том, что недописанный "hello world" преподнесли как новость.



"Переработка драйвера VGEM на языке Rust"
Отправлено Анонимусс , 03-Мрт-23 16:44 
Ну посмотрели мы исходники. И где там нечитабельно?
Если вы неосилятор и не можете в раст, то это проблема раста? Нет, это ваша личная проблема.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 17:31 
Если раст как и брейнфак не предназначен для чтения это проблема языка или читателя? Конечно же языка. Мог бы быть и более ридфрендли.  

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 04-Мрт-23 06:50 
Вам надо erlang посмотреть на котором куча народу программирует.

"Переработка драйвера VGEM на языке Rust"
Отправлено _kp , 05-Мрт-23 14:39 
>>И где там нечитабельно?

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


"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 12:37 
>представила проект по переписыванию

Слово "переписывание" ключевое в теме про Rust.


"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 19:10 
они даже 400 строк написать не могут, нужен образец для переписывания.

"Переработка драйвера VGEM на языке Rust"
Отправлено Tron is Whistling , 03-Мрт-23 12:53 
Целых 400 строк кода.
Вот он - уровень мегаг'rust'и.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 12:55 
Зато в этих 400 строках будет безопастно.

"Переработка драйвера VGEM на языке Rust"
Отправлено Tron is Whistling , 03-Мрт-23 12:58 
Люблю хруст

&self.timer as *const _ as *mut _

Писатели явно не читатели


"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 13:53 
Зато могут!

"Переработка драйвера VGEM на языке Rust"
Отправлено Вы забыли заполнить поле Name , 03-Мрт-23 18:05 
Это же ub?

"Переработка драйвера VGEM на языке Rust"
Отправлено www2 , 03-Мрт-23 17:28 
Безопастно - это без пасти?

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 13:18 
Можно было автоматическую переписывалку сделать - делов-то. Этим бы новость началась и закончилась. Как раньше с Фортрана на Си.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 13:52 
Ты ещё скажи с Си на ассемблер переписать. Ой так компилятор Си как раз этим уже и занимается.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 13:20 
У меня ощущение, что пик популярности раста уже прошёл. Печально, скорее всего не взлетело как раз из-за карго и статической типизации.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 13:21 
>статической типизации.

статической линковки, конечно же


"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 13:24 
Конечно прошёл. Сейчас васянам нельзя показать что они 7 лет его не замечали, поэтому начинают дружно кукарекать.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 13:50 
Ну так перестань кукарекать. Это несложно.  

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 13:51 
Уже на подходе куча технологий и языков заменителей без проблем которые не решаются в расте.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 04-Мрт-23 00:18 
В том и дело что "на подходе". Чем дальше тем сильно сложнее, конкуренция

"Переработка драйвера VGEM на языке Rust"
Отправлено Rustoman , 05-Мрт-23 18:19 
Да, и какие?

"Переработка драйвера VGEM на языке Rust"
Отправлено Прохожий , 03-Мрт-23 13:54 
Делаем консольное приложение на RUST с hello word, делаем окно под винды asm выводим туда строку hellowold, смотрим разницу в объеме исполняемого файла-))))

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 04-Мрт-23 00:22 
Жаль только, что за размер бинарей hello world денег не платят, тогда ассемблерщики в золоте ходили бы.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 04-Мрт-23 00:30 
Вот так раст и выходит "крутым" у любителей - через сравнение консольного и десктоп приложения.

"Переработка драйвера VGEM на языке Rust"
Отправлено anodymus , 03-Мрт-23 14:44 
Может оно и к лучшему, что скоро искуственные нейросети начнут код генерить судя по обсуждению под новостью.
А по поводу раста - ну подсадят вас корпы на этот язык, дав в качестве леденца некоторое упрощение в решении части проблем программирования. А потом включат телеметрию(например) как в го. И никуда вы не денетесь с этой подводной лодки. Всё-таки не комитет стандартизации над языком работает, а клуб по-интересам конкретных компаний.

"Переработка драйвера VGEM на языке Rust"
Отправлено kusb , 03-Мрт-23 15:37 
В любом случае, надо быть готовым к тому, что языки программирования будут продолжать развиваться и меняться. Хорошо, если разработчики успевают за этими изменениями и учатся новому. Но все же важно помнить, что в конечном итоге важно не язык, а то, что вы можете сделать с его помощью.

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

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


"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 16:23 
Мало написал про программирование, инструменты и языки.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 17:30 
Ты как обычно за слоганами и намерениями не видишь реализацию. Ты полностью наполнен маркетингом. Тебя очень легко обмануть. Почему никто нормальные люди не подметают дороги ломом или прутиком, это же гораздо безопаснее метлы или машины для очистки дорог. Хотя люди которые исповедуют чистку дорог ломами и прутиками тебе скажут любые слова, которые тебе понравятся.  

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 04-Мрт-23 00:27 
Потому что есть объективные метрики удобности инструментов для конкретных задач - сколько нужно времени на разработку, отладку, ввод в эксплуатацию, стоимость поддержки. Сюда же стоимость обучения и ее кривая и ещё куча всего. На основе чего будет очевидно что подметать ломами невыгодно бизнесу. Эволюция неизбежна. В языках, инструментах с технологиями это также не остановить. Кому-то к счастью, кому-то к сожалению.

"Переработка драйвера VGEM на языке Rust"
Отправлено kusb , 04-Мрт-23 13:49 
Ладно, прислушаюсь к себе, вдруг правда так делаю. Но это я ИИ скопипастил.

"Переработка драйвера VGEM на языке Rust"
Отправлено kusb , 04-Мрт-23 13:51 
Если что я против подметания дорог ломом и развития власти за счёт осуждения и слов, которые мне часто приятно слышать.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 16:22 
Т.е. написание врапера с биндингами это теперь проект и новостной повод? Ммм-окей.

"Переработка драйвера VGEM на языке Rust"
Отправлено Вы забыли заполнить поле Name , 03-Мрт-23 18:04 
Always has been (для раста)

"Переработка драйвера VGEM на языке Rust"
Отправлено Максим , 03-Мрт-23 16:39 
Девушки не пишут драйвера, вот в чём беда. Потому что это дело настоящих мужчин, как говорил Линус Торвальдс.

"Переработка драйвера VGEM на языке Rust"
Отправлено Анонн , 03-Мрт-23 16:54 
Товальдс говори “Talk is cheap. Show me the code.”
Абсолютно пофиг кто с той стороны монитора, если код работает.

"Переработка драйвера VGEM на языке Rust"
Отправлено Вы забыли заполнить поле Name , 03-Мрт-23 18:03 
На словах ты Лев Толстой (с)

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 17:56 
Все, сейчас переписаный lvmpipe будет rtx 4090 рвать в 4K.

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 19:06 
> на языке Rust. VGEM включает около 400 строк

Переписать 400 строк? Это геройский поступок! За сколько лет планируют это сделать?


"Переработка драйвера VGEM на языке Rust"
Отправлено Самый Лучший Гусь , 03-Мрт-23 19:56 
Думаю, что может поломаться

"Переработка драйвера VGEM на языке Rust"
Отправлено Аноним , 03-Мрт-23 22:24 
> по переписыванию

могли не уточнять, раст же