LINUX.ORG.RU

Кризис при продвижении языка программирования Rust в ядро Linux

 , ,

Кризис при продвижении языка программирования Rust в ядро Linux

2

5

В сообществе разработчиков ядра Linux возникли разногласия по поводу интеграции языка программирования Rust. Кристоф Хелвиг (Christoph Hellwig), мэйнтейнер подсистем DMA, KVM, Slab Allocator и архитектуры PowerPC в ядре Linux, в своё время входивший в управляющий технический комитет организации Linux Foundation и выступавший истцом в связанном с GPL судебном разбирательстве с VMware, отказался подтверждать патчи, связанные с поддержкой разработки драйверов на языке Rust.

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

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

Неcмотря на высказанное разработчиками проекта Rust for linux намерение о полностью самостоятельном сопровождении написанной на Rust кодовой базы, на прием патчей было наложено вето.

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

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

>>> Подробности (OpenNet)



Проверено: hobbit ()
Последнее исправление: hobbit (всего исправлений: 5)
Ответ на: комментарий от micronekodesu

Так получается не «в ядре поддержка rust» а «в драйверах видео поддержка rust».

А где договорились, там и поддержка.

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

Ядро слишком большое для таких категоричных переходов. Убрали барьер на входе, а дальше как пойдет.

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

Они это не для увеселения публики делают.

gaylord
()
Ответ на: комментарий от zabbal

Прогресс не остановить.

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

gaylord
()
Ответ на: комментарий от alysnix

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

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

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

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

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

vbr ★★★★★
()

наверное связано с «гонениями» на ЛГБТ в шататах :-) расто-проблемы

MKuznetsov ★★★★★
()
Ответ на: комментарий от gag

Ну, раньше без перла было никуда, хотя и сейчас в Debian так. А теперь добавился питон. Но что касается meson, то тут энтузиасты пытаются решить эту зависимость, реализовав его синтакс на Си: boson.

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

Ну а Перл нужно так же выбросить на помойку.

zg
()
Последнее исправление: zg (всего исправлений: 1)
Ответ на: комментарий от apt_install_lrzsz

Ну вообще-то есть чёткое понимание и цели. Там ЦРУ настоятельно рекомендует всем использовать ПО на безопасных языках (вот их определение ещё уточняется, но что делать и зачем - понятно). Но я согласен что линукс скорее всего останется на чистом си, а на расте другое ядро напишут, тот же редокс.

neumond
()
Ответ на: комментарий от neumond

Там ЦРУ настоятельно рекомендует всем использовать ПО на безопасных языках (вот их определение ещё уточняется, но что делать и зачем - понятно)

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

Lrrr ★★★★★
()
Ответ на: комментарий от zg

Rust изначально создавался как язык системного программирования.

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

И мусоросборщика там нет.

я это и говорил. это и есть главная гордость руста. мы такие же надежные как с мусоросборкой, и быстрые как си!!!. у нас - владение! (а ваше владение со счетчиками ссылок системщине не надоть)

alysnix ★★★
()
Ответ на: комментарий от Lrrr

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

А что касается перехода на безопасные языки, хотя бы для нового софта, почему это фигня и плохо?

neumond
()
Ответ на: комментарий от alysnix

А ты пробовал и аду и раст? Расскажи поподробнее.

neumond
()
Ответ на: комментарий от gaylord

Да, и это плюс. Питон есть буквально везде.

Сколько ещё он будет есть? Перл тоже был вездесущь, когда-то. Затем он стал самым ненавидимым ЯП и уже нынешнее поколение программистов его отвергло. Системный код не должен зависить от всяких там Перлов с Питонами. У него должна быть своя замкнутая экосистема, каковой её изначально и пытались сделать, правда неправильно. По-моему CMake вполне вписывается в это требование и вполне может полностью заменить нанавистный GNU Autotools.

Это касается языка, а не софта. Сценарии пишутся на некотором общем сабсете который этому не подвержен.

Я не про сценарии, я про сам Meson. Ты уверен, что он работает на любой актуальной версии Питона? Я вот не уверен и гугление подтвердило мои опасения:

https://github.com/mesonbuild/meson/issues/12714

