Мигель Охеда (Miguel Ojeda), автор проекта Rust-for-Linux, предложил для рассмотрения разработчиками ядра Linux третий вариант компонентов для разработки драйверов устройств на языке Rust. Поддержка Rust рассматривается как экспериментальная, но уже согласована для включения в ветку linux-next. Разработка финансируется компанией Google и организацией ISRG (Internet Security Research Group), которая является учредителем проекта Let's Encrypt и способствует продвижению HTTPS и развитию технологий для повышения защищённости интернета...Подробнее: https://www.opennet.ru/opennews/art.shtml?num=56295
чего только не сделают, лишь бы си не учить
Да причем тут С? О чем Вы? Зачем тащить ненужный легаси код в ядро? Почему на множестве языков можно писать код для ядра, а Расту, понимаете ли, нужно какие-то особые привилегии?
Есть Команда ядра Раста, вот там пусть и решают генетические проблемы, а код в ядре не должен содержать ничего лишнего. На крайний случай, пусть сделают модуль ядра RustCore, для запуска поддержки модулей на Расте.
> на множестве языков можно писать код для ядраОгласите весь список, пжжжста!
C
assembler
find /usr/src/linux/ -iname '*.sh' | wc -l
611find /usr/src/linux/ -iname '*.py' | wc -l
129find /usr/src/linux/ -iname '*.pl' | wc -l
50find /usr/src/linux/ -iname '*.awk' | wc -l
9find /usr/src/linux/ -iname '*.cpp' | wc -l
7find /usr/src/linux/ -iname '*.asm' | wc -l
5find /usr/src/linux/ -iname '*.rb' | wc -l
1Вон, даже на Рубине можно. Так что не надо там тут.
Проверьте патчи перед предъявлением при помощи scripts/checkpatch.plПолучите список сопровождающих при помощи scripts/get_maintainer.pl
https://www.kernel.org/doc/html/latest/process/submitting-pa...
Эээ... и что, в исполняемом файле ядра содержатся интерпретаторы всех этих языков и скрипты вместе со всеми нужными библиотеками?
они используются для сборки, разработки и тестирования
> Огласите весь список, пжжжста!На любом компилируемом, доступным под платформу -- это как минимум. Да, частенько, будет очень много проблем с MM (а это строки и т.п.), но никто не мешает реализовать костыли или буфер на самом языке.
Не на любом. На расте нельзя. Растоос тому доказательство.
> Не на любом. На расте нельзя. Растоос тому доказательство.Вы читать не умеете?
> доступным под платформу
Вот поддержка Rust для NT https://github.com/pravic/winapi-kmd-rs/
согласия Микрософт не требует.
Делал один человек, статус proof-of-concept, но тем не менее, для начала достаточно.Пользуясь случаем, прошу прокомментировать вопросы по примеру драйвера, который портирован с C++ https://www.opennet.ru/openforum/vsluhforumID3/126023.html#121
В варианте Rust не используется механизм структурной обработки исключений (SEH) и драйвер является потенциальным генератором BSOD, или я что-то упустил?
Тебе же сказали - "с минимальными усилиями создавать безопасные и более качественные драйверы".Минимальными! Более лучшие качественные! Че еще непонятно то???
Евгений Ваганович, перелогиньтесь.
Бсод это самый безопасный вариант обработки исключений.
4 years ago
И что? Оригинальная версия на Си++ написана более 10 лет назад и отлавливает исключения.
Генетика это продажная девка кого-то там, я уже не помню кого. Так говорили знающие товарищи при Сталине и Хрущеве.
Империализма, кого же ещё? ;-)
> Зачем тащить ненужный легаси код в ядро?Так и кто тащит? В C нет рантайма и в Rust нет рантайма (Zero Coast Abstrations).
> Почему на множестве языков можно писать код для ядра, а Расту, понимаете ли, нужно какие-то особые привилегии?
Так как Rust это такой же Си, но только с двумя с половиной правилами:
- Можно одну мутабельность
- Указатели только ссылками
Во всем остальном разницы нет (я бы вообще Rust рассматривал как разновидность - урезание C класса языка,
но там увы два символа в отличае от Си появились mut и &, так что блин не выходит формально.> а код в ядре не должен содержать ничего лишнего...
Кому должен скрепам и устоям разных анонимусов да _hide_?
> На крайний случай, пусть сделают модуль ядра RustCore, для запуска поддержки модулей на Расте
ну ты туда им напиши, а то что тут разошелся. Без тебя поди не поймут чего им делать...
> Во всем остальном разницы нет
fn five() -> i32 {
5
}int32_t /* >;-) */ five() {
5;
}
>> а код в ядре не должен содержать ничего лишнего...
> Кому должен скрепам и устоям разных анонимусов да _hide_?Знаете, задавая такие вопросы Вы только подчёркиваете отсутствие каких-либо знаний. Вам бы почитать https://ru.wikipedia.org/wiki/%D0%97%D0%... и вот это https://ru.wikipedia.org/wiki/%D0%9E%D0%... , для начала, потом нужно обдумать эти тексты (судя по скорострельности, рожать МЫСЛИ Вы будете быстро, но спешите, хотя бы 2-3 месяца). Есть вероятность, что Вас посетит прозрение и Вы все поймете.
До них дошло, что делать невозможное на самом деле невозможно? Wow!
C89,C99 - чувствуете поступь веков?
А тут В Rust такой галоп версий и незакрепленных фичей - кудаж им в ядро,
Раст намного сложнее Си. Тут дело не в этом.
Последние времена наступают. Так недалеко и до поминок Линукса.
ой вы прям, диванные харонители всего и вся....
король умер - да здравствует король !!
попрет - ядро проржавеет. не попрет - не проржавеет. :)
главное штоп костюмчик сидел
До нерутуемых смартфонов недалеко.
Так ужеж. Даже батарейки незаменяемые.
главное чтобы без cargo и crates.io было
Нет. Погодите, а что плохого если будет возможность использовать внешние модули?
Я хочу в режиме ядра может использовать общий код каких-нибудь красно-черных деревьев,
а вы мне что предлагаете как в этих ваших Си таскать за собой хедера или того хуже
целиком код? Нет уж пусть пилят create.io, но для ядра и для ембеда тоже надо...
> Нет. Погодите, а что плохого если будет возможность использовать внешние модули?
> Я хочу в режиме ядра может использовать общий код каких-нибудь красно-черных деревьевПока Вы тут холиварите, их уже переименовали в красно-инклюзивные.
А чем опеннетовцам так rust не нравится, сложно учить?
Сложно на него смотреть. Я то думал хуже старых плюсов и перла ничего нет (в плане смотреть, писать на них здорово), но у раста получилось.
У меня прямо противоположное впечатление. В расте код куда понятнее чем в плюсах.
Это пока евоные generic'и не докрутят до уровня template'ов, да и то, сейчас уже лапша часто бывает.
Надеюсь что никогда не докрутят. Темплейты в плюсах сейчас читать совершенно невозможно.
Хелловорлд небось только видел?
Небольшой веб сервис писал, парсер хмля, динамическую библиотеку для ноды. ЧЯДНТ?
Поддерживаю.
Не осилил плюсы? сочувствую. Я думал ты умнее.
Для того, чтобы понять, что какаха несъедобна, не обязательно её пробовать на вкус. Я думал ты умнее, мог бы догадаться до такой простой мысли.
Наверное, такой же глупый, как и Линус Торвальдс, который считает, что плюсы не нужны.Во всяком случае, мне хватает ума не опускаться до прямых оскорблений.
Вот сейчас Линус бы удивился...
Можно увидеть примеры кола для сравнения?
> В расте код куда понятнее чем в плюсах.О, великий растаман! Расскажи, что означает смайлик "водолаз"?
_:()
Я (не считаю себя растоманом ни разу, просто любопытен язык) уже отвечал на этот вопрос в предыдущей новости про Раст. Знак подчеркивания в начале имени переменой означает, что компилятор не будет проверять, используется ли данная переменная в коде. Круглые скобки означают пустой тип (что-то вроде null, void).
> О, великий растаман! Расскажи, что означает смайлик "водолаз"?
> _:()И то ли дело
int _??(10:> = <%0??>;
В любом случае это не то что я ожидаю от современного языка который бы имел шансы заменить си.
Почему сослагательное наклонение? Уже потихоньку заменяет. Небыстро, да. Но все к этому идёт.
Я больше поверю в то что через 10 лет про раст все забудут (ну кроме совсем уж фанатиков).
Объективно плюшки которые предлагает раст гораздо слабее (относительных плюшек которые в свое время предлагали) java, go и продвигается слабее C# (впрочем он все равно никому даром не нужен), а они не смогли.
Есть одна очень большая плюшка раста - всякие нативные библиотеки для скриптовых штук типа ноды или питона на нём писать одно удовольствие. На C можно писать либо простые библиотеки, либо получается слишком многословно и баговано. На Java, Go и C# так не получается.
Так плюшки в java и го идут в комплекте с сюрстрёмингом (GC). Не всегда это можно переварить.
Объективно они как раз гораздо сильнее. Потому что нет рантайма - раз, код такой же быстрый на выходе, как у Си - два. Плюс лучшая инфраструктура - три (система сборки, центральный репозитарий кода).Java был в своё время одним из самых распространённых языков программирования. Поэтому где она там не смогла, остаётся только догадываться. Да и C# тоже был популярен (и сейчас его популярность растёт, вроде как).
Go занял свою нишу и прекрасно там себя чувствует.В общем, хватит личные фантазии выдавать за объективную реальность, неинтересно.
> Объективно они как раз гораздо сильнее. Потому что нет рантайма - раз, код такой же быстрый на выходе, как у Си - два.Во-первых не такой же быстрый, в тех тестах что я видел, он всегда был медленнее С++ с последним clang, иногда на на чуток, иногда на порядок (что по-моему странно учитывая что rust использует LLVM и якобы лучше и быстрее плюсов, в таком случае с его волшебными нулевыми абстракциями, волшебной системой типов, компайл-проверками, он должен быть быстрее, но на практике выходит наоборот, наврали), во-вторых рантайм в расте конечно же есть (как и в плюсах, конечно можно и без него собрать), нет виртуальной машины и gc. В-третьих были и другие языки виртуальных машин (собственно до джавы все такими были) - тоже не взлетели.
> Плюс лучшая инфраструктура - три (система сборки, центральный репозитарий кода).
Ну такие себе аргументы. Репозиторий кода делается на коленке за неделю. И у плюсов тоже есть хоть и не из коробки. Посмотрел бы я как что-либо низкоуровневое собиралось бы без системы сборки.
> Java был в своё время одним из самых распространённых языков программирования. Поэтому где она там не смогла, остаётся только догадываться.
> Да и C# тоже был популярен (и сейчас его популярность растёт, вроде как).Но они заняли свои области, C++ как был живой так и остался.
Учить его не сложнее питона. На мой взгляд, есть 2 недостатка. Это cargo и llvm. Есть ещё 3, что язык сыроват и до сих пор не обеспечивает многих ожидаемых от него возможностей. Кому-то не нравится, что проверки совсем не бесплатны (скорее всего где-то можно ограничится компайл-тайм проверками, я не разбираюсь пока в достаточной мере).
Три недостатка: Сargo, LLVM, BSDL. Или 4, если учесть, что сырой. GNU Rust, как-то, ненаблюдается.
Почему это недостатки?
Какой язык можно считать верхом совершенства, и который поэтому не требует модификаций?
Есть еще нулевой недостаток, самый главный - гигантский технический долг, обусловленный полным отсутствием целостного дизайна.Язык развивается по классическому аджайлу - тут допилим, там отломанное приклеим, тут накопившийся груз костылей переделаем, попутно отломав что-то еще и навешивая сверху новые заплатки и костыли.
Просто смешно читать про техдолг в контексте Си. В rust это хотя бы решили модулями и эпохами, что позволяет избавляться от неудачных решений не ломая совместимость с предыдущими эпохами.
А что в си, что в плюсах гигатонны легаси говен будут навечно жить в языке из-за "обратной совместимости".А про целостность дизайна вообще лучше не упоминать - на заре создания си была куча несовместимых реализаций, диалектов, компиляторов, пока не появилась пародия на стандарт, которых пропихнули в ISO... почти через 20 лет создания языка (ANSI C89). И до сих пор есть куча несостыковок, потому что слишком много отдается на откуп реализации конкретного компилятора.
Ну и конечно олимпиада по велосипедостроению в виде написания приколоченных к одному компилятору расширений, вроде GNU C Extensions, что является прекрасным примером непродуманности стандарта (раз это полезно, а не в стандарте) или NIH синдрома и вендерлока со стороны разрабов компилятора.
Так что набрасывайте получше что ли...
Как на растёт напишут что-то дельное, тогда и поговорим о поддержке ленами, а пока они хоть каждый день могут мажорную версию обновлять
Как осилишь язык, тогда и сможешь что-то дельное говорить о нём. А пока ты - типичный балабол, не разбирающийся в теме, но мнение имеющий.
О, обожаю игру "когда Х, тогда и поговорим"!Так, вспомним что было раньше...
"Когда выйдет версия 1.0, тогда и поговорим"
"Когда rust сможет себя скомпилировать, тогда и поговорим"
"Когда он сможет вызывать асм и сисколы, тогда и поговорим"
"Когда на нем можно будет написать ОС, тогда и поговорим"
"Когда его поддержит хоть какая-то крупная компания, тогда и поговорим"
"Когда на нем смогут написать хотя бы один драйвер, тогда и поговорим"
<---- Вы находитесь тут
"Когда на нем разрешат писать в ядро, тогда и поговорим"
"Когда новые драйвера будут писать на раст, тогда и поговорим"
... много лет спустя, возможно даже после смерти раста...
"Когда сишникам останется работа только разгребать легаси говнокод, тогда и поговорим"
"Когда последних сишников будут искать как спецов для кобола сейчас"
Мне кажется этот аноним вполне может претендовать на звание олимпийского чемпиона по глупости 2021 года.Ядро линукса, __наприсанное на С__ и оцениваемое в 73 тысячи человеколет поддерживает один человек. Это ядро уже два десятка лет спокойно переживает переезд на новую версию компилятора (которых за это время накопились уже десятки). Это же ядро, __написанное на С__, портировано везде - начиная с кофеварок и заканчивая суперкомпьютерами, на десятки и десятки архитектур.
Сотни и тысячи проектов, __написанных на С__, точно так же портированы везде и вся, прекрасно работая и не требуя десятков человеколет на то, чтобы быть перенесенными на новую платформу.
Ну давай, расскажи нам еще про проблемы С в сравнении с растом.
>Мне кажется этот аноним вполне может претендовать на звание олимпийского чемпиона по глупости 2021 года.Сначала ему придётся вырвать победу зубами у тебя.
>Ядро линукса, __наприсанное на С__ и оцениваемое в 73 тысячи человеколет поддерживает один человек
Наглое враньё. Думаю, списки мейнтейнеров для каждой подсистемы ядра ты найдёшь сам. Но ты же не будешь искать, потому что прекрасно знаешь, что наврал. Ну и, разумеется, сама по себе идея того, что один человек может поддерживать такую огромную кучу кода, просто смехотворна.
> Сотни и тысячи проектов, __написанных на С__, точно так же портированы везде и вся, прекрасно работая и не требуя десятков человеколет на то, чтобы быть перенесенными на новую платформу.
А проекты на других языках, надо полагать, требуют?
А вот и второй претендент подкатился.
Опеннет не перестает радовать.
> Ну давай, расскажи нам еще про проблемы С в сравнении с растом.Рассказываю (в энный раз, наверное, но не до всех с первого раза доходит, увы). Количество ошибок, допущенных на Си при работе с памятью составляет в соответствии с некоторыми исследованиями от 60 до 80 процентов общего количества ошибок в ПО. Эти ошибки так или иначе вендор должен исправлять. Исправление ошибок не бесплатное удовольствие, стоит дохрена денег. Помнится, Майкрософт в один прекрасный момент на месяц-другой вообще прекратила разработку ПО только для того, чтобы обучить программистов работать с памятью. У Раста такого класса ошибок нет от слова "совсем". Является ли это проблемой Си? Безусловно является. И это огромная проблема.
Теперь про "непродуманный дизайн", о котором ты тут распинаешься. Про Си (который ГОРАЗДО ПРОЩЕ по своей сути по сравнению с Растом) тебе уже сказали, возразить по существу ты не в состоянии, поэтому начал пытаться натягивать сову на глобус, рассказывая про тысячи кофемолок и прочего ширпотреба, под который писали код на Си. Получилось очень неуклюже. В логику ты не умеешь, похоже, от слова "совсем". То, что Си повсеместно использовался для разработки ПО под разные устройства, СОВЕРШЕННО НЕ ОЗНАЧАЕТ, что в дизайне Си не было и нет проблем. Просто люди находили всяческие обходные пути для их решения, когда надо было обеспечивать переносимость кода (например, ядро Линукса).
Теперь про якобы ошибки в дизайне Раста. Возможно, они есть (а где по-другому?). Но эти ошибки никак не затрагивают написанный софт. Всё, что надо сделать, просто указать в настройках при сборке, что вот эта ветка кода для такой-то эпохи Раста, а вот та - для другой. Компилятор будет понимать, что вот то - старый код, а это - новый. И код будет работать без каких-либо проблем и далее, даже несмотря на то, что эпохи разные. Разработчики Раста ГАРАНТИРУЮТ эту работоспособность. Если же код не будет работать, это считается багом, о котором разработчики просят сообщать. Обещают фиксить такие баги.
Другими словами, ты из мухи попытался сделать слона, но вышло, как обычно, у людей тебе подобных, очень неуклюже - не загрязняй атмосферу, короче.
Мой тебе совет на будущее. Когда нечего сказать, лучше промолчи. Глядишь, за умного сойдёшь.
В cobol были инвестированы миллионы человеко-часов и куча денег. И где он сейчас? Умер, а те кому приходится допинывать его труп молятся чтобы не случилось чего-то непоправимого пока они не мигрируют куда-то... Ну, вроде смерти последнего программера, который понимал что происходит у них в коде.Где какой-то AGC? Там же где компьютер для Аполлона - в музее. Или ALGOL?
Ладно, возьмем по-поновее - куда делось делись pascal и delphi? Кто-то еще пилит свое ентерпраз-легаси, кто-то этому учит в школе, где-то еще трепыхается FreePascal, но по факту они всего лишь погрешность измерениях по сравнению с остальным языками.А на счет одного человека - не смешите, это давно уже менеджер, который делегирует задачи другим ментейнерам, иногда поглядывает в код и устраивает срачи в рассылке чтобы о нем не забывали.
И чтобы не быть голословным - цитаты из его интервью 2021 года, надеюсь ты осилишь оригинал."LT: I write very little code these days, and haven't for a long time. And when I do write code, the most common situation is that there's some discussion about some particular problem.
And yes, I spend time on code reviews too, but honestly, by the time I get a pull request, generally the code in question should already have been reviewed by multiple people already. So while I still look at patches."
У него нет времени ни писать код, ни уделять достаточно времени, по его же словам, ревью кода.
>есть 2 недостатка. Это cargo и llvm.Что же в этом плохого?
>до сих пор не обеспечивает многих ожидаемых от него возможностей
Каких, например?
>проверки совсем не бесплатны
Бесплатны. Все абстракции языка - zero cost. Все проверки проводятся во время компиляции.
>я не разбираюсь пока в достаточной мере
А мнение имеешь. Может, разберёшься для начала?
Ты спрашиваешь очевидные вещи и лжёшь, агрессивничаешь. Почему я должен тебе отвечать? Твоё невежество это только твоя проблема, и так ты ничему не научишься.
В чём конкретно я солгал, например? Ты, конечно, никому ничего не обязан. Но не обижайся тогда, если к тебе будут относиться, как к тому голубю из анекдота про игру в шахматы. Ок?
Ты солгал про бесплатные проверки и в профилировщике видно как 99% времени тратится на проверки. Научись сначала разговаривать, тогда может и отвечать будут.
Особо одарёнными личностями, засравшими всю ленту проектами на Rust только потому, что они - на Rust.
А ты тоже из таких "одарённых", похоже? Засpал своими комментариями все новости только потому, что язык неосилишь никак?
Лично меня пока что отталкивает от него экзальтированный энтузиазм растофанатиков. Человек в таком состоянии редко способен создать что-то путное.
Обычно те, кто набрасывает и те, кто создает - очень и очень разные люди.
И в любом случае экзальтированный энтузиазм растофанатиков как-то легче переносить, чем массовое и довольно топорное обсирание того, в чем не разбираешься со стороны растохейтеров.
А как вы определяет, что то не были тупо тролли?
Полагаюсь на интуицию
Тем что сырой язык общего назначения, на котором ничего сложнее http-серверов и одного нано-ядра так и не написали, пихают в низкоуровневую системщину для которой он в принципе и не предназначался. Мотивируя это тем что ценой дополнительных накладных расходов он должен решить проблемы, которые можно решить и без впердоливания целого ЯП со своим рантаймом, компилятором и ПМ.
>язык общего назначения
>пихают в низкоуровневую системщину для которой он в принципе и не предназначалсяЕсли язык общего назначения, почему его нельзя и в системщине использовать в том числе?
>ценой дополнительных накладных расходов
Там их нет от слова "совсем". Абстракции языка бесплатны. Проверки производятся на этапе компиляции.
> он должен решить проблемы, которые можно решить и без впердоливания целого ЯП со своим рантаймом, компилятором и ПМ
1.Если бы действительно можно было решить, то уже решили бы.
2. У Раста НЕТ рантайма.
>> У Раста НЕТ рантайма.Будем честными. Практически у всех языков есть рантайм. В том числе у раста и у С. Другое дело, что он (рантайм) опциональный. Поэтому да, раст подходит для ядра.
А вот у кого нет рантайма, так это наверное ассемблеры и форт.
Будем честными и перестанем натягивать сову на глобус. Библиотеки - это не то же самое, что рантайм. У Раст рантайма нет. Нужны ли ему библиотеки для работы? Да, нужны. И что? Чем он отличается в этом плане от любого другого языка, используемого для разработки сложного ПО?Форт - вообще сферическая вещь в вакууме.
Ассемблер? Ну Колибри ОС, например, на нём написана. Скажете, там нет библиотек?
1) Навязчивый форс, ставший мемом.
2) Плохо читаемый синтаксис, даже на C++ можно писать понятнее.
3) Нет реальных преимуществ, все то же можно сделать средствами C++.
4) Фрагментация кодовой базы. Теперь нужно учить еще один язык, тогда как необходимость знать C/C++ никуда не делась и не денется.
5) Фактически не является свободным языком.
забыл про cargo и llvm
Ну хоть кто-то знает дзен раста. Надо бы это добавить на главную их сайта
>> Фактически не является свободным языкомТак потому в ведро и пихают
1) Почему любая новость про продукт на Си не является форсом, а новость про продукт на Раст - является?
2) Отлично читаемый, если язык знать, почитать документацию вводную, а не пытаться осилить язык по новостям на Опеннете.
3) Си++ намного сложнее и у него куча ситуаций с undefined behavior. В Раст такого нет, и это его преимущество. Плюс стандартная и удобная система сборки. Плюс мощный линтер. Плюс централизованный репозитарий кода.
4) Если нужно старые проекты поддерживать - да, Си нужно знать. А если с нуля начинать что-то новое - уже Си знать и необязательно.
5) Почему?
1) Потому что на сях продукты, а на хрусте унылые клоны-недоделки ради хайпа.
2) _: &() = &[()] ... оядолблючитабельность. Не хватает только китайских иероглифов.
3) Чтобы писать на плюсах - надо немножко думать. Для тех, кто привык к расту и прочим жабоскриптам - сложновато, понимаю. Проще из культа карго васянских лефтпадов натащить, и кое-как слепить деревянными конструкциями на компосте.
4) В данном случае лучше просто не начинать.
5) Потому что гладиолус.
1) И зачем бы я пытался выдавать своё личное мнение за объективную реальность? Гугл, Майкрософт, Амазон, Вавей Раст УЖЕ используют. А то, что кто-то из новых адептов Раста решил свои силы попробовать и переписать что-то уже имеющееся - вполне нормальное явление. Так со всеми языками происходит рано или поздно.
2) И что там сложного в чтении? Скажешь, подобного на Плюсах нельзя нарыть? Вон, чуть выше в данном же треде пример есть соответствующий. Но ты его, конечно, не заметил. Почему я не удивлён?
3) Надо не просто немножко думать. Надо очень и очень много думать, несоразмерно много, по сравнению с получаемым выхлопом. Для тех, кто не привык себе насиловать мозг в попытках разобраться в очередном UB - это вполне нормально, люди в основной массе не мазохисты. Но бывают исключения, конечно же. А ещё процесс программирования - это не вещь в себе. Программирование должно решать поставленные задачи в установленные сроки за приемлемые деньги. Но некоторые васянские программисты на Плюсах этого не понимают почему-то.
4) Потому что васяны не могут из-за интеллектуальной импотенции Раст освоить?
5) Слив засчитан. Пиши исчо (нет).
1) ну, крупным корпорастам оно даже выгодно - чем больше хомячков будут писать хеллоуворлды вместо полезного, тем востребованнее будут реальные продукты
2) нарыть - можно, в случае хруста - намного сложнее нарыть вменяемый код, поскольку сам язычок невменяем
3) думать - это полезно
4,5) без комментариев
Плюсам бы обнулится. Чтобы string не компилился в каждом .cpp
За поддержку компилятора надо молоко давать.
> А чем опеннетовцам так rust не нравится, сложно учить?Дело не в языке, а в странной тенденции. Раньше переписывали из машинного кода в Си. Что бы сменить лицензию. Теперь переписывают готовые исходники на Rust.
Переписывание повышает чсв, создавая иллюзию причастия к созданию. На самом деле нет.
Если бы только это. Раньше: была EULA, стала MIT. Теперь: была GPL, станет - ?
Apache License, MIT, BSD-like... в общем любая свободная лицензия подошла бы.
> Apache License, MIT, BSD-like... в общем любая свободная лицензия подошла бы.MIT и BSD даёт больше свобод в плане закрытия исходников. Поэтому GPL меняют на них, в этом цель переписывания?
Судя по гиперактивности маркетинга - yes, indeed.
Ничего странного тут нет, если подумать. Основных причин две у такой тенденции.Первая - обучение новому языку программирования. Люди смотрят в хорошо отлаженный на Си код, и пытаются повторить то же на Расте. Получается, разумеется, не всегда хорошо, потому что у каждого языка своя специфика, и, скорей всего, квалификация переписывателя пока ниже квалификации оригинального автора.
Вторая - переписывание потенциально проблемного кода.
Суть вопроса -- в смене лицензий при переписывании -- осталась нераскрыта.
> А чем опеннетовцам так rust не нравится, сложно учить?ок. зачем мне обвертка для работы с регистрами, адресами и пр чтоб работать с регистрами и адресами ? написать обвертку для обвертки и потом в этой обвертке типа безопасно писать ? вообще удивительно как на столько бредовая идея получила внимание.
>> А чем опеннетовцам так rust не нравится, сложно учить?
> ок. зачем мне обвертка для работы с регистрами, адресами и пр чтоб
> работать с регистрами и адресами ? написать обвертку для обвертки и
> потом в этой обвертке типа безопасно писать ? вообще удивительно как
> на столько бредовая идея получила внимание.О, ассемблерщикЪ подтянулся, сишников гнобит ...
Зонтик-то захватил?
НАШИХ БЬЮТ!
Не нравится исключительно из-за жирности, долго собирается, так бы и внимание на него не обратил.
Какой ещё жирности?Долго собирается только потому, что компилятор Раст куда умнее того же Сишного, делает кучу дополнительных проверок на что Си изначально даже не обращает внимание (вот как ты не обращаешь на довольно удобный инструментарий).
Это он не медленный, это он умнее. Ну тогда все понятно
Когда нечего сказать по сути, лучше промолчать, а не пытаться сарказмом сгладить свою некомпетентность.Вижу же, что непонятно. Попробую второй раз, глядишь - дойдёт. Да, это он не медленный. Просто ему надо сделать гораздо больше операций, нежели компилятору на Си, чтобы добиться результата. Почему больше? Потому что компилятор на Расте даёт такие гарантии на качество конечного кода, которые компилятор на Си не даёт.
> Разработка финансируется компанией Google
> Помимо компаний ARM, Google и Microsoft
> выразила компания Red Hat
> Напомним, что Google напрямую обеспечивает поддержку проекта Rust for Linux
> Компания Microsoft приступила к реализации драйверов для Hyper-V на Rust
> Компания IBM реализовала поддержку Rust в ядре для систем PowerPCЭтого достаточно чтобы не любить ржавчину.
А чего нос воротишь? Основной вклад в Linux вносят как раз эти и другие крупные компании. Патчей от энтузиастов жалкие проценты. Что бывает, когда компании прекращают активно развивать, можно видеть на примере стагнации BSD систем. Они на плаву лишь потому, что портируют из ядра Linux драйверы. По каким-то идейным соображениям драйверы для WiFi они пытаются сами писать. Их результ – еле работающий WiFi, не старше N. Недавно появились новости, что наконец начнут работу над AC. А в Linux уже давно AX есть.
Не нравятся компании – удаляйте Linux и ставьте NetBSD или OpenBSD.
Во-первых я бы не стал оценивать патчи в киллограммах.
Во-вторых я бы не стал причислять всех людей с корпоративным мылом гугла к гуглу. Я считаю что нужно разделять когда ты идейно пилишь полезные всем патчи и за это получаешь деньги от корпорации зла (которой тоже нужны эти патчи) и тем самым только подчеркиваешь идеи опенсурса и уволишься в тот момент когда ваши пути разойдутся. И когда ты получаешь деньги чтобы пропихивать в проект нужные корпорации патчи не соответствующие философии проекта, это совсем другой случай, сродни проституции.
В третьих я не вижу проблемы сидеть на wifi старше n, мне тоже не нужен ax, устройств с ac у меня немного и они тоже бы прекрасно жили на n. Я не считаю это показателем стагнации (хотя безусловно *DSB стагнируют).
В четвертых я считаю важнее не кто присылает патчи, а кто их одобряет. И текущие мейнтейнеры ядра меня устраивают. Не вижу смысла переходить даже на FreeBSD (хотя многие идеи линуксу стоило бы перенять).
> (хотя безусловно *DSB стагнируют).О да, отсутствие самбы в ядре - самый очевидный признак стагнации!
Кстати, интересно, что предыдущий оратор (анонимный восхвалитель корпов) скромно опустил детальки - "портирують" графику и вайфай, ЧСХ - под пермиссивной лицензией.
И началось это после пропихивания корпами "нового стандарта" в пингвина, практического вендорлока на тот же интел&Ко. Потому что с написанием альтернативного драйвера с тех пор проблемаа - без знания всех нужных костылей и подпорок для конкретного продукта сумрачного индусско-интеловского гения никуда.
Где-то с 2012 - списки рассылок и багтрекеры регулярно "вспухают" жалобами на "не работает XYZ" и "gpu hanging" с выходом новой модели, а доводка до "вроде почти работает" - хорошо если через год-полтора, причем часть фич (особенно энергосбережения) так и осталась нерабочей.
В 2016 бубунта и дебиан перешли по умолчанию на "xf86-video-modesetting" потому что "трудности с сопровождением драйвера xf86-video-intel, стабильные выпуски для которого не выходили уже почти три года"
Ну да "куда ж вы денетесь с подводной лодки".
"А так все хорошо, прекрасная маркиза ..." (с)
1) Это то, что делает продукт популярным. Отрицать это глупо.
2) Идейно никто ничего не делает (в том плане, что работает за идею). Всегда есть какая-то мотивация, более близкая, скажем так, жестокой реальности. Кому-то ЧСВ хочется поднять (я меняю мир!), кому-то получить очередную порцию допамина (я смог!). Ну и кто-то (большинство) работают за деньги.
Например, какие патчи, пропихиваемые корпорациями, не соответствуют философии проекта? Я, может, что-то пропустил. А может это всего лишь ваши выдумки?
> 1) Это то, что делает продукт популярным. Отрицать это глупо.
> 2) Идейно никто ничего не делает (в том плане, что работает за
> идею). Всегда есть какая-то мотивация, более близкая, скажем так, жестокой реальности.
> Кому-то ЧСВ хочется поднять (я меняю мир!), кому-то получить очередную порцию
> допамина (я смог!). Ну и кто-то (большинство) работают за деньги.
> Например, какие патчи, пропихиваемые корпорациями, не соответствуют философии проекта?
> Я, может, что-то пропустил. А может это всего лишь ваши выдумки?1) Что делает продукт популярным? Поддержка корпораций? Что ж тогда эти пользователи не идут к майкрософт? Там 100% патчей сделаны корпорациями. Конкретно линукс популярным сделала опенсурсность, вот это действительно глупо отрицать.
2) Это уже философия и подмена понятий ("не за идею, а за мотивацию", в лучших традициях "не референдум, а голосование", "не карантин, а нерабочие дни").
> Например, какие патчи, пропихиваемые корпорациями, не соответствуют философии проекта?Если речь про раст, то таких нет, потому что любые патчи от корпораций соответствуют философии раста. Раст это ручной язык мозиллы (та еще !@#$%^) впаренный гуглу и майкрософту. Утрированно, но надеюсь понятно что в принципе этим можно манипулировать (причем гораздо более тонко и скорее всего не через сам раст, а через сопутствующую экосистему от гугл и ко): лет через 5 гугл может сказать что много стало уязвимых библиотек (или любой другой предлог), а мы тут новый менеджер управления проектом создали без фатальных недостатков и называется он googlub.com, храните пакеты у нас, иначе система сборки будет писать предупреждение что вы используете старую версию.
А мы вас компанейских патчи в ядро тащить не звали. Не нравится? Не тащи свои корпорастные патчи, обойдемся.
>> Разработка финансируется компанией Google
>> Помимо компаний ARM, Google и Microsoft
>> выразила компания Red Hat
>> Напомним, что Google напрямую обеспечивает поддержку проекта Rust for Linux
>> Компания Microsoft приступила к реализации драйверов для Hyper-V на Rust
>> Компания IBM реализовала поддержку Rust в ядре для систем PowerPC
> Этого достаточно чтобы не любить ржавчину.То, что "Rust" в куске выше вполне заменяется на "Linux", тебя не смущает потому что ты маковод?
Или "вы не понимаете, это другое!"(с) ?
Нет, я линуксойд. Пока текущие мейнтейнеры у руля, меня это не смущает. Я вижу что корпорации не у руля, что они не могут просто взять и пропихнуть свои хотелки в ядро. По сути они такие же пользователи как и все остальные (это что касается ядра, а не Linux Foundation или редхат с канонинкл).
С растом я вижу противоположное, я вижу как они игнорируют свободное сообщество, как активно их пропихивает мелкософт и гугл, вижу кто в комитете раста. Не, я этим людям не доверяю.
>корпорации не у руля, что они не могут просто взять и пропихнуть свои хотелки в ядроСмешной ты. Ну, хомки как всегда, веруют что корпорации и бабло не смогут, ага...
Скорее "пока же не смогли"
> Я вижу что корпорации не у руля, что они не могут просто взять и пропихнуть свои хотелки в ядро.Как вы это видите, интересно? Неуж-то анализируете абсолютно все патчи самостоятельно на предмет их непротиворечивости философии проекта? Не занимаетесь ли вы самообманом, просто чтобы успокоить внутреннее эго?
> я вижу как они игнорируют свободное сообществоС этого места можно поподробней?
Еще помню времена, когда на опеннете главным аргументом против Rust было то, что "большие серьезные корпорации его не используют". Забавно наблюдать за попытками рационализировать совершенно иррациональное. Писали б уж честно: "руст/хруст/ржавчина/<you name it> - хрень, потому что лично мне он не нравится (потому что просто не нравится)".
Люди разные, аргументы тоже разные.Мои претензии:
На метрике свободы vs корпорации явно явно тянется в сторону корпораций, некоторые свободные проекты от него уже принципиально отказались
Растовский комитет сборище sjw'шных !@#$%^
За 11 лет из полезного софта на расте увидел только спорный ripgrep. Больше для себя ничего полезного на расте не нашел, а шума было очень много. Чуть ли не каждую неделю очередной растоман переписывал то что итак десятилетиями работало.
Для себя я не увидел в языке ничего полезного настолько чтобы его использовать. Со времени появления RAII я в принципе не вижу проблем с памятью в плюсах если использовать современные подходы. Я конечно не пишу суперпроекты вроде хрома (ах да, кодовая база хрома это !@#$%^), но все проблемы что я встречал в последнее время были вызваны либо легаси кодом (в оснвоном библиотеками), либо проблемами со сборкой (обычно банально разработчик не умеет в make и аргументы gcc), либо неправильным использованием легаси классов из стандартой библиотеки (сам грешен). У меня сложилось впечатление, что как и го, это очередная попытка заменить людей обезьянкам разработав безопасные ножи.
Еще один язык. Очевидно С++, С, go он не заменит, станет очередным 14 стандартом, с которым тоже придется считаться. При этом я абсолютно уверен что лет через 10 его похоронят (если не раньше). Не, извините, я уже молчал с C#, молчал с nodejs, надеясь что здравый смысл победит (ну кому нужна еще одна платформозависимая джава тем более от мелкомягких, ну какой js на сервере, камон, это просто развлечение чувака из гугла), не победил. Так что ваш раст я буду педалировать насколько смогу.
> Люди разные, аргументы тоже разные.Справедливо, но с точки зрения стороннего наблюдателя забавно видеть, как основания риторики хейта меняются на противоположенные со сменой обстоятельств, пусть люди и разные.
> На метрике свободы vs корпорации явно явно тянется в сторону корпораций
Увы, это всего касается. Корпорации могущественны, хитры, тереливы и изворотливы, как змеи. Но одно это само по себе - не причина отвергать все, что корпорациями ассоциировано. Нужно смотреть на конкретные случаи и пока случай Rust не выглядит безнадежным.
> Растовский комитет сборище sjw'шных !@#$%^
Ну, это твои эстетические проблемы. У меня есть вопросы к маркситского толка риторике и методам SJ, но одновременно с этим я не ксенофоб и мне соверешенно все равно, кто делает дело, если дело делается.
> За 11 лет из полезного софта на расте увидел только спорный ripgrep. Больше для себя ничего полезного на расте не нашел, а шума было очень много. Чуть ли не каждую неделю очередной растоман переписывал то что итак десятилетиями работало.
Ну так не то чтобы в современном мире легко найти нишу для нового простого проекта. А для сложных проектов нужен колоссальный фундамент в виде экосистемы библиотек, на постройку которого и ушли прошедшие годы. Проще говоря, для Rust-а путь, который нужно нагнать, намного длиннее, чем был для C++ или уж тем более для C. Все языки начинают из одной точки, только вот некоторые начали путь почти на полвека раньше.
> Со времени появления RAII я в принципе не вижу проблем с памятью в плюсах
По моему убеждению благодаря концепции владения именно RAII в Rust и приобретает полноценность и завершенность.
> это очередная попытка заменить людей обезьянкам разработав безопасные ножи.
Разумеется, но это же хорошо! Я безо всякого стеснения признаю, что я как раз такая обезьяна. У меня и близко нет необходимой когнитивной устойчивости изучать вещи, вроде MISRA C, а потом вбивать их себе в подкорку - потому я всегда избегал программирования на C/C++. Но с Rust у меня появилась возможность писать вполне эффективный низкоуровневый код с высокоуровневыми абстракциями, нагружая свою обезьянью голову лишь там, где мне захотелось написать unsafe, а не постоянно.
Я с большим уважением отношусь к ребятам, которые пишут код на C и плюсах, но эти инструменты не для меня, а вот Rust вполне. И я рад, что появился язык для таких обезьянок как я, который при этом не заставляет меня платить за когнитивный разгруз заплывшим жиром рантаймом.
> На метрике свободы vs корпорации явно явно тянется в сторону корпорацийКакая ещё метрика свободы? Как это вообще можно измерить?
> некоторые свободные проекты от него уже принципиально отказались
Какие, например?
> Растовский комитет сборище sjw'шных !@#$%^
Вы с его представителями контактируете каждый день, что ли? Они вам чем-то насолили? И вообще, вам шашечки или ехать?
> За 11 лет из полезного софта на расте увидел только спорный ripgrep.
Ничего спорного в нём нет. Быстрее стандартного в несколько раз. Или это плохо, и поэтому спорно?
> Больше для себя ничего полезного на расте не нашел
А, вона в чём дело. Шкурные интересы, оказывается. А я думал вы за идею...
> а шума было очень много
На Опеннетных форумах? Здесь это обычное явление, вроде. Если вы завсегдатай, могли бы уже привыкнуть. Или у вас есть какая-то конкретика?
> Чуть ли не каждую неделю очередной растоман
Прямо вот так, растоман? Не человек, который просто решил подучиться, потренироваться, повысить квалификацию, а почти наркоман?
> Какая ещё метрика свободы? Как это вообще можно измерить?Только моральным компасом, но и этого обычно достаточно.
>Какие, например?
Например https://wiki.hyperbola.info/doku.php?id=en:main:rusts_freedo...
> Вы с его представителями контактируете каждый день, что ли? Они вам чем-то насолили? И вообще, вам шашечки или ехать?
Если заделаюсь растоманом, то придется часто контактировать. Мне долго ехать, без шашечек не по ПДД, остановят и никуда не уеду. Например благодаря трусливому комитету плюсов язык 10+ лет развития потерял. А opengl и вовсе стал из технологического лидера бледной тенью (напомню там тоже был майкрософт который саботировал его ради своего directx (об этом тогда конечно никто не знал), который того перенял многое у opengl, то же кстати может и с растом случится если вдруг комитет разругается).
> Ничего спорного в нём нет. Быстрее стандартного в несколько раз. Или это плохо, и поэтому спорно?
Например некоторая часть функционала по сравнению с grep отсутствует. Многие оптимизации в rg связаны скорее с агрессивной догадкой (вроде не искать в скрытых файлах или файлах указанных в .gitignore по дефолту). Ну и grep он как будто бы больше про "тот самый код который всем известен и надежен", чем про скорость. Поэтому и сравнение получается спорным. А так я сам rg пользуюсь, ощутимо быстрее grep на больших объемах репозиториев, раз так в 6. Но собственно это единственный софт на расте, который я нашел бы для себя полезным.
> Больше для себя ничего полезного на расте не нашел
> А, вона в чём дело. Шкурные интересы, оказывается. А я думал вы за идею...Само собой я (как и кто-либо другой) могу выступать только за свои интересы. Но идее это не противоречит.
> На Опеннетных форумах? Здесь это обычное явление, вроде. Если вы завсегдатай, могли бы уже привыкнуть.
Не только, его везде пихают на айти ресурсах: хабр, каналы в телеге, лор и т.д.
> Прямо вот так, растоман? Не человек, который просто решил подучиться, потренироваться, повысить квалификацию, а почти наркоман?
Заметьте, это вы его сравнили с наркоманом.
> Еще помню времена, когда на опеннете главным аргументом против Rust было то, что "большие серьезные корпорации его не используют".Добро пожаловать на опеннет! =)
Ты подожди, когда аргумент "большие серьёзные корпорации его не используют" перестанет быть актуальным, всегда на первый план выходит аргумент "его используют корпорации, а они враги всему свободному и правильному". Ну то есть довольных не будет никогда.
Почему бы гуглу не создать форк ядра и не пилить его на хрусте ?
Пилить и хрустать такой огромный проект даже гуглу в одиночку нерентабельно.
Точнее сказать им некогда всякой фигнёй заниматься. Вот пусть кто-нибудь напишет, а гугель уже бабки будет зарабатывать.
Будет, как с редоксом - забвение.
Нет там никакого забвения. Там есть только ситуация рынка когда стоимость рисков пока ни у кого не привысила доходы компании. Хотя уже близок тот день когда понимание наступит. Вот смотрите уже HP в целом лещенулась с 150 видами принтеров, ранее там камеры какие-то обмазались дерьмом в связи с позитивной авторизацией с NULL поинтером в пароле.Как только допрет до эффективных менеджероф, что можно профукать бизнесы из-за одного еб..ана,
то тогда то и наступит глобальное вливание бабла в технологию... но пока можно отдохнуть - нужно
поднабрать еще статистики....Будто мало ее было собрано за последние 40 - 60 лет от известнешей проблемы с 1000 смертей
и до падений лайнеров.Впрочем это показывает только лишь ситуацию с уровнем современного менеджмента проектов ...
- Вот смотрите уже HP в целом лещенулась с 150 видами принтеров, ранее там камеры какие-то обмазались дерьмом в связи с позитивной авторизацией с NULL поинтером в паролеИ внезапно...
Да всем пофиг.
- Убери эти патчи отсюда! Сейчас будешь весь код вылизывать! Что ты мне прислал, ты что - растоман что-ли совсем?! Зачем ты растом-то обложился-то?! codemonkey... И весь код заслал... Я тебя счас забаню, блин. Ну ты сумасшедший! С кем меня посадили?.. Мэйнтейнер! Мэйнтейнер! Я с этим коммитером здесь работать не буду! Зачем вы меня с сумасшедшим поселили?! Он он на мэйллист подписался... Он подписался :_(
Братишка, у тебя логин отклеился.
Все IT-гиганты выражают интерес к расту, и только космонавт как всегда на своей волне - тащит в себя dart
Навязывают его, интересоваться им никто не мешает.
Кто его навязывает? В ядре он будет альтернативой, отключенной по-умолчанию.
Можно конкретнее? Кто конкретно кому конкретно что конкретно навязывает?
А Гугель Дартом совсем не интересуется?
с этим надо бороться, так как привращение в зоопарк ядра явно пойдет ему не на пользу ((
"привращение" - это немного покрутить?
У виска, глядя на тех, кто впендюривает Rust в ядро.
> "привращение" - это немного покрутить?Да нет же! При вращении происходит привращение. Что тут непонятного?
Доведут поддержку Rust до ума и начнут бороться: выкинут древний C, что б не засирать ядро зоопарком языков
Пусть пишут своё ядро и уже потом туда к себе добавляют поддержку Хаскеля.
Но вторыми после Rust, непременно, добавят JS/Electron.
А модули ядра поставлять в NPM.
По скорее бы уже, а если оно еще и будет работать на разных версиях то цены им не будет.
> Пусть пишут своё ядроДак уже пытались! Не получилось! Забыли!
Получилось. Не забыли. Вот здесь доказательства https://gitlab.redox-os.org/groups/redox-os/-/issues?scope=a...
Надеюсь, ядро можно будет билдить с отключёнными растокомпонентами. Хотя бы до тех пор, пока вот это всё по-настоящему не доведут до ума.
пока его и не включали туда
eBPF тоже не сразу включили.
И пока не будет gcc-rust в мейнстриме GCC, а не где-то там.
Самая лажа - это лицензия раста... Фиг сделаешь gcc-rust.
> Самая лажа - это лицензия раста... Фиг сделаешь gcc-rust.Самая лажа - это лажа из Ложи Анонимных Знатоков.
Билдить будет можно. Но пользы никакой потому что драйвера для нового современного оборудования будут на хрусте. А для немодного и несовременного будут выкинуты, разумеется. "в связи с отсутствием майнтейнеров", например.
Это ж опенсорс, тебе нужно - ты и ментейни ¯\_(ツ)_/¯
> Это ж опенсорс, тебе нужно - ты и ментейни ¯\_(ツ)_/¯Ну нет - опенсорс это "тебе нужен билд без хруста - пили форк! (сотонинский смех)
Кому-то нужен был линукс без проприетарных прошивок? Они пилят форк 10 лет.
Кому то нужен защищённый вариант Линукс? Они пилят форк 15 лет...
Экспертам с опеннет нужен билд без хруста? Они исходят на г..вно в комментариях.
Разница в подходе. Почему так происходит? Ответ очевидный, потому что на опеннет ни на что не способны, кроме комментариев
> Кому-то нужен был линукс без проприетарных прошивок? Они пилят форк 10 лет.никому, в том и дело. Ненужное пилить получается отлично.
> Кому то нужен защищённый вариант Линукс? Они пилят форк 15 лет...
и уже допилились до необходимости закрыть код, окуклиться и лечь на дно, обслуживая своих трех или полутора клиентов.
> Экспертам с опеннет нужен билд без хруста? Они исходят на г..вно в
> комментариях.
> Разница в подходе. Почему так происходит? Ответ очевидный, потому чтооно нам нужно не для того чтоб слупить денег с лохов побыстрому, а чтоб не ухудшался мир вокруг нас.
Денег мы прекрасно слупим и за эксплуатацию нахрусченного ведра - работодателю все равно придется платить.
Но работать из г-на нравится немного не всем.
И нет, у нас нет возможности перестать работать и начать делать форки всего на свете что испортили уже или испортят через пару лет, просто чтоб была альтернатива. Увы. Калиюга. В мире осталась лишь четверть изначальной благодати, и к концу юги не останется вовсе.
Можно лишь беречь насколько можешь свою карму, чтоб перерождаться пореже и не совсем уж глиномесом.
Zig имхо куда лучше подходит для замены C в ядре, но он нестабильный и новый> Integration with C libraries without FFI/bindings
> Export functions, variables, and types for C code to depend on
> В поставку входит Clang
Zig это как раз правильный С
И в то же время остается простым для чтения и понятия, код на Rust мне немного тяжелее даётся
Си правильным быть не может бай дизайн.
Пока практически не решает проблем с памятью
В плюсах она решена ещё до того как появился раст
Плюсы в ядре не появятся никогда. И это хорошо.
Плюсы в ядре появятся запросто, как только это кому-то станет действительно нужно. Они просто будут от ядра отдельно, по типу Reiser4.Плюсов в дереве исходников linux нет по одной простой причине, и дело не в языке. С годами сложилось сообщество, которое привыкло писать на Си. Продвижение Си++ суть атака на сообщество.
Ды не запросто, там стандартная библиотека, скажем помягче, жЫрновата.
Понятно что x86-м фиолетово, а вот что эмбедовка делать будет?
При наличии исходных текстов ядра и GCC с библиотекой, задача создания компактной freestanding implementation сводится к "сел и написал". Не придётся извлекать из астрала информацию, как работает какой-нибудь __CxxFrameHandler3. Для NT существует реализация, где main() { std::cout << "Hello!"; } даёт порядка 25 кб.
Я к тому, что чистая ся и выбрана потому, что стандартной библиотеки не надо.
А плюсы без её либы - ну чего плюсы? Сахар вокруг структур и мелкой обвязки? Большого смысла нет, красоты от этого не добавится.
В Венду плюсы проникли по необходимости тащить в ядро прикладной софт типа антивирусов с эвристикой. Потому у меня и оговорка про "действительно нужно".
>Плюсы в ядре появятся запростоС Линусом не забудьте поделиться этим своим мнением. :)
Зачем Вы мне это пишите, хотите показать, что не дочитали до второго предложения? Мнение Линуса мне известно, и я сначала сделал свои выводы (см. выше), а потом уже читал Линуса.
... и если после этого Линус допустит Rust - это чудовищное лицемерие, т.к. хрен редьки не слаще.
Что это за бред. В ядре просто интерфейс, а к нему пишешь что хочешь. Или речь идет про некий тулинг фреймвор который помогает написать модуль для ядра?
Растаманы хотят в само ядро толкать модули, вкомпиленные наглухо. Редокс-то у них не взлетел...
Надеюсь Linux с поддержкой языка Rust станет таким же стабильным как и Firefox.
Нет это невозможно. Это троянский конь который в ядро загоняют Майки с Гуглом чтобы разрушить ядро.
делается это для контроля каждой программы, так же как сегодняшняя цифровизация продвигает короновирус с кюаркодами. Нужно оставаться человеком а на скотиной.
>> стабильным как и FirefoxFF - стабильна только потеря аудитории
Да, так и будет
>ARM, Google и MicrosoftХана ядру
Поздравляю с разморозкой. Гугль коммитит в ядро уже больше 20 лет.
Туда ему и дорога.
>Разработка финансируется компанией GoogleНу так-то оно и понятно, что никому, кроме гуглов, этот Rust никому не нужен. Как бы его название (ржавчина) само за себя говорит, учитывая то, как софт на этом языке работает))))
Загадят ядро и выкатят свою Фуксию. Профит. А уж Майкрософт это главный враг опенсорса.
У гугля чего только нет, GO, Dart, D?
Вот D точно не их.
Корпорации коммитят код на расте: "Ааа! Опенсорс погибает, продались с потрохами, бабло побеждает!"
Корпорации не коммитят код на расте: "Ааа! Детская поделка, васяны, никому это не нужно!"
Память и логика у местных комментаторов, как у золотой рыбки, ей-богу. Ну и докопаться до названия, куда уж без этого.
Предлагаешь поедать помои, но зато на "новомодном" языке? Будь бы Rust таким хорошим, никто бы не переписывал софт с него обратно на плюсы. Си и С++ давно себя зарекомендовали как лучшие языки программирования, а Rust - упрощение ценой производительности
Ух, сколько ерунды в передергиваний в одном комментарии.> Предлагаешь поедать помои, но зато на "новомодном" языке?
Какие-нибудь пруфы "помойности" будут? И да, "мне лично не нравится" - нифига не аргумент.
> Будь бы Rust таким хорошим, никто бы не переписывал софт с него обратно на плюсы.
Первый раз слышу, чтобы кто-то переписывал код с раста на плюсы. Не соблаговолите ли привести примеры?
> Си и С++ давно себя зарекомендовали как лучшие языки программирования, а Rust - упрощение ценой производительности
Абсолютно лучших не бывает.
Очень хорошо, караван идёт. Линуксу необходимо впитывать новые технологии.
> Линуксу необходимо впитывать новые технологии.Типа новая технология колбасу делать из сои. Если что то новая технология это не означает что она лучше старой и вообще нормальная.
Да им хоть ссы в глаза они всё схавают. Сколько было этих прорывных технологий, которые никому не нужны. Куда например делись джава аплеты для браузера?
> Куда например делись джава аплеты для браузера?О, там за короткое время что только не кануло в лету ... Флэш, сильверлайт, жаблетты...
Да им хоть в глаза ссы, а они все равно будут говорить, что никому не нужно. Хотя вон сколько корпораций подписалось.
В данном случае лучше старой и вообще нормальная. Аналогия с колбасой неуместная.
Куда идет? Лебедь, рак и щука по факту.
>третий вариант компонентов для разработки драйверов устройств на языке Rust.Это что за покемон? Сишнику достаточно иметь компилятор, и всё. Что бы разрабатывать на Расте драйвера, нужно чтобы что?
>>третий вариант компонентов для разработки драйверов устройств на языке Rust.
> Это что за покемон? Сишнику достаточно иметь компилятор, и всё.Э-э, Великий Теоретик, зайди уже в src/drivers и посмотри как "сишнику достаточно иметь компилятор".
Ну я там частенько бываю, и что мне такого нужно кроме gcc ?
> Ну я там частенько бываю, и что мне такого нужно кроме gcc ?Т.е. тебя не смутили ни мейк ни конффайлы, ни lex.l, parse.y, ни многочисленные .pl, ни scripts/gdb/linux/symbols.py?
Яснопонятно.
Ты вообще видел gcc? Там полным полно UB и сплошного кошмара вроде хедер файлов
А уж про наличие as я молчу (это вообще ужас)
Для того чтобы скомпилировать ядро достаточно иметь GCC. Ядро не использует библиотеки. Сисколы - это другое. А вот растаманам подавай какие-то компонеты, как в Дельфи?
>> компонентов для разработки драйверов
> Для того чтобы скомпилировать ядро достаточно иметь GCC. Ядро не использует библиотеки.Какое занятное переобувание в прыжке.
Ты откуда взял тот кусок текста что приплетаешь анону ? Переобуватель выискался, не наглумился в похоронной теме ?
> Say you've spent several years learning the ins and outs of a language like C++, you're hoping you'll use it for work and earn that $$$. Along comes an upstart language that may or may not be better, which has a shot at replacing your language. Now you're in a tough spot - either stick with the language where you're an expert but with fewer opportunities or move to the new language that you don't like because it's the new fad.
> Such a person would be frustrated and spend their time nitpicking the new kid on the block. In this case, that's Rust.
Если with fewer opportunities выкинуть - будет норм, и как раз по делу.
А так - это попытка самоутверждения, не более.
что с самой главной проблемой (см предыдущую новость https://www.opennet.ru/opennews/art.shtml?num=54970), стратегия появилась?
> Ещё одной проблемой стали попытки использования вычислений с плавающей запятой или 128-битными типами, что не является допустимым для таких окружений, как ядро Linux. Это оказалось более серьёзной проблемой, так как в данный момент базовая (core) библиотека Rust неделима и представляет собой один большой blob - в ней нет возможности запросить только некоторые из возможностей, предотвратив использование той или иной проблемной функциональности. Решение проблемы может потребовать внесения изменений в компиляторе rust и библиотеки, при том, что на данный момент у команды ещё нет стратегии, как реализовать модульность библиотек языка.
Это может занять тучу времени ?
Ну... Учитывая, что за 15 лет разработки от блоба никак не избавились, то он - надолго.
http://www.h-online.com/news/item/Mozilla-releases-version-0...
>> 24 January 2012, 15:02
>> Mozilla releases version 0.1 of the Rust language and compiler
> Ну... Учитывая, что за 15 лет разработки от блоба никак не избавились, то он - надолго.Какой громкий пук.
Он, видимо, из будущего.
И где тут сказано что от блоба избавились, пуковед ты наш?
> The language ... begun in 2006 ...Посчитать сможешь, ск-ко лет прошло?
Чуваак! Ты хоть Rust 0.1 смотрел? Там ни f32, ни f64, ни u128 не было.
>>> was designed by Graydon Hoare as a side-project from 2006 onwards
>>> #![stable(feature = "alloc_module", since = "1.28.0")]
>> The language ... begun in 2006 ...
> Посчитать сможешь, ск-ко лет прошло?Очередной неконтроллируемый выброс метана?
> стратегия появилась?Упомянутые выше вещи, типа no_fp_fmt_parse, намекают, что появилась.
Заглохнет, Мигеля возьмут измором: то так нельзя, то тут так в ядре не принято, нужно доработать компилятор, бесконечные патчи, у нас дискомьюникейшн, а давайте все заново... Линус красаучег
При всем уважении Rust-у нужно тащить линукс код в Redux
На выходе и совместимую систему бы поимели и ошибки в ядре вашли
Так что при всем уважении к Линуксу он конечно фанатик в первую очередь
А во вторую уже разумный человекС другой стороны можно и попроще язык было задизайнить, а то не разобраться
многим...
У Rust просто черепашья скорость по компиляции. Если хотя бы половину ядра перепишут на Rust, то об перекомпиляции ядра на своём железе можно будет смело забыть.
> Если хотя бы половину ядра перепишут на RustА что с редоксом?! Зачем линь переписывать, если есть (якобы) своя расто-ОС?
>> Если хотя бы половину ядра перепишут на Rust
> Зачем линь переписывать, если есть (якобы) своя расто-ОС?Цель - разведка (и последующая добыча) альтернативных месторождений анонимного биогаза.
Очевидно же.
> А что с редоксом?!Развивается потихоньку.
> Зачем линь переписывать, если есть (якобы) своя расто-ОС?
Затем, что Си - уныл и опасен. Качество кода на выходе гораздо хуже, чем у Раста, потому что Си это самое качество не контролирует никак. Понятно, что есть линтеры. Но они тоже, показывает практика, не справляются с васянским кодом часто. А на Си каким бы гением ты ни был, всё равно окажешься в итоге васяном, таким же типичным, как и много других.
Кроме того, свою расто-ОС пишут, скорей всего, просто другие люди. Не приходила такая мысль в голову?
Если Rust такой фиговый, как тут его клеймят эникейщики и диванные сисадмины опеннета, то почему в опросах на stackoverflow этот язык уже 5 лет подряд - самый любимый и самый желанный?
Реальный последний рейтинг языков:
...
19. Перл
...
26. Раст
Пруфы будут или это персональный рейтинг одного анонимуса с опеннета?
Ты хоть бы иногда читай на опеннете статьи кроме раста, будешь в курсе событий.
А тебе неплохо бы научиться отвечать на тот вопрос, который задают. Ну и не путать TIOBE с опросом о предпочтениях.
Индекс Rust на TIOBE уж больно волатильный: https://www.tiobe.com/tiobe-index/rust/
Вполне возможно, что в 2018 его намеренно занижали, после скандала с его резким выскакиванием.
>Вполне возможно, что в 2018 его намеренно занижали,Типичное такое россиянское мышление.
TIOBE измеряет не популярность, а присутствие ключевых слов в поисковых системах. Не очень понятно, например, как Rust мог попасть в учебники 80ых годов.
Натурал-парады не проводятся в отличие от, получается, традиционные отношения уже в меньшинстве по твоей логике?
Ну дык, а ты как хотел, жаримся мужыкы, жыримся!
Для SO-Developerов?
Это психология: если человеку хочется быть круче кого-то, но не получается в области популярного, то он идет в меньшинства, в более ууузкой области гораздо больше шансов стать круче.
Ты поробуй давай в Rust стань круче, там система типов мозгодробительная,
ты думаешь чего тут Сишники старой закалки взбунтовались они у себя в C11 не
могут завести отложенные вызовы, лямбды и std::function, а Rust это тащит
в стандартной библиотеке.А идея с областями видимости. Это хренова куча сложного языкового дизайна,
а тут что не комент или истеричка или консерватор у которого нет 20 часов
методичку прочитать.
Форс и накрутки. "Уважаемые коллеги Mozilla Foundation, чтобы подтвердить вашу лояльность нашим ценностям просим зайти и проголосовать на следующем сайте..."
Справедливости ради, там опрос не так проходит StackOverflow рассылает почтой возможность проголосовать
Почему растаманы забыли собственную систему редокс?! Зачем толкать раст в линух, если нужно толкать раст в расто-редокс?
Идут с двух сторон?
Они написали игрушку под названием редокс
Эта игрушка им быстро надоела
А пилить ее до уровня промышленного использования - это вложить тонны бабла
А у кого щас есть бабло ?
Как одно другому мешает? У проектов разные цели и разные разработчики.
А всё равно толку нету. Сколько вы этих редакций не делайте. Сырое поделье неосиляторов так и останется в вечной бете. Или альфе?
Собаки лаят, а караван идет ...
какой смысл тящить это токсичное псевдобезопасное протекающее в ядро? чтобы порадовать блм?
Это следствие того, что редокс не завёлся.
Как одно с другим вообще связано? Цели у проектов изначально разные.
А чего так голословно. Есть пруфы где протекает, а то как-то выглядит как
типичная антиреклама от Анонима.Вроде бы везде где протекает требуют стаить unsafe и понимать что делаешь,
а если ты наговнокодил, то да конечно тут тебе уже язык не поможет.
Ну всё. Это "успех" для раста. Теперь заживём. Ага.Какое позорище
Еще одна истеричка. Люди решают вопросы прктические и название этому придумали,
а ты свои комплексы победить не можешь ЧСВ-шные
У растаманов есть свой родной Redox. Забыли?
Оно разве живое? Его же на реальном железе не смогли запустить.
> Оно разве живое? Его же на реальном железе не смогли запустить.https://www.redox-os.org/screens/
Опять активно приближаешь глобальное потепление неконтролируемыми выбросами метана?
"Помимо компаний...Microsoft, интерес к использованию языка Rust в ядре Linux выразила компания..."
Я бы начал нервничать уже на стадии интереса Микрософт к Русту в ядре.
Ну слышал такое - разделяй и властвуй. Ржавое барахло - как раз инструмент для этого.
Кто знаком с языком или просто любопытный: как часто при написании драйвера или модуля ядра вообще понадобится использовать unsafe и Ъ-безопасность перестанет ею быть?
> при написании драйвера или модуля ядра вообще понадобится использовать unsafeВ 100% случаев. ядро это куча готового и удобного апи, а раст, как известно - любимая обворачивалка готовых и красивых апи делающая волшебнобезопастность с зубоскрежащим синтаксисом. драйвера на русте никто делать не будет, только обвертки.
Твоё высказывание на 100% абсолютная чушь, и что-либо толкового и конструктивного у тебя написать не получится, будет только пустопорожняя болтовня.
Настало время для форка!!!11 Я так щитаю, что пора это переписать на православный, чистый, наичистейший C++
Аминь
А какой из них самый наичистейший, 11, 17 или 2x ?
раст 0.1, конечно же.
Это насколько надо быть ленивым и обладать насколько низким интеллектом чтобы когда знаешь C вместо того чтобы просто доучить C++ начинаешь городить велосипед от которого глаза ломаются.А результат этого как всегда один. Софта ноль, преимуществ перед плюсами ноль.
И не надо про память. Откройте методичку и убедитесь что это решено уже 100 лет назад в C++
Да, утечки решаемы. Вспоминается мануал времен 90-х "40 типов умных указателей" или что-то вроде этого. Обычно хватало стандартных.
Ты б методичку открыл да почитал какие проблемы решает Rust,
а то так с евангилием от C++ и помрешь дурачком.
Для мимопрохожих, напомните плиз какие он решает проблемы ? Что-то ни одной из реальных проблем с которыми я сталкиваюсь он даже близко не решает.
он пытается решить проблемы которых не существовало до появления rust
Если ты чего-то не знаешь (не видел), это не означает, что этого не существует.
> напомните плиз какие он решает проблемыПроблемы с UB, использованием неинициализированных переменных, висячих указателей, некорректной работой с памятью, некорректным приведением типов.
Также Раст предлагает стандартную конкурентную инфраструктуру: сборщик, линтер, централизованный репозитарий кода, форматтер.
Раст гораздо проще Плюсов. То есть порог для вхождения гораздо ниже, чем у последних.> Что-то ни одной из реальных проблем с которыми я сталкиваюсь он даже близко не решает.
Ты бы их обозначил хотя бы, если действительно хочешь получить ответ, а не пришёл сюда попортить атмосферу.
Не могу свой прошлый комментарий отредактировать, вот https://wiki.hyperbola.info/doku.php?id=en:main:rusts_freedo...
Там единственная претензия к расту - "они не принимают коммиты от левых людей без аппрува".
Не понятно как писать защищённое ПО без исключений и размотки стека...
Даже память безопасно не выделить
Попробуй осилить документацию. Ну или хотя бы книгу для начинающих. Всё есть в общем бесплатном доступе. Там есть ответы.
Раст ведь до сих пор не поддерживает все архитектуры, на которых работает Линукс.
Что они предлагают? Выкинуть эти архитектуры, что ли?
А может лучше выкинуть этот самый Раст?
> Раст ведь до сих пор не поддерживает все архитектуры, на которых работает Линукс.И че? Запретят писать для них дрова на сишке, что ли?
> Что они предлагают? Выкинуть эти архитектуры, что ли?Где предлагают? В фатназиях очередного анонима?
> А может лучше выкинуть этот самый Раст?Лучше выкинуть комменты очередного опеннетного Знатока.
> Запретят писать для них дрова на сишке, что ли?Надо будет перписывать на Си дрова, которые ранее уже были написаны на расте.
Будет две версии дров к одной и той же железке. И обе версии нужно будет сопровождать.
Помимо двойной работы, это, конечно же, будет только увеличивать и без того немалый бардак в ядре.> Лучше выкинуть комменты очередного опеннетного Знатока.
Ну, так давай твои и выкинем. Да и вообще - сделай вдоль.
P.S. Недавно столкнулся с тем, что некоторые долбодятлы додумались писать открытые прошивки (OpenSK, Solokey v2, Nitrokey v3) микроконтроллеров на расте.
И вот хpен теперь эти прошивки портируешь на микроконтроллеры с другой архитектурой(C-SKY, например). Т.е. фактически эти прошивки прибиты гвоздями к ARM-ам.
Вот подобная же хpенb будет происходить и с Линуксом.
Ну так не будь долбодятлом и напиши прошивку сам!
А ты что хотел? Придти на все готовенькое и просто забрать себе?
> ... напиши прошивку сам!Может, мне и условный "линукс" самому написать?
> Придти на все готовенькое и просто забрать себе?
А ты Линукс или *BSD себе уже написал, или "пришёл на всё готовенькое и забрал себе"?
>> Запретят писать для них дрова на сишке, что ли?
> Надо будет перписывать на Си дрова, которые ранее уже были написаны на расте.
> Будет две версии дров к одной и той же железке. И обе версии нужно будет сопровождать.
> Помимо двойной работы, это, конечно же, будет только увеличивать и без того немалый бардак в ядре.-
> все архитектуры
> дров к одной и той же железкеЯснопонятно - очередной диванный теоретик.
>> Лучше выкинуть комменты очередного опеннетного Знатока.
> Ну, так давай твои и выкинем. Да и вообще - сделай вдоль.Какие аргументативные аргументы от "Знатока".
> Яснопонятно - очередной диванный теоретик.Да, яснопонятно, что ты даже не понимаешь что такое архитектура в данном контексте.
Почему-то не приходит тебе в голову, что одна и та же периферийная железка может работать и на ARM-ах, и на x86, и на C-SKY, например.
> Надо будет перписывать на Си дрова, которые ранее уже были написаны на расте.Не надо будет. Дрова пишутся под конкретное железо, которое призвано работать в определённой среде.
> Т.е. фактически эти прошивки прибиты гвоздями к ARM-ам.
Попробуй предложить свои услуги либо писателям прошивок (тех, которых ты долбодятлами назвал; при этом, подозреваю, сам ты не в состоянии написать подобную прошивку, то есть, другими словами, твои интеллектуальные способности ещё хуже, чем у них), либо разработчикам компилятора на Раст (ну чтобы включили поддержку нужного тебе железа).
> Вот подобная же хpенb будет происходить и с Линуксом.
Не будет. Линус не допустит. А если допустит, то к тому времени наберётся достаточная критическая масса программистов, чтобы поддерживать более широкий спектр железа.
> Не надо будет. Дрова пишутся под конкретное железо, которое призвано работать в определённой средеЧушь. Дрова, являясь частью ядра, обычно пишутся кросс-платформенно, если конкретная железка вообще может быть установлена на различные платформы.
Ты про всякие стандартные шины, типа PCIe, AMBA, I2C, SPI, или USB, в конце концов, ничего не слышал, что ли?
Или ты и вправду думаешь, что для каждой поддерживаемой ядром процессорной архитектуры существуют отдельные ветки кода драйверов периферии?
А ты в исходники ядра вообще когда-нибудь заглядывал, а?
> Попробуй предложить свои услуги либо писателям прошивок ...У меня есть чем заниматься.
> ... при этом, подозреваю, сам ты не в состоянии написать подобную прошивку,
Не в состоянии. Там довольно много работы, исполнять которую у меня нет времени.
У них этим занимается не один человек, в конце концов, и занимаются они этим за немалые деньги.>... то есть, другими словами, твои интеллектуальные способности ещё хуже, чем у них
Это какая-то совсем детсадовская подтасовка.
У меня просто-напросто может не быть времени и/или желания писать эту прошивку.
В то же время на портирование прошивки время и желание у меня может наличествовать.> Не будет. Линус не допустит.
У меня появились сомнения.
> А ты в исходники ядра вообще когда-нибудь заглядывал, а?Ну так нельзя, надо как-то тоньше и с применением средств объективного контроля. Факт отсутствия специалистов по ядру NT среди здешних знатоков Rust можно считать установленным: вторую тему прошу прокомментировать пример драйвера, а в ответ тишина (намекнули, что коду 6 лет, а это уже луддизм). Но этот факт ожидаем. Linux ближе к теме сайта, наверное, должно найтись несколько человек? Я слышал, что написали уже один драйвер, но не знаю, с какой стороны подойти.
RUST со своими Tier 1/2/3 Platform Support- это ISA и OS vendor lock-in, если кто не понял.
А, проще говоря, это прибивание языка гвоздями к ограниченному списку архитектур, операционных систем и системных библиотек.
Причём тут vendor lock-in? У тебя каша в голове.
А что, нужно делать, как некоторые упоротые сишники с OpenNET? Ну, то есть просто заявлять, что сишный код магическим образом самопортирован под любую архитектуру и операционную систему.
> Причём тут vendor lock-in?Это он самый и есть. Ты, видимо, просто не понимаешь, что есть "vendor lock-in".
Вот, почитай: https://en.wikipedia.org/wiki/Vendor_lock-in
Может, что-то поймёшь.
На самом деле все проще.У тебя есть архитектура CPU которая тебе очень важна, но на ней нет раста...
Элементарно! Ты просто берешь открытый llvm и дописываешься в него поддержку своей очень нужной (в очень узких кругах) архитектуры (иначе бы ее уже добавил кто-то другой)!
И твоя архитектура попадает Tier 3. Круто, правда?Но тебе этого мало. Ты начинаешь делать регулярные сборки тулчейна после каждого изменения, прогонять тесты и большая часть их них проходит и хоба - у тебя уже Tier 2.
Но если и этого мало ты прогоняешь тесты на каждое изменение и они все, абсолютно все проходят.
У тебя Tier 1, столько сил потрачено - ты можешь собой гордиться.Только не надейся что кто-то будет тратить свои силы, время и деньги на поддержку какой-то маргинальщины, которая нужна полуторам калекам. Придется как-то самому.
> ... архитектура CPU ...
> Элементарно! Ты просто берешь открытый llvm и дописываешься в него поддержку...Это требует довольно широких и глубоких компетенций, как в области самой архитектуры, так и в области LLVM.
Да и архитектура внезапно может быть подробно описана только на китайском, а перевод может быть неполным и/или кривым. Обычное дело.> очень нужной (в очень узких кругах) архитектуры (иначе бы ее уже добавил кто-то другой)!
Вон, посмотрите на C-SKY, например. Для C-SKY есть только сырой экспериментальный RFC патч LLVM, хотя Линукс для C-SKY уже давно есть.
А между тем за C-SKY стоит Alibaba, которая входит в десятку самых дорогих компаний планеты.В общем, RUST создаёт дополнительные барьеры для архитектур, которые по каким-то причинам не попали в мейнстрим. Новым, возможно перспективным архитектурам, тоже придётся преодолевать эти барьеры. Это плохо, это огораживание.
И вот поэтому тот же ARM и проталкивает RUST в ядро, чтобы заранее огородиться от возможных в будущем новых конкурирентов.
Стоп-стоп, а в линуксе и gcc эта поддержка появилась автоматом?
Разве чтобы добавить поддержку C-SKY в GCC не нужно "широких и глубоких компетенций, как в области самой архитектуры, так и в области GCC"?Я не нашел список изменений, но уверен что человек с улицы на такое не способен. Для добавления поддержки в GCC они вообще наняли отдельную фирму: "Mentor Graphics has been contracted to work on this C-SKY compiler port for csky-elf and csky-linux targets with glibc and uclibc."
(https://www.phoronix.com/scan.php?page=news_item&px=GCC-C-SK...)Плюс этого недостаточно - нужно добавить поддержку в сам линукс. И это тоже не странички верстать. Там 11к строк изменений, местами точечных, для которых нужно ну очень хорошо знать архитектуру ядра.
"The port has already gone through ten rounds of public code review over the past number of months and the port adds over 11,000 lines of code for bringing up the new architecture."
(https://www.phoronix.com/scan.php?page=news_item&px=C-SKY-Li...)Поэтому для C-SKY нет поддержки раста, только потому что производителю это сейчас не нужно. Им сейчас нужен линукс чтобы клепать тв-приставки. А рандомный энтузиаст никогда бы это сам не добавил, даже если бы ему это было нужно на все 146%.
А ведь может быть обратная ситуация: есть поддержка rust, но нет линукса.
Apple выпустила M1 и rust заработал чуть ли не из коробки (потому что эпл написала бэк для llvm сама). А на линуксе поддержка появилась позже.
А основной архитектурный конкурент ARM это RISC-V. Он есть в поддержке на уровне Tier 2, на уровне ARM6/7 и ARM64. Так что тоже так себе аргумент.
> конкурент ARM это RISC-VТы шутишь?! Сравнить ARM с мипсом 85-го года...
Ты шутишь?! Открой вики и посмотри в каком году был выпущен первый ARM!
(спойлер: ARM1 вышел в 1985 году)RISC-V разумеется не без недостатков, но открытая ISA для многих уже является киллер-фичей.
В железе сейчас выпущено не так много, но ей всего чуть больше 10 лет, а в ней уже заинтересованы европейцы и китайцы, и уже что-то штампуют (напр. тот же XuanTie 910 от алибабы, открытый к тому же).
чего только не сделаешь за бабки.
> https://doc.rust-lang.org/reference/memory-model.html
> Rust does not yet have a defined memory model.В общем-то, это все, что надо знать о языке, бьющем себя в грудь и кричащим о том, как безопасно он позволяет работать с памятью.