Линус Торвальдс принял в состав ветки ядра Linux 6.1 изменения, реализующие возможность использования языка Rust в качестве второго языка для разработки драйверов и модулей ядра. Патчи приняты после полутора лет тестирования в ветке linux-next и устранения высказанных замечаний. Релиз ядра 6.1 ожидается в декабре. Основным мотивом поддержки Rust является упрощение написания безопасных и качественных драйверов устройств за счёт снижения вероятности совершения ошибок при работе с памятью. Поддержка Rust не активна по умолчанию и не приводит к включению Rust в число обязательных сборочных зависимостей к ядру...Подробнее: https://www.opennet.dev/opennews/art.shtml?num=57867
>> cокращён с 40 до 13 тысяч строк кодаКакова судьба оставшихся 27 тысяч строк кода?
Судьба оставшихся 27 тысяч строк кода неизвестна...
Удалили все переносы и вкоммитили одной строкой
Там они округлили немного
На самом деле, в каждом файле из каждых 3 строк кода удалили по 2 строки не глядя, ведь пока предоставляется лишь треть функционала. Как ни странно, боровы проверились и скомипилилось
Эксперты с опеннет делиться своими фантазиями о том, как происходит программирование.
Хватит чмырить школьников... Поддержи лучше обьясни дураку его ошибку... пусть умное поколение вырастет, а то вырастет в тебя и будет троллить потом всех...
Неплохо)
Они вошли в состав оставшихся 13 тысяч путем удаления переноса строки перед ними.
Я, конечно, понимаю, что труЪ по ссылкам не ходят. Но если зайти и посмотреть ( https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/lin... ), то вполне очевидно, что приняли пока только рантайм, чего достаточно для написания минимальных драйверов.Там ещё в отдельной ветке полируются обвязки ( https://github.com/Rust-for-Linux/linux/tree/rust/rust/kernel ) над структурами ядра. Их пока ещё не включили в mainline, досматриваются и допиливаются.
Уже была же эта новость неделю назад. Ну добавили и добавили.Выйдет, побудет в ядре полгодика -- посмотрим, как оно.
Там была новость другая, что Линукс сказал, что будет. А теперь - что реально помержил изменения
Сначала было 10 комплектов патчей для ядра.
Потом Линус раскритиковал патчи и отправил на доработку.
Потом доработали патчи.
Потом Линус не исключил интеграцию патчей (мой любимое!)
Потом объявили о том, что эти патчи войдут в ядро linux-next.
Потом объявили о том, что эти патчи войдут в ядро 6.1.
Потом написали экспериментальный драйвер nvme.
Потом провели тесты экспериментальныого драйвера.
Потом приняли решение о том, что патчи войдут в ядро 6.1.
Потом написали о том, что выйдет ядро 6.1, в котором будут патчи.
Потом написали о том, что состоялся релиз ядра 6.1, в котором патчи.Итого 20 новостей из одного события, давайте ещё, журналисты.
Журналисты пишут о том, что интересно читателям. Опеннет очень бурно реагирует на упоминания раста, вот он и получает столько раста, что остальные новости уползают из топа быстрее, чем успеваешь их читать.
Libreddit на Rust написан. Хороший фронтенд для Reddit.
Скорее бы. Может заодно лажу с обработкой ников починят.
> Журналисты пишут о том, что интересно читателям.Не. Пишут они о том, за что проплатили.
Ну это же про раст, а не про джеймса уэбба. У растофанов нет денег, в отличии от наса.
> У растофанов нет денег, в отличии от наса.Это у NSA всё в порядке с бюджетом. А наблюдаемые растофаны --- это объекты, а не субъекты.
Новостей конечно много.
Но разве в последний год-два были ли изменения в ядре, породившие столько споров? Назовите хоть парочку.
Да и вообще - когда последний раз в ядро добавлялась поддержка какого-то языка?))
Плюс это очень важное изменение - это база для всего следующего развития этого направления
Смех смехом, но это важная часть - дрова можно будет писать на двух языках. Если выгорит, то глядишь и третий можно будет добавить.
А потом в язык добавят несовместимые с прошлой веткой изменения. У Rust стандартизации никакой нет.
И старые версии компилятора отбирают! Ну хоть не бьют по ночам, и за то спасибо.
Наконец-то! Поздравляю всех причастных!
причастился комментарием
> Наконец-то! Поздравляю всех причастных!Там из причастных один мигель охеда
> Основным мотивом поддержки RustТут не только про память. Линус же говорил, что деды стареют, а раст позволит привлечь (зумеров) молодёжь.
А мне казалось что деды так и не научились не выходить за пределы массива и продолжают обращаться к уже удаленным объектам.
Никого привлечь не получится, современной молодёжи "скучное" системное программирование нафиг не надо.
Наверное, можно привлечь, если сделать системное программирование визуальным.
В лего-блоксы наигрался?
Это про привлечение современной молодёжи.
> ... если сделать системное программирование визуальным.Visual Assembler (c) Баян, 1995 г.
С подключением:
Растохейтеры сгорают дотла. И могли бы привычно поливать говном всех кто связан с растом, но в заголовке коммита предательски стоит строчка "
author Linus Torvalds <torvalds@linux-foundation.org> 2022-10-03 16:39:37 -0700". А на самого Линуса прыгать как-то не с руки. Вот и приходится зубоскалить в бессильной злобе. Продолжаю наблюдения за душевными терзаниями хейтеров. Это прекрасно.
Не волнуйся, ща они напишут что он продался корпорастам)
Он всегда под ними был. Привет.
Падажди, сейчас тебе расскажут что его взяли в заложники))
В прошлой новости эксперты уже обзывали Линуса всякими нехорошими словами.
Местным оторвавшимся от реальности экспертам 🤡 он не авторитет
Я вас умоляю, они найдут тысячи вариантов продолжить поливать тем же, чем поливали раньше. Это легко, ососбенно если логику не включать. Продался, с ума сошел на старости лет, намерено сливает линукс и т.д.
На самом деле фиолетово, продался, выключил логику, сливает, или ещё чего там.
А вот что делать с инфраструктурой, когда окончательно протухнет и завоняет - надо думать уже сейчас.
Этот вопрос можно задать вообще любому проекту. Лю-бо-му, независимо от используемых технологий, причастных людей, поддержки кровавым энтерпрайзом, наличия сообщества и способности этого сообщества поддерживать проект на плаву.
Достоверно предсказывать будущее еще никто не научился.
Моя работа заключается частично в том, чтобы подстраховываться на случай феерических 3.14цов - и вот мой дерьмометр на это всё начал зашкаливать. Поэтому будем подстраховываться. Типичный для вашей географии авось у нас не катит.
Оу, у вас еще и география своя, особая?
Это у вас особая. А у нас к счастью пока что общемировая.
Да, я по уровню высокомерия заметил. Ну что ж, удачи вам в вашей авантюре по убегании на винду от раста, госопдин "профессиональный подстраховщик".
Не. Буду тихонько ковырять сборку основного софта под винду, чтобы можно было целиком пересадить окружение. Потому что с такими телодвижениями - добра не будет. Останутся в ядре ёbpf, iourine и хруст.
Лет через 5-10 когда этот хайп закончится, придётся выдирать обратно, выкидывать на слом весь успевший добавиться растовский код и переписывать всё обратно на Си.
Думаю через 10 лет все старперы которые не могут "в управление памятью" уйдут на пенсию и/или помрут. А в контрибьюторах останутся молодые и активные растописатели.
Ну и в ядре станет меньше CVEшек.
когда старпёры уйдут, ядро закончится
Старые версии ядра не пропадут.
Нет. В него внесут возможность писать на питоне, и оно продолжит работать. Но ме-е-е-едленно...
> А в контрибьюторах останутся молодые и активные растописателиа пассивных куда девать?
Туда, где им место.
А зачем тебя куда-то девать? Сиди где сидишь, не копти только.
> Ну и в ядре станет меньше CVEшек.Ох уж эти маняфантазии. Сколько там CVE из-за управления памятью и сколько из-за алгоритмических ошибок?
к тому времени ты сделаешь свой язык и мы все перейдём на него
Через 5 лет придется переписывать весь небезопасный код на rust, а старый си выкидывать на слом.
Надесь что к этому времени Rust доведут до такого же уровня просты как Си, а то в текущем его виде в обилием типов это что-то вроде C++ многословное<str> и синтаксический<'a>::уродливое
Или выйдет новый модно-молодёжный язычок и он станет хайповым.
Или выйдет новый модно-молодёжный язычок, и по сравнению с ним раст окажется милым, симпатичным и интуитивно понятным.
Через 5 лет эту ветку, в которой будут раст - все будут пытаться забыть как страшный сон. Вангую.
> Лет через 5-10 когда этот хайп закончится, придётся выдирать обратно, выкидывать на
> слом весь успевший добавиться растовский код и переписывать всё обратно на
> Си.Ну как там, хайп на systemd прошёл? Время расставило всё по местам? Юниты на баш портянки уже поменяли?
Да, расставило по местам всех некомпетентных упырей, что громче всех орали за портянки. Время прошло, пророчимый конец systemd так и не наступил и лишь крик БОХНАКАЖЕТ всё ещё слышен затихающим эхом на линуксовых форумах.
Прекрасно. Теперь давайте на бейсике драйвер nvidia реализуем.
Можешь начинать.
О, люди просят. Ну всё, держите меня семеро!
Отличная новость, всем экспертам по огнетушителю.
Чем больше новостей о rust, тем лучше
Думаю это гиблое дело пытаться спасать как-то линукс, нужно переносить части ядра в systemd.
И переписать системд на руст.
копилятор rust думаю нужно сервисом сделать
Переписав его на Python.
Количество unsafe уже подсчитали?
зочем? Линус разрешил мердж - значит все ок
Для крестописателей конечно очень обидно. Линус сначала послал их лесом с крестами в ядре (внезапно потому что с кодом менее удобно работать), а теперь добавляет поддержку языка, который они искренне ненавидят и стремятся уничтожить.
Не срослось с повсеместным внедрением плюсцов. Такими темпами и переучиваться придется.
Крестам отказали лезть в ядро, а раст разрешают для драйверов. Не заметил разницы?
Возможно у С++ закостенелая политика развития. Инициализацию структур и то, до сих пор не поддерживает толком. Потом говорят что нет такого языка С/C++, ага когда в одном проекте всегда то и другое, нафиг их различать. А драйверы как писать на чистом С++, не в ущерб качеству кода?В Си плюшки добавить, в очередной стандарт, видимо религия не позволяет, даже в виде GNU расширений.
А Rust пытаются активно развивать. Хотя, для моего вкуса, его синтаксис пока совсем неприемлим. Но развиваются же и ладно.
>говорят что нет такого языка С/C++, ага когда в одном проекте всегда то и другое, нафиг их различатьОй дурак?!
>А драйверы как писать на чистом С++
Дурак с плюсами.
Начитаешся всякого а потом думаешь: "Слава тебе господи, за то, что Линус запретил в ядре C++".
Тут не без шуток сказано.А про драйверы Вы не в теме. Бывает и пикосекунды(!) учитывать надо. Помимо ширпотребных платформ, есть всякая "встраиваемая" экзотика, где с выбором компиляторов и библиотек не густо, а запросы как настоящей системе. А если еще наложить требования не программистов к коду, плюс костыли, что и баги железа, чужого кода, и проблемы конкретного компилятора обойти, и итоге такие пакостные исходники выходят.. Что посещают дурные мысли свой Си написать.
Ещё раз, речь таки не о десктопе, и драйверах Линукс. Там после перечисленного, просто удовольствие что то писать.
> Бывает и пикосекунды(!) учитывать надо. ... где с выбором компиляторов и библиотек не густо, а запросы как настоящей системе.Компилятор нам в этом деле поможет. Ага.
Тут или ассемблерные вставки или Си. Вот и ниша.
Работа с периферией и протоколами обмена часто требует именно сишные структруры, и желательно без всяких конвертаций.А если чисто прикладное ПО, хоть и для внутренних отладочных нужд, то конечно, на C++, и тем более С, я вряд ли буду писать.
Всему свое разумное применение.Да и драйвера разные бывают, под термином драйвер может скрываться что угодно.
Пикосекунды времени исполнения кода? Не верю. За пикосекунду свет проходит 0.3мм. Характерная частота - терагерц. Максимум что могу представить - писать в регистр, управляющий каким-нибудь экспериментальным терагерцовым генератором, но тут никаких отличий между растом и си нет.
> отличий между растом и си нет.Я не "поливал" Rust вообще, тем более, что в критичных местах он позволяет отступить от правил.
Я писал о ложке дегтя в С++, из за которой в том числе ему могли отказать, а именно агрегатной инициализации статических структур. Это делается на этапе компиляции и не требует ни такта процессорного времени.
В С++ используется для этого деревянный дедовский способ, не предполагающий разобраться в большой портянке данных.
Ладно, на gcc можно писать на несуществующем "с/с++", в стиле, когда что то на С++ не удобно/некрасиво, то оно скидыватся в С-файлы, и красота.Но, вот, кто то придумал очередные правила для оформления проектов, и потребоаал, писать единообразно, всё на С++! В кулаком по столу стук. Ну, ладно, для репозитория конвертером перегоняю, исходник в ещё более нечитаемую портянку, массивы структур распухают из за необходимости заполнения всех полей, а имена полей убираются, и с обязательным форматированием, и пофиг что ввиде длинных строк можно было найти нужные места, а с форматированием уже нет. Нечитаемые исходники (кто ж их читает) для репозитория проходят требования и принимаются, а для работы используется другой комплект. Ну маразм же.
С какой такой душевной хвори тебя волнует такая вещь как синтаксис? Ноутбук тоже выбираешь по цвету крышечки?
> Ноутбук тоже выбираешь по цвету крышечки?В яблочко!
Я колекционирую компьютерную технику, как очень ретро, так и актуальные модели, которые позже будут пылиться в коллекции. И предпочтение, именно ноутбукам.
Под конкретные задачи, конечно выбираю тот или иной. И.. бывает что выбираю настроение, хоть и не по цвету. Вы почти угадали. :)
>> С какой такой душевной хвори тебя волнует такая вещь как синтаксис?Не можете изменить или повлиять, ну так и пользуйтесь тем что дали.
red75prime>> Пикосекунды.. Не верю.
Достаточно регировать за вменяемое время. А регистрировать и вносить поправки надо до десятков пикосекунд.
> Не можете изменить или повлиять, ну так и пользуйтесь тем что дали.
> Достаточно регировать за вменяемое время. А регистрировать и вносить поправки надо до
> десятков пикосекунд.Милейший, вы о том, что такое "время" в цифровой электронике задумывались?
> А регистрировать и вносить поправки надо до десятков пикосекунд.То есть читать/писать в регистры значения задержек. Тут без С точно не обойтись, хех.
>> А регистрировать и вносить поправки надо до десятков пикосекунд.
> То есть читать/писать в регистры значения задержек. Тут без С точно не
> обойтись, хех.И без компютера, работающего на частотах в несколько сот терагерц :))) это немного не ультрафиолет ещё ...
Дрова на крестах? И зачем? У хруста хоть какие-то гипотетические плюшки имеются, а у крестов в дровах, как плюшки? А вот в само ядро на хрусту ни крестам ходу по понятным причинам нет.
Хорошая новость. C и С++ должны умереть. Абсолютно непригодные и устаревшие языки программирования. В последний раз я на них програмировал году этак в 2005. Сейчас только на Java, SQL и Julia.
В вашем комментарии упомянуты пять языков программирования. Где-то начали потихоньку внедрять язык, отличный от вами упомянутых. В чём для вас "хорошесть" новости и почему два языка должны умереть?
Почему какие-то существующие языки устаревшие или непригодные, если на них пишут? А пишут код на том, на чём заказывают или на том, что нравится.
Где-то и на COBOL ещё пишут.
C и С++ не пригодны для использования в тех нишах, для которых предназначены. Постоянные баги с утечками памяти, гонками потоков, обрещением к несуществующим разделам памяти и тд и тп. Это не допустимо в системных нишах.SQL, Java и Julia - полностью соотвествуют тем нишам, для которых предназначены.
Я не знаю какие языки для каких ниш предназначены.
Вы говорите о постоянных багах, утечках и гонках, хотя не используете эти языки с 2005 года.
Так сильно критиковать без собственной практики недопустимо.
А зачем использовать эти языки для того чтобы говорить "о постоянных багах, утечках и гонках"?
Достаточно открыть cve.mitre.org (или новости тут) и там будет все предельно ясно.
На C/C++ дофига написано софта который в принципе дыр особо не имеет. Поэтому все что написано - чистый бред. Эти дыры в мозгах доморощенных программистов, которых презерватив пользовать даже в личной гигиене не научили, в случайных связях.
А SQL такой молодой?
И Ларри такой молодой, и юный Oracle впереди
SQL полностью соотвествует своей нише, а именно - формулировать декларативные запросы к БД.
Растление ядра продолжается.
Ядро уже совершеннолетние! Причем довольно старенькое((
Деградация опеннет экспертов продолжается
РАСТление ядра... По-моему все абсолютно точно сказано. А у вас какие-то проблемы? Или в очереди на границе стоишь и потрепаться хочется?
А ты что не видишь что прогресс в линпуксе перешел в стагнацию? Если в нулевых он стремительно развивался, появлялись новые фичи, то сейчас переливание из пустого в порожнее.
Я очень рад этому поистине историческому событию. Сегодня Rust вошёл в бессмертие в ядре Линукс. Уже долго зрела необходимость в новом языке системного программирования, который отразит более чем тридцатилетний прогресс технологий и програмистской мысли. Тут и вклад функциональных мыслителей, и опыт горьких ошибок в памяти.Было много попыток заменить Си. Начиная, вы будете смеяться, с C++. Было много других. Все они, к сожалению, не смогли набрать достаточно тяги, привлечь к себе внимание больших игроков. И я рад, при всех возможных недостатках, что Расту это -таки удалось! Что бизнес обратил внимание на достижения тридцати лет в области управления памятью и стал их продвигать.
И сегодня Линус Торвальдс положил начало новой эпохе! Один маленький шаг (впрочем, маленький ли, если разработка шла полтора года) приоткрыл нам двери в будущее! Да здравствует Rust, да здравствует Линукс!
не знаю стеб ли это, но в целом да, именно так.
вся надежда на тебя
Пролетарии всех стран - соединяйтесь! Вперёд, в светлое коммуRustическое будущее! Ура, тварищи!
А почему Rust, а не Carbon?
Потому что сам Google в инфе о карбоне пишет, что если может вместо Carbon использовать Rust - используйте Rusthttps://github.com/carbon-language/carbon-lang/blob/trunk/do...
> If you can use Rust, ignore Carbon
> If you want to use Rust, and it is technically and economically viable for your project, you should use Rust. In fact, if you can use Rust or any other established programming language, you should. Carbon is for organizations and projects that heavily depend on C++; for example, projects that have a lot of C++ code or use many third-party C++ libraries.
> We believe that Rust is an excellent choice for writing software within the pure Rust ecosystem. Software written in Rust has properties that neither C++ nor Carbon have. When you need to call other languages from Rust, RPCs are a good option. Rust is also good for using APIs implemented in a different language in-process, when the cost of maintaining the FFI boundary is reasonable.
> When the foreign language API is large, constantly changes, uses advanced C++ features, or makes architectural choices that are incompatible with safe Rust, maintaining a C++/Rust FFI may not be economically viable today (but it is an area of active research: cxx, autocxx, Crubit).
Ещё стабильный релиз не вышел. Тем более, полтора года назад Гуглаг про него даже ещё и не упоминал.
Потому что Carbon это C++ с почищенным синтаксисом. Ничего кардинально нового он не предлагает, да и не может предложить, ибо изначально задумывался, как эволюционная замена C++.
Зачем нужен раст в ядре? Ну, допустим, позволит он избежать 3 с половиной типа ошибок работы с памятью, которые при внимательном программировании и так появляться не должны, дальше что? Будет как обычно - одни ошибки исправятся, другие добавятся, зато в ядре теперь появится зоопарк языков (внедрение Carbon'а - вопрос времени) и у корпораций будет больше возможностей для обфускации кода своих драйверов и модулей.
Корпорации, если захотят, вообще могут сорцы драйверов не релизить, никто против них особо не попрет. И блоб есть блоб, написан он на Си или не-Си, не играет роли.> которые при внимательном программировании и так появляться не должны
Ну это ж такая себе логика, проекты становятся всё больше и больше, уследить за всем - всё труднее и труднее. Если что-то можно переложить на машину, почему не переложить?
>>Зачем нужен раст в ядре?Ни в ядре, а в дровах. Разницу понимать надо.
в модулях ядра, читай внимательно. Модуль может быть как загружаемый, так и внутренний.
> внедрение Carbon'а - вопрос временине будет он внедряться, по крайней мере в обозримом будуешь
у них прим в гите написано "If you can use Rust, ignore Carbon" (https://github.com/carbon-language/carbon-lang/blob/trunk/do...)> и у корпораций будет больше возможностей для обфускации кода своих драйверов и модулей.
Серьезно? Ты не в состоянии прочитать код и поэтому называешь это обфускацией?
Речь не только об избежании некоторых видов ошибок и уязвимостей. На уровне языка например решена проблема статичного определения пересечения областей памяти при копировании. Почитайте про restrict: https://ru.wikipedia.org/wiki/Restrict . И за счет статичного анализа доступны другие оптимизации, недоступные в Си/С++.
> ... На уровне языка например решена проблема статичного определения пересечения областей памяти при копировании.А о раскадровке памяти оно непосредственно из мирового эфира узнаёт.
Что такое "раскадровка памяти"?
> Что такое "раскадровка памяти"?Это что и по каким физическим адресам в данной системе. (поскольку topic про ядро).
Намёк был на то, что на этом уровне вся "решённая проблема статичного определения пересечения областей памяти" не то что бесполезна, а от неё придётся отстраиваться путём акробатических этюдов. Камасутра в публичном месте.
Почему форсят этот язык, что в нём такого хорошего в отличии, например, от zig.
Тут на самом деле проблема, что хорош именно тем, что форсят. Без форсинга особо никакой язык, особенно в наше время, не взлетает. И вот есть, допустим, Rust и ещё какие-то языки из той же ниши. Какой не форсь - кто-то будет вопить, что язык N лучше в 100500 раз. В итоге или не форсится вообще никакой язык из этой ниши, или какой-то. Да, необязательно лучший с точки зрения чисто "технической". Селяви, что могу сказать
Чистый Си никто из корпораций не продвигал. Да, он шёл с Юниксом, но его специально никто не хайпил.
Случай с Си немного иной, тогда ещё поляна была относительно чистая. Тем не менее, Си победил скорее всего засчет юникса. А C++ (да, это не Си, но всё же связанное) победил засчет Майкрософта с его winapi. А так в те времена боролись разные претенденты, и Паскаль, перешедший в Дельфи, и много чего ещё. Вытянули ОСи, написанные на Си и C++, и в итоге вытянули эти языки. А потом начали хайпить Джаву. Ну и т.д. и т.п.
И поэтому сейчас куча ос на джаве
Джава да, не про ос было, а скорее про силу хайпа самого по себе. Потому что преимущества Джава перед C++ были весьма своеобразными. Sun пришлось много маркетинга потратить на то, чтобы убедить в этом других. При том что тот же "write once, run everywhere" для Джавки работает со скрипом - для простых прог или в удачных случаях работает, иначе не работает.В системной области ЯПы развивались куда медленнее. Просто хотя бы потому, что бизнес приложения меняются гораздо быстрее, чем ОСи
Джава был прорыв в ооп, на этом всё. С элементарным доступом к различной документации для других языков через инет и с развитием IDE, люди наконец разглядели, что это был тупик.
Си победил потому что он лучше. Си создавался во времена, когда компы были слабыми, имели мало памяти и надо было эффективно писать программы. С этим Си отлично справляется и является лучшим ЯП до сих пор.
Покажи что написал на Си
> Покажи что написал на СиСначала ты покажи что написал хоть на чем-нибудь
> эффективно писать программы
> Си отлично справляетсяЭто с учетом критических уязвимостей с получением рута или нет?
Ножами можно резать колбасу? Это с учётом порезов убийств и геноцида или нет? Срочно запретить!!! Внедрить кухонные комбайны с умным блендером!
Си победил в "системщине" (а в 70х - во времена его создания - другого и не было) потому что был тупым переносимым ассемблером. И позволял х*як-х*як и продакшен портировать код на другую архитектуру. А архитектур тогда было просто завались. Поэтому напр. не взлетела Ада - писать было сложнее.
Скорость такого быдлокодингы очень ценилась бизнесом и сишники плодились как тараканы.
Примерно как пхпешники в 2000х.
Так это же классно, а вы так пишите, как будто что-то плохое.
Если это так классно, то почему труЪ-сишники так чморили пыхеров, а сейчас джаваскрипчиков?
Насчёт того, что Си лучший до сих пор - ну это смело. Я понимаю, что новинки не все хороши и что новое не значит хорошее. Однако и в 80-е были люди, которые искренне считали, что все технологии после 80-х никуда не годятся и надо писать, например, на ассемблере, чтобы железо чувствовать и оптимизировать хорошо.О причинах побед Си - он мог победить, потому что лучший, но факторов обычно очень много в такой борьбе. Недостаточно быть лучшим - нужно чтобы тебя заметили и пошла сила тяги, что называется. Танненбаум считал, что интелx86 - дешёвая перегруженная кривая фигня, а победят прекрасно отдизайненные компьютеры SPARC от Sun. И где теперь SPARC? И где Sun?
> Си победил потому что он лучше.Нет. Си относительно прост и низкоуровневый.
Ранние версии не так далеко ушли от ассемблеров, и по сути его кроссплатформенной разновидностью и являлись.
А ассемблер не может слить никакому иному языку, им или пользуешься или нет.
И сейчас Си применяется в основном только для системного программирования.А попытки писать чуть более высокоуровневое ПО, с человеческим пользовательским интерфейсом, привели к появлению С++, Java, C# и иных языков.
Кстати, забавный факт:
>>когда компы были слабыми..Си компиляторы на них работали чудовищно медленно. А Паскаль компилировал более чем на порядок быстрее.
И ненавистники Паскаля плевались, но вполне массово на нем писали. А с появлением Delphi1, тем более.
Но, когда появились альтернативы, а мощности компmютеров уже не жали, так же дружно забили.
>Си компиляторы на них работали чудовищно медленно. А Паскаль компилировал более чем на порядок быстрее.Может ты врёшь?
От старых пердунов слышал обратное, что Паскаль был тормознутым а Сишка летала. На конец 80-х и 90 гг. вроде было, точно не помню. Паскаль медленным был потому-что был интерпретируемым языком.
> Паскаль медленным был потому-что был интерпретируемым языком.Ты слушал настоящих Экспертов!
WinAPI это чистый Си же.
Ну тогда тем более, winapi добавил очков языку Си
Он наверно имел в виду MFC, а не WinAPI.
Надо заметить, MFC - самая быстрая ООП-нахлобучка над WinAPI. И самая лёгкая. Даже все борланды отчмокивали у прог на MFC.
> Надо заметить, MFC - самая быстрая ООП-нахлобучка над WinAPI. И самая лёгкая.
> Даже все борланды отчмокивали у прог на MFC.Да она и сейчас живее всех живых. Всё-таки, обратная совместимость это сила.
>C++ (да, это не Си, но всё же связанное) победил засчет МайкрософтаЗа счёт Борланда, его присутствия на всех тогдашних платформах.
> Чистый Си никто из корпораций не продвигал. Да, он шёл с Юниксом, но его специально никто не хайпил.Занятный опеннетный "онализ".
Ага-ага, AT&T - ну совсем мелкая подвальная лавка, а ISO-вцы - кучка гиков, работающих за идею ...
Опровергай собеседника, не надо сарказмом заниматься.
Все хорошее, живое и самобытное вырастает не благодаря, а вопреки, снизу вверх, как трава прорастает через бетон.А если что-то нужно форсить сверху и без этого оно не живет, значит изначально живого начала в себе не имеет. Пока бабки вливают, трепыхается как будто живое, перестанут вливать -- сдуется.
Из Гугла один чувак впрягся за Раст. Незнаю, как они Линуса убедили. Линус вполне мог бы послать лесом переговорщиков из Гугла, он же ведь когда-то послал лесом Си плюс-плюсников. Молодых желающих изучать Си не убавляется. Чистый Си в рейтингах на самых высоких позициях.Но то, что я знаю точно - Линус считает чистый Си лучшим языком на свете.
> Чистый Си в рейтингах на самых высоких позициях.Не в рейтингах, а в одном рейтинге - TIOBE. Мб ещё в каких, но мне кажется, что вы только этот смотрели. Рейтинги по стековеру, по гитхабу и ещё всяким бякам дают в самые популярные языки либо Питон, либо JS. Хотя если вы говорите о просто высокой, не первой, позиции - то с натяжкой да, Си держаться за счёт низкого уровня и эмбединга
Что касается Линуса, он когда-то давно говорил, что Раст выглядит перспективно. Ещё до патчей, лет 4-5 назад. Да, он, конечно, сишник. Но к Расту он относился снисходительно, если это сравнить с его отношением к плюсам и другим языкам
Пруфов на эти разговорчики торвальдса конечно не будет, да?
> Пруфов на эти разговорчики торвальдса конечно не будет, да?Будут, интервью, 2016 года
> What do you think of the projects currently underway to develop OS kernels in languages like Rust (touted for having built-in safeties that C does not)?
> That's not a new phenomenon at all. We've had the system people who used Modula-2 or Ada, and I have to say Rust looks a lot better than either of those two disasters.
> I'm not convinced about Rust for an OS kernel (there's a lot more to system programming than the kernel, though), but at the same time there is no question that C has a lot of limitations.https://www.infoworld.com/article/3109150/linux-at-25-linus-...
А разве уже не работает "Если ..., значит это кому-то нужно" ?
И почему если форсят, то этим хорош? (это уже к следующему участнику). Есть же технические критерии, надо спокойно разбираться. Или хорош тем, что будут больше людей его пробовать? Может просто уверовали и проповедуют. Но ситуация интересная, динамичная и с необычным эмоциональным фоном.
> И почему если форсят, то этим хорош?Немного объясню позицию на этот счёт. Участник изначально задал вопрос - чем Раст лучше какого-другого языка N? Есть некоторая группа языков, которые претендуют на то, чтобы стать системным языком-заменителем Си. Среди них Rust и ещё какие-то помельче. В этой группе Rust хорошо тем, что его уже раскачали хорошо и продолжают форсить. Благодаря этому будут библиотеки, будет инфраструктура, будет сообщество.
Проблема тут в том, что технические критерии - штука хорошая, но не определяющая. Даже если у тебя язык идеальный, без сообщества и библиотек разрабатывать боль. Нужно всё пилить самому с нуля. С другой стороны, если язык уже накачивает какая-то корпорация, это привлекает других людей, появляются либы, сообщество, это в свою очередь и другие компании, бизнес, привлекает, тут появляются вакансии. Такой вот замкнутый круг
Да, тот же вопрос. И то, что его форсят, вызывает отторжение. Если бы его не форсили, а он каким-то естесственным образом постепенно заменил бы Си - то ладно, но наблюдается обратная картина - его настойтиво всюду впаривают, как гей-парады. Типа, "не провёл гей-парад (не перешёл с Си на Раст) - всё, редиска".
Естественным образом из Си может вырасти только Си. Просто потому что уже такая махина лигаси есть, что переписывать без толчка, в т.ч. рекламного, тупо лень.Вот, скажем, в андроид разработке Kotlin заменил Джаву тоже не просто потому что он такой замечательный, а потому, что джетбрейнс активно лоббировала это дело. Так и здесь
Мы сейчас живём в такое время, когда очень трудно пробиться без большой компании за спиной. Когда компьютеры были сродни ремеслу, тогда иное дело. Сейчас индустрия, без поддержки бизнеса, чем крупнее, тем лучше, тяжело
Именно. Другой пример - эпл. Полный контроль экосистемы, вообще всё - либы, ide, системы сборки. И даже им пришлось очень много телодвижений сделать чтобы заставить разрабов переходить на свифт. Причем часть была очень жесткая, типа выпуска фреймворков вообще без objc интерфейсов.
Ничего лучше Си/Си++ нет. Просто нет. Раст пихают в ядро не потому, что он равен с Си или лучше, а потому что кому-то выгодно изпортить ядро. Есть одна известная компания, которая Линукс ненавидит, а именно представители сей компании - в Раст фаундейшн, как ни странно. Разговоры о безопасной работе с памятью - блеф. Я допускаю, что Линус отлично поинимает, что эту ветку ядра (ну то есть ту, которую он возглавляет на данный момент) уже не спасти, потому он пустил Раст в нее. И возможно нас ждут сюрпризы со стороны Линуса по поводу ядра и его будущей разработки.
Теории заговора и расследования от опеннет экспертов.
На мучаетесь, сходите к психиатру, а иначе можете ещё больше "изпортить" себе психику.
> Ничего лучше Си/Си++ нет.Что можно написать на Си такого, чего нельзя на FreePascal или FreeBASIC? ВНЕЗАВНО, но энтузиасты даже операционки пишут на этих языках.
Можно-то можно, но это учебные многословные языки, чтобы было понятнее начинающим. Зачем опытному программисту постоянно писать begin/end? Кстати, Паскаль принципиально очень похож на Си. Можно даже сказать, что Си - это Паскаль для профессионалов)
Это вкусовщина. Если кто-то привык к begin end, почему нет? Может у кого-то плохое зрение и он не замечает скобки (утрирую, конечно).Я отчасти согласен, но думаю тут всё -таки влияет то, что мы живём в мире победившего Си. Победи Паскаль, мы бы удивлялись, как люди могли нагромоздить этих непонятных скобок вместо ясных begin и end
> Разговоры о безопасной работе с памятью - блеф.Вы отвергаете любую возможность улучшить существующие языки программирования?
Ну-ка объясните мне: Линус - очень матёрый сишник с десятками лет опыта на нём, но ведь по логике экспертов с растотредов матёрому сишнику как раз-таки раст не нужон. Ну тип если на си есть достаточно опыта, то зачем все эти якобы безопасные языки, смузикомпиляторы и прочие зумерские борров чекеры.Получается либо Линус не дорос до тру-сишника, либо раст нужон.
Линус дорос и перерос. Держу пари, что он код не видел лет пятнадцать, а вся его теперешняя деятельность - чистый менеджмент.
Постарел похоже, уже нет сил защищать ядро, как раньше. Тем более последние 15-20 лет он только и делал, что отбивался от попыток пропихнуть в ядро всякую шнягу.
> Линус не дорос до тру-сишника«Я знаю только то, что ничего не знаю, но другие не знают и этого.» ©
Он уже "десятки лет" менеджер ядра, а не программист.
Да еще и не слишком эффективный. Из всего того, что можно было добавить - добавить самую лажу - рассчитывая на то что кто-то, без базовых знаний от Кнута и т.п. сможет добавить эффективные драйверы в систему.. Ну тут уже уши гугла торчат - последним вообще необходимо, как-то целенаправленно, периодично притормаживать все, дабы всякие производители железок могли выпускать чего-то новое. А то уши кризиса в электронике уже видны..
Эксперты опеннет всегда готовы навалить свои фантазии в комментарииУ тебя то самого есть "базовые знания кнута"?
Покажи что написал сложнее хелло ворлд
> Эксперты опеннет всегда готовы навалить свои фантазии в комментарии
> У тебя то самого есть "базовые знания кнута"?
> Покажи что написал сложнее хелло ворлдА ты кто такой? Аноним? Ну тогда пошел ты на ... Аноним.. Еще перед свиньями бисер метать...
А ты кто такой? Олег? Ну тогда пошел ты на ..., Олег! Развелось тут всяких... И макет не забудь!
Линус местным экспертам 🤡 не авторитет
Если ключевые слова языка сокращаются и прилепляют очередную закорючку для выражения синтаксиса - это явно не направлено для лучшей читаемости, а соответственно улучшения групповой разработки. Так и хотять слепить очередной brainf*ck.
То же касается естественных языков, в которые постоянно вносят сленговые слова от собственной лени произнести/написать полное слово, ещё и думая что это типа круто. Языки нужны для коммуникации, а ваш тупой слэнг только орезает часть людей от понимания вас же самих.
Если видишь, что переменные в коде написаны одной буквой или являются некими сокращениями, то это либо студент, либо макака.
В математике переменные одной буквой идут, например: a + b = b + a. Ну это так если что.
> В математике переменные одной буквой идут, например: a + b = b
> + a. Ну это так если что.Да, ну? А как же x1,x2.. y' и подобное. И это при том что переменных кот наплакал.
>>снижения вероятности совершения ошибок при работе с памятьюОпа! Оказывается, раст не избавляет от ошибок с памятью, а всего лишь снижает их вероятность.
>>>снижения вероятности совершения ошибок при работе с памятью
> Опа! Оказывается, раст не избавляет от ошибок с памятью, а всего лишь снижает их вероятность.Опа! Оказывается, реальность не соответствует фантазиям и прочим соломенным чучелам местных Военов Супротив Раста. Кто бы мог подумать!
На минуточку это были фантазии именно Военов Раста, о том, что Раст исключает ошибки с памятью.
А эти Воены Раста, они сейчас с тобой в одной комнате?
А где сейчас bpf? Его не забыли?
Скорее всего полтора мегакорпораста, это заказавших, результат устроил.
Ну а остальным не особо интересно, вот и тишина.
Появится соответствующее CVE, снова услышим.
На Линуса нашлась управа. Если как следует надавить, можно заставить и комментарии на Камчатском, и код на иврите стандартизировать. Только делать надо постепенно, чтобы гики не опомнились.
Возможно, кого-то заинтересует)
Куча фич, современные решения, не идеальный, без кучи бабла от крупных компаний (решения принимаются core командой), самый настоящий anti-hype
Dlang.org - welcome :)
Как оно задолбало со своими:> this version of Cargo is older than the `2021` edition, and only supports `2015` and `2018` editions.
как этим можно пользоваться ? Где консистенси, где оффлайновая сборка прокта с одной либой или вообще без них ? Ну вы серьезно это хотите везде запихать ?
> как этим можно пользоваться ? Где консистенси, где оффлайновая сборка прокта с одной либой или вообще без них ?cargo vendor.
> Ну вы серьезно это хотите везде запихать ?
Да, хотим.
А в чем проблема?Хочешь используй cargo, хочешь не используй cargo и работай на прямую с rustc.
Хочешь используй crates.io хочешь используй локальные либы (просто укажи путь на своем компе).
Хочешь используй готовые либы на расте или на С, хочешь пошли сам с нуля, или просто копирасти весь код.
Полная свобода! Что не устраивает?
>хочешь - используй в своих проектах
>хочешь - не используй в своих проектаха в чужих изволь патчить чужой код, усыпанный паниками, Rc, Arc и подтягом либ с crates.io
или жри чё дают
>А в чем проблема?А проблема (помимо лефтпадов в "системном" языке) в том, что если очередная джава meant to be used с мавеном, антом и IDE, то пользоваться ей без мавеноанта и IDE будет очень больно, если не невозможно. И этот подход кардинально отличается от философии UNIX. Если бы это вкорячили в виндовый DDK на пару с какими-нибудь нугетами, там оно смотрелось бы органично, совать же этого макаронного монстра в ядро, для сборки которого нужно всего ничего gcc, make и ещё пару вещей - значит нанести серьёзный удар по дистрибутивам и собирателям ядер, помимо других очевидных ударов.
Еще пара вещей это всего лишь
- Binutils
- Perl
- BC
- OpenSSLЕсли для сборки ядра вкорячили Perl, почему бы не добавить еще и rustc?
>Если для сборки ядра вкорячили PerlС какого перепугу? Для сборки ядра нужен всего лишь GCC.
https://www.kernel.org/doc/html/v4.13/process/changes.html#k...
https://www.kernel.org/doc/html/v5.12/process/changes.html#k...
Для чего придумали докер? Да чтобы все эти служители cargo культа в лице pip и npm не лезли своими потными ручками в систему. До кого-то частично дошло (и они начали пропагандировать песочницы), но по большей части не дошло, что софт надо писать стабильным.Когда сделаете так, чтобы нельзя было автоматически лезть своими потными ручками в систему, тогда и поговорим.
Их не устраивает что придется что-то делать ручками. Даже при том, что они ничего на раст писать не собираются))
Мне вот все интересно с этим языком - а приличиные люди, отвечающие еще за базар в линуксостроении, не маркетологи и вынужденные дочки-матери типа Линуса, а те самые уважаемые, ответственные, старые и еще пишущие код люди, как относятся к Расту?Ведь, по сути, если они скажут, вытирая пот со лба, что - годно, нужно, наконец-то вместо ста часов на разработку я буду тратить шестьдесят - это и будет ответом на все.
А так - мнение заинтересованной =западно-германской= молодежи, которой что ни язык программирования, то количество денег за быдлокод на нем, да прочих, которые лопатой эту молодежь кидают в кучу общего мнения - интересует не сильно, разве что для смеха.
Предлагаю заглянуть в lkml в треды по этим патчам (в предыдущих новостях вроде были ссылки) и почитать что думаю реальные ментейнры/контрибьюторы.
Это неинтересно, потому что будет поправочка на CoC.
> Предлагаю заглянуть в lkml в треды по этим патчам (в предыдущих новостях
> вроде были ссылки) и почитать что думаю реальные ментейнры/контрибьюторы.Попробую найти, спасибо! Но уже одно то, что это мнение надо где-то искать, а пропаганда растостроения бьет ключом без особого поиска, может говорить о многом.
Пропагандируй lkml, в чем проблема?
> Пропагандируй lkml, в чем проблема?Для меня в обоих случаях - проблем нет. Я вижу то, что мне не нравится либо нравится, об этом и говорю.
А что тут искать?Вот ссылки на последние предыдущие новости по теме:
https://www.opennet.dev/opennews/art.shtml?num=57840
https://www.opennet.dev/opennews/art.shtml?num=57603
https://www.opennet.dev/opennews/art.shtml?num=57586В каждой из них есть ссылка на lkml! Тебе просто лень их открывать?
Или ты ожидаешь что в новость будут копипастить портянки обсуждений?
А даже если их копировать - всегда найдется тот кто спросит "а что это за чел такой? он для меня нифига не авторитет! неси другого!"Пока "пропаганда" только в ленивости новостеделов в виде копипасты одних и тех же абзацев про сам раст.
Вот это реально раздражает.
> А что тут искать?
> Вот ссылки на последние предыдущие новости по теме:
> https://www.opennet.dev/opennews/art.shtml?num=57840
> https://www.opennet.dev/opennews/art.shtml?num=57603
> https://www.opennet.dev/opennews/art.shtml?num=57586
> В каждой из них есть ссылка на lkml! Тебе просто лень их
> открывать?Ты не понял, моя благодарность была завуалированным способом показать, что мне это не интересно. Ни Раст. Ни мнение противоположной стороны. Но сам факт того, что про Раст из любого утюга, а про мнение краеведов надо ссылки шерстить - ты не опроверг. Спасибо, именно об этом я и говорил.
> Или ты ожидаешь что в новость будут копипастить портянки обсуждений?
Я ожидаю, когда в тебе накал стихнет. Но, видимо, не дождусь. Мне тут спорить не о чем, твои советы типа - сходи туда, делай то, делай это, =не нужно приплетать= - оставь себе. Я тебе советов не даю, ты, почему-то, считаешь нужным мне их раздавать.
Впрочем, дал ссылки - спасибо.
> А даже если их копировать - всегда найдется тот кто спросит "а
> что это за чел такой? он для меня нифига не авторитет!
> неси другого!"С этим согласен.
> Пока "пропаганда" только в ленивости новостеделов в виде копипасты одних и тех
> же абзацев про сам раст.
> Вот это реально раздражает.Ну - и это тоже, да.
А, сорян тогда, слишком ты завуалировано пишешь, не понял я сразу, что ты просто поныть сюда пришел "как же раньше было лучше" и позадавать риторические вопросы на которые тебе не нужен ответ.
Не буду больше тебе ничего советовать))
Глупый ты, для кодера главное из воздуха сделать многочасовой объём оплачиваемой работы, а не сократить всё до минимума.
> Глупый ты, для кодера главное из воздуха сделать многочасовой объём оплачиваемой работы,
> а не сократить всё до минимума.Да. Если повспоминать 20 лет чтения этого ресурса, то сперва ходил сюда за советами и статьями по системному администрированию, за какими-то новыми решениями, в логах писалось то, что нужно админу, поведение сервисов было ожидаемым, документированным. А теперь, действительно, все скатывается часто в какую-то глупизну. Для себя точкой отсчета в это скатывание считаю момент, когда начали как-то слишком назойливо пихать фразы типа =nginx лучше, чем Апач=. Сперва в комментах, потом и в публикациях стало проскакивать. Казалось бы - кому какое дело, что где лучше? Если лучше - наглядно докажи. Доказал - никто ни у кого не должен отнимать право выбора.
Но хвост виляет собакой и вот уже везде systemd, снова сто первый аудиоплеер и сто восьмая система вывода звука, а у nginx тоже начинаются, по мнению писателей, какие-то фатальные недостатки.
А админить не то чтобы сложнее становится, но порой читая тонны бессмысленного, с точки зрения администрирования, логирования свежеиспеченных сервисов и программ, чтобы хоть как-то добраться до сути, думаешь - кто-то левый перехватывает инициативу.
Этим левым я считаю программистов. Не всех, конечно, но если программист машет растовой повесткой либо любой другой (таких повесток на Хабре много, поэтому они и тут пропаливаются), если =мы сделали лучше, убили хорошее, а нормально - не смогли=, он явно левый чорт. Слушать его не надо, желательно - выставить на мороз.
Тем не менее - кто я такой? И вот программисты пытаются накинуть свои повестки и на ядро. Глядя на то, что творится вокруг, какое сыроподелие пихается в прод бесконечно, везде, без удержу, ядру линукса могу только пожелать удачи, надеюсь, к тому времени, когда вся эта чертовщина окончательно заполонит, на пенсию уйду.
>И вот программисты пытаются накинуть свои повестки и на ядроПрограммисты они такие, им бы только свои повестки накинуть.
Повестки лучше выкинуть
Странно, вроде сидишь тут 20 лет, а "споры" Линь vs Бздя не помнишь.
А как же "споры" GPL vs MIT (BSD/Apache/whatever)? Да даже GPL2 vs GPL3?
А гном против кде? А gtk vs Qt? Vim vs Emacs?Это было всегда, не нужно тут приплетать какую-то повестку. С этим иди в обсуждения CoC'ов.
Просто люди (а не только программеры) начинают во что-то верить, а тут "в интернете кто-то не прав!".
> Странно, вроде сидишь тут 20 лет, а "споры" Линь vs Бздя не
> помнишь.
> А как же "споры" GPL vs MIT (BSD/Apache/whatever)? Да даже GPL2 vs
> GPL3?
> А гном против кде? А gtk vs Qt? Vim vs Emacs?
> Это было всегда, не нужно тут приплетать какую-то повестку. С этим иди
> в обсуждения CoC'ов.
> Просто люди (а не только программеры) начинают во что-то верить, а тут
> "в интернете кто-то не прав!".Лично тебе:
1. Про =CoC'ов= - мне твой птичий язык не знаком, извини.
2. Советом твоим пользоваться не буду, извини. Потому что неравноценно получается - я ведь тебе советов что делать - не давал.Тем не менее, ты прав в том, что срачи были всегда. Но, странное дело, нет у меня напряжения по поводу приведенных тобой примеров, потому что там сущности спора не =захавывают= что ли, мир. Не делят друг друга на отжившее и что-то офигенно молодое, а значит, безусловно правильное, например.
Споры о вкусах - это одно. Это всегда было и будет. Но споры вокруг того же systemd уже идут не о том, плох он или хорош - он тупо стал везде, хоть заспорься. Либо поднапрягись, повыпиливай. И споры про Rust в стиле - =ура! наша берет!= - тоже напрягают. Хоть и не сильно. В сумме с тем, о чем писал, про программистскую суть, как таковую, мне это не нравится.
БСДМ тоже на раст уходит? Топиш ядро линукс, то есть юникс пал, линукс на подходе и из етого выплывет дас виндовс:-)
> Основным мотивом поддержки Rust является упрощение написания безопасных и качественных драйверов устройств за счёт снижения вероятности совершения ошибок при работе с памятью.Если речь о безопасности, надежности и верифицируемости кода, то надо выбирать SPARK.
Надеюсь будут патчи для очистки исходников от ржавчины.
Речь о том, что уже 2022 заканчивается, а вы предлагаете хрень с корнями из прошлого века.
Может тебе ещё и от колеса отказаться совсем?
Он не выучил что такое:1. Безопасный язык программирования
2. Надежный компилятор и ПО.
3. Математическая верификация корректности работы программы.Вот когда выучит теорию и поймет, что в Rust этого нет и небудет, тогда к SPARK подтянутся.
Он не выучил что такое колесо, такому в школе не учат.
SPARK это не "математическая верификация кода", а просто тупо запрет динамического выделения памяти. То есть никаких динамических массивов и т.д.Математическая верификация это как минимум Haskell
SPARK дает математическую верификацию исходных текстов на предмет отсутствия ошибок работы с памятью и падений во время работы программы. Причем SPARK-2014 делает на конец это просто и удобно.SPARK - математически верифтцируемое подмножество языка программирования ADA.
Ты бы глянул что ли как это математически доказывается.Да черт возьми даже Idris вместе с Coq будет проще.
К кроме все это доказательство сводиться к статике. Никаких динамически изменяемых массивов!!!
Нафиг такой язык в ядре?
Да, идея языка зородилась в 1970-тых.Но только, примерно, 10 лет назад (2014) смогли наконец правильно реализовать верифицируемость программы на уровне исходных текстов на предмет корректности работы с памятью и отсутствии ошибок во время исполнения.
Сегодня SPARK очень высоко безопасный, очень высоко надежный с встроенной математической верификацией исходных текстов.
Если бы GNU написали компилятор на 15 лет раньше, то мозила Rust бы не изобретала.
https://www.adacore.com/about-spark
https://en.m.wikipedia.org/wiki/SPARK_(programming_language)
Что за аццкий бред. Либая программа лишь трансформируется в машинные инструкции, которые выполняются на процессорах разного типа. Вы там математически доказали, что Meltdown'a нет?
SPARK - доказывает что исходники програмы верны почти на 100% не имеют ошибок во время испоьнения, а также дает почти 100% безопасность и надежность компилятор. Риски при использовании SPARK приемлемы в гражданской авиации, критических производствах и военных системах.А 100% никто не даст!
Надежность и безопасность проца и его микрокода рассматривается отдельно.
Очевидно что он не понимает даже очевидных вещей
Опять гнутые во всём виноваты.
Как только SPARK довели до нужного уровня и он стал интересен, так сразу в GNU написали компилятор GNAT https://www.adacore.com И ядро OS https://muen.skА раньше хотели, но не могли.
https://muen.sk/ похоже на микроядро.
У HURD может появиться шанс на второе дыхание.
Как только родится гений математики, который напишет реализацию DAC и MAC для микроядер без 100-кратных тормозов.
Ага без динамического выделения памяти)).И еще столько же потратят на динамику:-)
>Ага без динамического выделения памяти))Я, между прочим, джва года жду форк XLib, полностью или хотя бы в каких-то пределах укладывающийся в стек. Если язычок с автоматически управляемой памятью до сих пор не умеет посчитать, что алгоритм константен по памяти и выделяет память зря, то полагаться на такой язычок вообще печально и лучше делать руками статическое выделение.
Не думаю, что в языках такого класса рискнет кто динамически выделять память.Все останется строго в статике.
Чтобы не повторятся, ответы на все вопросы SPARK vs Rust: https://www.opennet.dev/openforum/vsluhforumID3/127824.html#310
Я думаю, надо запилить на лиспе асм и требовать принять в ядро лисп. Можно ещё на этом лиспе семантически похожий на си, но с лиспомакросами и лиспосинтаксисом язык запилить (опционально стандартизировав как SRFI) и пугать им растоманов.Сделать его, к примеру, на Guile, а потом выкинуть из Guile интерпретатор и Andy Wingo (пускай прожирает гранты и требует уволить Столлмана из рядов FSF в другом месте), портировать по-нормальному туда ANSI Common Lisp в качестве полноправного соседнего языка (и тут же вкорячить для scheme поддержку борщелисповых cffi+uffi, которые еще сперва для cl надо реализовать) и тут-то заживём.
В ПО нужна простота. Rust усложнит поддержку ядра Linux кратно!Linux должен остаться на C и ASM.
Теперь это не ядро, а помойное ведро с плавающим Rust.
>В ПО нужна простота.Растоманам нужна простата.
Переrustы разработают твою.
C и ASM — слишком сложна. Надо на Brainfuck переписать.
Возьми и запили
Слова Линуса про раст: “I really didn’t want to have to do this,” stated Torvalds. “But you all screw around too much. Nothing seems to get through to you. Maybe a little time with Rust will teach you a lesson.”
А зачем медлить, может сразу на бейсике или штмл написать, чувствую производители пк техники потирают руки, будет как в винде каждые три года, и главное из всех кто агитирует за раст подавляющее большинство здравствуй мир даже на бейсик не напишет не говоря уже про драйвера безопасности в линукс, удобства так самый удобный делфи был через пять минут любой чайник программу свою запускал и где же делфи? Сделайте пожалуйста отдельную ветку ядра чисто на С, к примеру ядро 6.1К.
Не трогали бы то, что хорошо отлажено и работает, и развивается нормально. руки прочь от ядра линукс, одной из немногих действительно хорошо продуманных, надежных, адекватных и качественных разработок. не надо уничтожать хорошее под предлогом якобы лучшего. в данном случае и к данному случаю применима пословица: лучшее-враг хорошему.
Для людей плохо знающих программирование, раст конечно кажется более безопасным, но это отнюдь не так. А для людей хорошо понимающих не только программирование, но и принципы работы вычислительных систем, раст является опасным и высокорискованным, в отличие от фантастически мощного и гибкого Си, на котором можно продумать практически любой аспект и любой бит, в том числе в контексте безопасности, но это именно для знающих людей. Си-это почти безграничные возможности, раст по сравнению с Си и в рамках данных задач-это только удобная поделка, сиюминутная игрушка, пусть даже и хорошая.