Support for Python 3.13 #12714

Closed as not planned

meson is not yet ready for Python 3.13.

alkino opened on Jan 8, 2024

Ну и нахрена оно такое надо? Чтобы как и в случае с GNU Autotools была необходимость старых зависимостей конкретных старых версий?

Да и плевать, GNU мертв.

Как операционная система - да и давно. Как подстилка Linux - живее всех живых, хоть и обросла мхом и вообще Столлман - гриб.

zg
()

думаеццо когда растовчане окончательно затрахают мир системного софта, включая линукс, этот мир разродится наконец более продвинутым языком системного программирования, каким-нить C-next. идею можно списать с modula-2, синтаксис сишный, типизация строгая, модули в том числе и вложенные, канонический ооп.

alysnix ★★★
()
Ответ на: комментарий от alysnix

В расте есть владение со счётчиками ссылок: Rc, Arc. Борроу чекер умеет race conditions ловить в комптайме, в отличие от большинства языков. Там чуть больше чем замена мусоросборки.

neumond
()
Ответ на: комментарий от vbr

Считай - линукс на макбуках всё.

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

zg
()
Ответ на: комментарий от gaylord

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

Может некоторым лоровцам диван новый поставить интереснее, чем эту санту барбару гуглить)

pihter ★★★★★
()
Ответ на: комментарий от zg

А зачем он там вообще нужен?

По той же причине, по которой он нужен на любом другом компьютере.

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

А ещё это качественный ноутбук с самым быстрым в мире процессором. Это быстрая и дешёвая видеокарта с огромным объёмом доступной оперативной памяти. Аналогов ему просто нет.

Я бы вообще не тратил на это своё время.

А кто-то тратит.

vbr ★★★★★
()
Ответ на: комментарий от hateyoufeel

https://www.zdnet.com/article/linus-torvalds-takes-a-break-from-linux/

Нет.

Ушёл в отпуск, только и всего. Давно из того отпуска вернулся.

Всё ещё не вижу причин делать форк.

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

zg
()
Ответ на: комментарий от zg

Ушёл в отпуск, только и всего. Давно из того отпуска вернулся.

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

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

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

hateyoufeel ★★★★★
()
Ответ на: комментарий от neumond

В расте есть владение со счётчиками ссылок: Rc, Arc. Борроу чекер умеет race conditions ловить в комптайме, в отличие от большинства языков. Там чуть больше чем замена мусоросборки.

это все совершенно не нужно для написания кернелов и драйверов. «ловля гонок в комптайме» это тоже не нужно. системщик сами знают как писать код без гонок.

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

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

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

alysnix ★★★
()
Последнее исправление: alysnix (всего исправлений: 2)
Ответ на: комментарий от zg

Сколько ещё он будет есть?

Обозримое будущее точно

Системный код не должен зависить от всяких там Перлов с Питонами.

Большая часть скриптов в разработке ядра – Питон. Сюрприз.

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

К моменту смерти питона meson стабилизируется, туда перестанут приносить фичи, несовместимости с muon уберут и все будет хорошо. Прелесть meson в том, что он декларативный. Реализацию ты можешь написать хоть на brainfuck. Это не скрипт, как autogen.

Ну и нахрена оно такое надо? Чтобы как и в случае с GNU Autotools была необходимость старых зависимостей конкретных старых версий?

Ты дубль смотрел? Вот: https://github.com/mesonbuild/meson/issues/12401

The CPython PR is merged now. The missing API is restored to CPython alpha releases.

Проблемы нет, есть тревожность.

Как операционная система - да и давно. Как подстилка Linux - живее всех живых, хоть и обросла мхом и вообще Столлман - гриб.

Эм… где? Кроме GCC, GNUTLS и coreutils в моей системе кажется нет ничего от GNU.

gaylord
()
Ответ на: комментарий от token_polyak

Яблочная продукция. Тянки падки на айфон, неужели не в курсе?

zg
()
Ответ на: комментарий от thegoldone

Уверен мало, в сравнении.

В сравнении с чем? Автор hyprland код cmake’ом собирает и ему тоже нормально. Парню около 20.

gaylord
()
Ответ на: комментарий от vbr

По той же причине, по которой он нужен на любом другом компьютере.

Любой другой персональный компьютера позволяет ставить на него что угодно без танцев с бубном и вполне официально. Почти любой такой компьютер можно купить без предустановленной ОС.

А ещё это качественный ноутбук с самым быстрым в мире процессором. Это быстрая и дешёвая видеокарта с огромным объёмом доступной оперативной памяти. Аналогов ему просто нет.

И ты хочешь сказать, что купив такой новый «качественный» компьютер от яблокомпании ты тут же сносишь яблоось и накатываешь Linux?

А кто-то тратит.

Кто-то и в жёстком порно снимается. И что с того?

zg
()
Ответ на: комментарий от zg

Когда он изначально создавался там даже Class были.

mx__ ★★★★★
()
Ответ на: комментарий от neumond

А что касается перехода на безопасные языки, хотя бы для нового софта, почему это фигня и плохо?

потому что никаких «безопасных языков» нет, это фейк.

Растоманы пытаются впарить тонкую обертку над LLVM, в которой захардкодили пару случаев, и не более того. А то что не захардкодили - каст флоата в инт у них годами вызывал UB, setenv - годами вызывал гонки данных в линуксе (только в прошлом году «исправили», объявив небезопасным), в трекере куча багов с тегом unsound.

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

Lrrr ★★★★★
()
Ответ на: комментарий от hateyoufeel

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

А куда они уйдут? Если количество ушедших превысит некий критический минимум, они вполне могут объединиться, придумать новое название и форкнуть ядро. А дальше их поддержат корпорации и понеслось.

zg
()
Ответ на: комментарий от Lrrr

потому что никаких «безопасных языков» нет, это фейк.

Вот это копиум так копиум.

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

Это Zig. Rust защищает (tm).

gaylord
()
Ответ на: комментарий от gaylord

чудик, у тебя даже такая операция как деление на 2 может привести к утечке данных.

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

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

Lrrr ★★★★★
()
Ответ на: комментарий от zg

Любой другой персональный компьютера позволяет ставить на него что угодно без танцев с бубном и вполне официально. Почти любой такой компьютер можно купить без предустановленной ОС.

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

И ты хочешь сказать, что купив такой новый «качественный» компьютер от яблокомпании ты тут же сносишь яблоось и накатываешь Linux?

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

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

vbr ★★★★★
()
Ответ на: комментарий от Lrrr

чудик, у тебя даже такая операция как деление на 2 может привести к утечке данных.

Как это связано с порчей памяти в процессе работы казалось бы корректной программы? Т.е. она некорректная, но компилятор тебе об говорит не будет, потому что ты пошел ты.

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

Для этого написано крейтов на любой, которые тебе делают враппер, который правильно инициализирует, отдает, зануляет и прочим образом убеждается что твои данные можно использовать только там где надо и после использования их уже никто не прочитает. Я понимаю что это СЛОЖНО представить в сишном мире, где нет библиотек, но мы все-таки в 21 веке живем, тут уже научились код шарить.

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

Повторюсь, вот это копиум так копиум.

gaylord
()
Ответ на: комментарий от mx__

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

vbr ★★★★★
()
Ответ на: комментарий от gaylord

Обозримое будущее точно

Про Перл тоже так говорили, а теперь это жутко мохровое и мало кому нужное легаси.

Большая часть скриптов в разработке ядра – Питон. Сюрприз.

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

К моменту смерти питона meson стабилизируется, туда перестанут приносить фичи, несовместимости с muon уберут и все будет хорошо. Прелесть meson в том, что он декларативный. Реализацию ты можешь написать хоть на brainfuck. Это не скрипт, как autogen.

Так он ещё даже не стабилизировался? Зачем же такое в сборку основной системы предлагать? Что касается декларативности, то не один Мезон такой. CMake и даже просто Make тоже декларативные.

Ты дубль смотрел? Вот: https://github.com/mesonbuild/meson/issues/12401

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

Проблемы нет, есть тревожность.

И вполне оправданная. Инструменты сборк должны быть очень надёжными.

Эм… где? Кроме GCC, GNUTLS и coreutils в моей системе кажется нет ничего от GNU.

glibc, binutils, gdb. Разумеется этому всему есть альтернативы, но в меинстрим дистрибутивах используют именно GNU.

zg
()
Последнее исправление: zg (всего исправлений: 2)
Ответ на: комментарий от gaylord

Предлагается делать общую абстракцию

Опять же, пусть делают. Почему это должно быть в репе ядра?

no-such-file ★★★★★
()
Ответ на: комментарий от Lrrr

Мне эти аргументы напоминают сторонников народной медицины.

Нет никакого гарантированного лечения, это фейк.

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

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

neumond
()
Ответ на: комментарий от gaylord

Для этого написано крейтов на любой, которые тебе делают враппер

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

А если таки знаешь, то никакой раст тебе не нужен. Как я сказал, никто не запрещает делать рантайм-проверки в том же си.

Lrrr ★★★★★
()
Ответ на: комментарий от zg

Про Перл тоже так говорили, а теперь это жутко мохровое и мало кому нужное легаси.

Вообще его автолулзы требуют. Так что…

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

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

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

Потому что 3.13 ещё не было практически нигде.

Так он ещё даже не нестабилизировался? Зачем же такое в сборку основной системы предлагать?

Потому что работает. Туда могут новое принести. Старое обычно не уносят.

CMake и даже просто Make тоже декларативные.

Пффффф. Давай не будем начинать про Make (какую, кстати, его вариацию и какую версию этой вариации?). У cmake тоже недавно был мажорный бамп, когда кучу новых функций принесли.

glibc, binutils, gdb. Разумеется этому всему есть альтернативы, но в меинстрим дистрибутивах используют именно GNU.

Это не значит, что он жив. Просто glibc выкинуть дорого.

gaylord
()
Ответ на: комментарий от neumond

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

Lrrr ★★★★★
()
Ответ на: комментарий от Lrrr

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

Это все здорово, а как оно к языку относится? Потому что в все ровно то же самое, только сверху добавляется ещё и сишных проблем. И как мы знаем, основная проблема это не mlock() кто-то забыл, основная проблема это в очередной раз кто-то отвлекся на фразу «эй парни, идем обедать?» и забыл проверить на длину, после чего тысячи систем порутали. Вот это проблема, а не вырожденные случаи вроде mlock().

А если таки знаешь, то никакой раст тебе не нужен.

Полный бред, доказано миллионами CVE. Я не буду это в сотый раз обсасывать.

gaylord
()
Ответ на: комментарий от alysnix

Ну так в расте можно и трейт сделать, делающий запрет прерываний и входящий в критическую секцию, причём автоматически. Я не уверен что он прямо сейчас это умеет из коробки, но похожие штуки уже есть. Короче мне не понятно почему 20 миллионов строк кода в ядре должны обязательно быть написаны вручную и вручную проверены и почему условные хаки на си нельзя запаковать в ансейф и повсеместно этим пользоваться, почему обязательно контракт должен быть в документации, а не на уровне языка.

neumond
()
Ответ на: комментарий от zg

Rust изначально создавался как язык системного программирования.

То, для чего язык создавался и то, во что со временем превратился – это совсем разные вещи. Это первое. Второе – язык подбираешься под задачу. Немного глупо брать раст для системщины только лишь за ради секюрити фич. При этом, использовать в кодинге ядра всего лишь 5-10% его возможностей. Может лучше его применять в тех областях где его потенциал будет использоваться на максимум и не лезть в чужой монастырь… А секюрити можно подтянуть множеством других способов, о которых прекрасно написали выше.

И третье: если раст позиционируется как язык системщины, то почему на уровне языка никто не позаботился о совместимости с сишными вызовами? Вот в ZIG это предусмотрели на этапе проектирования языка. И, ИМХО, именно он больше всего был бы к месту в ядре, а не раст.

iron ★★★★★
()
Ответ на: комментарий от mx__

Этому ИИ будет без разницы, на чём программировать. Поэтому он сможет использовать более совершенный инструмент.

vbr ★★★★★
()
Ответ на: комментарий от neumond

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

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