Комитет, управляющий разработкой набора компиляторов GCC (GCC Steering Committee), одобрил включение в основной состав GCC реализации компилятора языка Rust, подготовленной проектом gccrs (GCC Rust). После интеграции фронтэнда штатный инструментарий GCC сможет использоваться для компиляции программ на языке Rust без необходимости установки компилятора rustc, построенного с использованием наработок LLVM...Подробнее: https://www.opennet.me/opennews/art.shtml?num=57491
Теперь осталось добавить нормальных генераторов и короутин и будет вполне юзабельно, как раз го заменит.
> фронтэнд для языка Rust будет интегрирован в состав выпуска GCC 13Символичная версия.
Хз зачем гошку приплел, в остальном плюсую. Генераторы бы не помешали, async/await еще допиливают(асинк-трейты и прочее). Кстати может кто-нибудь знает как сделать аналог finally но асинхронный? с синхронным есть прием через замыкание, а вот с async - хз
async {
...
}
.map(|result| ...)
?
Не то же. Надо чтобы блок кода выполнился после функции в любом случае, но асинхронно. Например чтобы ресурсы подчистить - ну или другими словами как сделать async drop
> как сделать async dropВ принципе - это возможно, но пока есть сомнения в целесообразности. Drop вещь простая и детерминированная, а попытки делать внутри него await несколько разрушают эту детерминированность. Если интересны подробности, можно почитать обсуждение на IRLO: https://internals.rust-lang.org/t/asynchronous-destructors/1...
Если вернуться к изначальному вопросу, где был finally (Что не тоже самое что и async drop)
То на nightly уже можно делать так:let res = try {
// ...
};
// код для финализации
res
>(Что не тоже самое что и async drop)Согласен что не то же. Пытался использовать RAI за неимением другого.
>То на nightly уже можно делать так:
Спасибо, выглядит интересно
> как раз го заменит.Вообще-то есть gccgo, зачем ему сам себя заменять? А так - можно будет наверное попробовать подучить сабжа раз в gcc есть и не надо на гугл и эпл полагаться с этими их LLVM и CLANG.
Заменять надо богомерзкие хипстоподелки.
Чёт ты какю-то хрень написал.
Это моя забота, сажать юзверей на найтли ради стремноватых костылей не айс.
Ещё пусть нормальный компилятор завезут
Что это даст? Появится Firefox, построенный GCC, а не LLVM с Rust'ом?
Ну Ok.
Тогда к трём LLVM в системе (FreeBSD clang version 14.0.5, llvm12-12.0.1, llvm13-13.0.1) добавится ещё и четвёртый (gcc-13.x).
Нужно больше компиляторов!
можно будет собирать ядро линукса используя только православную гццшку.
... с не менее православным Rust'ом!Вообще ядро можно собрать и используя llvm, а учитывая неизбежное отставание gccrs от эталонного компилятора - будет еще меньше смысла использовать gcc.
rustc могут закопать.
Не могут, иначе куда gcc-кодеры будут подглядывать?
Не закопают, ведь нет стандарта на раст. Что именно реализует gccrs? Что-то невнятное, что есть в rustc.
Будет реализовывать rfc языка. https://rust-lang.github.io/rfcs/introduction.html
Или для вас стандарт это что-то сделанное дядями-бюрократами из специальных комитетов?
RFC - это не стандарт. Это "мы тут с чуваками в кафешке на салфетке что-то набросали".
Я так понимаю эти чуваки тоже на салфетке набросали https://github.com/tc39/proposals?
"Вы не понимаете, это другое!" (с)
js макаки бросают не салфетки
Ваша ссылка - на песочницу, в которой варятся предложения в стандарт. Да, это те самые салфетки. А сам стандарт ECMAScript здесь:https://www.ecma-international.org/publications-and-standard.../
Штука в том, что для Rust я стандарта пока не видел. Видел только стопку салфеток.
То, что ты скинул, да.А вот это нет: https://262.ecma-international.org/13.0/
> Или для вас стандарт это что-то сделанное дядями-бюрократами из специальных комитетов?Да, а что? У бюрократов есть хоть какие-то регламенты и правила, отличающие их от наколенных хипстеров меняющих мнение каждые 5 минут, корежа синтаксис. А в хрусте глядя на его дизайн очень часто сперва делают, потом думают. А лучше бы наоборот.
> Вообще ядро можно собрать и используя llvm,Поддерживает не все платформы и целиком зависит от 2 жадных и проблемных мегакорпов, гугла и эппла, известных динамой, профукиванием или даже злонамеренным сливом проектов и желанием все контролировать, вплоть, вон, до двухфакторных з@ндов в каждую ж@пу.
> еще меньше смысла использовать gcc.
Лично я не хочу целиком зависеть от придури гугла и эппла, по-моему очень даже смысл.
Эка вы про FSF сказали. GCC зависит от глупого копораста - который бах. и решил приватизировать себе весь код который компилируется этим компилятором. Ну да.. мы так и поверили что 100500 юристов читало текст лицензии на gcc и все забыли об исключениях. Да да. именно так и было. ведь так же ?
> Эка вы про FSF сказали. GCC зависит от глупого копораста - который
> бах. и решил приватизировать себе весь код который компилируется этим компилятором.С практической точки зрения Столлман меня не кидал закрывая сорцы своих инструментов, а вот гугл и эппл в этом замечены. Для меня это аргумент и я не хочу зависеть от тулчейна завязанного на эту сладкую парочку. Ну то-есть вообще совсем. Настолько что просто не буду пользоваться ЯП если это единственная имеющаяся опция.
> Ну да.. мы так и поверили что 100500 юристов читало текст
> лицензии на gcc и все забыли об исключениях. Да да. именно
> так и было. ведь так же ?Прикольный перевод стрелок и спрыг, но ничего для меня не меняет. Я по прежнему не собираюсь делать заглот гуглу и эпплу. И если выбирать то лучше подарю сорц Столлману. Тот кто мне подарил такой компилер, с страховкой от кидков с "закроем сорц" - этого хотя-бы заслужил. А фирма эппл деятельно показала что из себя представляет, закрывая сорцы своей оси дважды.
А, кстати, про CUPS уже не модно шестерить, что его "эппл разрабатывает"? А то разработчик CUPS уволился из этой помойки и тут оказалось что разрабатывает его ... все же не Эппл а вполне конкретный чувак? :D
Зачем тебе поддержка Rust в ядре?
Если не секрет, зачем 3 llvm? Нужно собирать что-то древнее?
Это скорее про те программы, которые используют LLVM библиотеки, а не те, которые собираются компилятором на его основе, осмелюсь предположить.
Не нужно быть совсем уж древней софтиной, чтоб перестать собираться с новыми библиотеками LLVM. Стабильность API - это совсем не про LLVM. А уж стабильность ABI - это даже и не про С++ вообще.
Будет полноценная реализация rustc не на Rust. Есть mrustc, но он пилится исключительно для bootstrap компилятора на Rust в проектах вроде Guix.
>Тогда к трём LLVM в системе (FreeBSD clang version 14.0.5, llvm12-12.0.1, llvm13-13.0.1) добавится >ещё и четвёртый (gcc-13.x). Нужно больше компиляторов!БЗДыпроблемы
Зачем в freebsd нужен язык для "программистов" которые не способны освободить за собой память и не общаться к освобожденной. Настоящим программистам проверки компилятора не нужны
Это даст портабельности. У ржавого сейчас с ней фигово. Так же как у llvm. А вот включение в GCC эту портабельность расту принесёт.
Сразу видно не знакомого с темой человека!
вот нахрена эту копипасту в последнем абзаце с новости в новость переносить?
Если долго повторять "халва"...
То выйдет третья часть?
Иначе новость превратиться в смс, а их гугол индексирует плохо.
Контентделателям приходится наливать воды, прям как в свои курсовые.
>наливать воды, прям как в свои курсовые.А ты в своей курсовой делал что-то по другому?
В курсовую воду наливал кто-то другой она же просто скопированная.
Это ещё не добавляют "ранее стало известно, что "
Чтоб когда пойдут уязвимости на расте, не нужно было долго искать текст для стёба.
Ну так они (уязвимости) и будут, не исчезнут под ноль, только в значительно меньшем количестве и не в таких тупых случаях, как на сишке.
Чтобы здешним пригорало.
Так выглядит типичный проплаченный маркетинговый текст. Любому разумному человеку понятно что на самом деле всё наоборот.
Уже есть Zig, лучше б его включили, Rust проржавел, конкуренты - лучше
Ну так предложи Линуксу, сделай сравнение, создай рассылку и покажи все преимущества по сравнению си, адаптируя язык к требованиям и создай патчи... штук 5 или больше...
Делов то.
Zig хуже Rust практически во всём, за исключением нескольких интересных моментов.Говорю как писатель кода на Zig. Пришлось проект закопать и перейти на Rust.
А какие в нем есть интересные моменты? Мне он показался абслютно безыдейным,
просто взяли фичи C++ и какие-то выбросили, какие-то завернули в другую обертку,
но ничего кардинально не поменялось.
> А какие в нем есть интересные моменты? Мне он показался абслютно безыдейным,Compile time вычисления. Представь себе крутой и правильный препроцессор, который запустит для тебя всю мощь языка - с стандартным синтаксисом - в чем-то типа препроцессора. А результат этого можно потом заюзать как константы и проч. Если это навороченые вычисления, с одной строны и видно откуда это берется, но с другой в рантайм не тратятся ресурсы на счет этого. Очень удачная придумка так то.
Более того, так можно в принципе сделать очень годные assert-like конструкции верифицирующие параметры на вход и все такое. В культурном и мощном виде. В остальных ЯП это использует урезанный синтаксис и/или обкоцаные фичи и вы по сути учите 2 субдиалекта.
Как то неубедительно.> Compile time вычисления. Представь себе крутой и правильный препроцессор... А результат этого можно потом заюзать как константы и проч.
Конечно задачи задачам рознь, но видать я не те задачи решаю. За кучу времени среднекровавенького костыльного энтерпрайза ни разу не понадобились какие-то "супер-дупер" сложные компайл-тайм вычисления, которые бы потом еще использовались как константы. От слова совсем. Только какие-то примитивные константы уровня числа пи или каких-то вкомпиленных ISO-кодов. Не понимаю, почему это с таким пиететом для разных языков как киллер-фичу преподносят. Наверное, если начну писАть какую-нибудь собственную ОС или сервер приложений - понадобится и оценю :)
> Compile time вычисления...Очень удачная придумка так то.
> Более того, так можно в принципе сделать очень годные assert-like конструкции верифицирующие параметры на вход и все такоеА вот тут становится очень интересно. Внешние параметры, которые в программу залетят в будущем из внешних источников, проверим при компиляции, а не в рантайме? Экстрасенсы, шаманство и магия... Может, "Compile time вычисления как константы" отдельно, а "годные assert-like конструкции верифицирующие параметры" - отдельно, без связки слов?
Вот пример годной assert-like конструкций во время компиляции:
> Вот пример годной assert-like конструкций во время компиляции:
> https://github.com/microsoft/STL/pull/2837Я честно говоря в этом месиве вообще не понял в каком там месте - "годно". Впрочем от гитхаба, майкрософта и STL иного и не ожидалось. Я бы имхо не хотел иметь дело с таким кодом.
>> Может, "Compile time вычисления как константы" отдельно, а "годные assert-like конструкции верифицирующие параметры" - отдельно, без связки слов?А вы точно программист, а не джава макака? Первому не нужно объяснять почему одно вытекает из другого, второму и не объяснить…
Даже у незнающих чем отличается фон неймовская архитектура от гарвардской "джава макака" есть compile time вычисляемые константы и оператор assert
Что конечно не делает из них программистов
> Как то неубедительно.На мое частное мнение - это у них прикольно придумано.
> Конечно задачи задачам рознь, но видать я не те задачи решаю.
Вероятно.
> За кучу времени среднекровавенького костыльного энтерпрайза ни разу не понадобились какие-то
> "супер-дупер" сложные компайл-тайм вычисления, которые бы потом еще использовались как
> константы.Мы про системные яп или энтерпрайз? Энтерпрайз можно и на яве кодить, теперь попробуйте на этом керенл, бутлоадер или фирмварь. И как, офигенно? Если вебмакакятина упадет, что самое плохое будет? Пожурят? Депремируют? А даже упавший кернел уже не прикольно. Еще хуже если управляющая фирмварь упадет, там что угодно может быть. И упавший самолет, и взорвавшееся производство, да даже юзер гироскутера "лишь" разбивший морду будет злой.
> собственную ОС или сервер приложений - понадобится и оценю :)
Сабж сватается как типа-системный, и в этом контексте вон то имеет определенный смысл. Да и даже в апликушном коде нехило бы проверять что допущения удержались. С вон той фичой можно имхо попробовать это все в том же синтаксисе что и остальное.
> А вот тут становится очень интересно. Внешние параметры, которые в программу залетят
> в будущем из внешних источников, проверим при компиляции, а не в рантайме?Вот именно совсем внешние, типа сети или ADC все же пролетают. Но остальное можно хотя-бы кодить в том же виде что и остальной синтаксис. А не на каком-то левом субдиалекте.
> Экстрасенсы, шаманство и магия... Может, "Compile time вычисления как константы"
> отдельно, а "годные assert-like конструкции верифицирующие параметры" - отдельно, без
> связки слов?Возможность делать assert-like штуки стандартным синтаксисом ЯП с навороченой логикой так то языку не в минус. И для скорости порой полезно. И таки не прикольно когда написано 0x100500 а откуда взялось хрен знает, и можно ли там 0x100400 - а кто его знает? Дескать скачайте программу-генератор этой магии отдельно, очень удобно.
В современном C++ тоже есть compile time вычисления. И если в Zig они также с помощью сторонненего препроцессора, то никаких преимуществ. Препроцессоры зло.
создатель Zig(Andrew Kelley) не рассматривает C++ как хороший язык для написания программ, считая его слишком сложным и Zig это доработанный СИ.Zig не стремится вобрать в себя все функции C++ или конкурировать с ним.
Странно такое слышать учитывая, что тот же bun.sh работает во много раз быстрее и лучше node и deno написанного на Rust.
Качество кода проекта не зависит от языка.
Разумно ли сравнивать проекты исключительно по языкам, на которых они написаны?
Ну, было бы честно указать что в этом bun еще не работает...
А список там не маленький https://github.com/oven-sh/bun#not-implemented-yet
А можно поподробнее? Любопытен практический опыт.
Я не буду вдаваться в подробности, скажу только что язык экспериментальный. На нём категорически нельзя писать профессиональный софт на данный момент. На этом сравнение с Rust можно и закончить;)Для простых утилит command-line он и сейчас уже, скорее всего, сгодится. Но не более.
Вот ошибка лично моя - https://github.com/ziglang/zig/issues/10873. А сколько таких сейчас там? Тысячи.
Ещё есть ощущение что часть слизана с Rust. Как минимум они сталкиваются с такими же проблемами. Например pin/unpin структур - https://github.com/ziglang/zig/issues/7769. Ещё не сделано. Точно такая же проблема, с которой столкнулся Rust и был изобретён Pin/Unpin.
Концептуально язык очень интересный. Он не альтернатива Rust - альтернатива С.
И вот как замена С он очень интересный и гораздо лучше Сишки. Хотя я периодически ловил corrupted data - попорченные данные на стеке.
От этих ошибок язык не спасал (а я думаю мог бы). При том код был максимально аккуратно написан - просто сама семантика (структур в структурах и их layout) не всегда понятна. Я думал что структура должна была копироваться. Очень легко получить corrupted data.
Язык очень простой - учится базово буквально за несколько дней. Чтобы хоть что-то закоммитить в нормальный проект на Rust надо месяц его читать, включая RFC, async book, trait bounds, и т.д. и т.п.
Вот моя имплементация очереди и ring buffer для примера как выглядит код -
https://gist.github.com/likern/ac01b315434c68622f70cc0228863971
>>Вот ошибка лично моя - https://github.com/ziglang/zig/issues/10873. А сколько таких сейчас там? Тысячи.Там сейчас идет переписывания взаимодействия с llvm и таких ошибок будет очень много ближайшие год-два, до версии 1.0
>> И вот как замена С он очень интересный и гораздо лучше Сишки. Хотя я периодически ловил corrupted data - попорченные данные на стеке.
Если посмотреть выступления Andrew Kelley он везде и говорит про Zig как замену СИ в определенных местах.
Такие комментарии -- это причина, почему я до сих пор на опеннете. Спасибо за подробный ответ!
>Zig хуже Rust практически во всёмСогласен. Удивляет, что этот зиг везде предлагают, тогда как язык банальнейший, неидейный.
Чем меньше идей, тем меньше они путаются под ногами активно мешая сделать задуманное.
Он независим от корпораций и минималистичен, таким языком нельзя пользоваться. Линукс движется к переписыванию на Rust и переименовыванию на systemd. И собираться будет по несколько часов только на мощных серверах ведь на расте даже хеллоуворлд требует для сборки полгигабайта места, что уж говорить про ядро.
Мой старый ryzen неожиданно стал суперпоцессором наляту оптимиирующем код
раз смог "hello world" собрать меньше чем за секунду и каталог сборки занимает
всего несколько мегабайт, а если сделать strip бинарнику то и мегабайты превратяться в килобайты?
а если удалить весь кеш сборки?
И тишина...
А зачем его удалять?
> А зачем его удалять?Ну например мой привет мир 40 гб. По 20 гб на релиз/дебаг. Если каждый привет мир будет столько места занимать, никаких дисков не хватит.
У rust кеш компиляции зависимостей лежит в ~/.сargo
Любопытсва ради прошу привести хотя бы кратенько выжимку - чем оно лучше ржавого?
Гораздо проще устроен, быстрая компиляция и адекватный размер исполняемых файлов как в Си, удобная интеграция с кодом на Си и возможность использовать как удобный тулчейн для сборки него же под совершенно разные платформы (легко портировать хотя бы потому что аллокатор по дизайну на выбор для всего), вместо сложных макросов просто метапрограммирование на этапе компиляции. Вообще говоря Rust можно сравнить по сложности с C++, а Zig с C.
Ваш сраный Зиг семерочку не поддерживает.
> Ваш сраный Зиг семерочку не поддерживает.Да ее и майкрософт не поддержвивает уже. Быть круче майкрософта? А денег на это дадите?
поддерживает ESU до января 2023 года, немного осталось но тем не менее
> поддерживает ESU до января 2023 года, немного осталось но тем не менееОни это все за довольно отдельные бабки делают, а вон те полтора землекопа с чего должны это бесплатно делать?
>> поддерживает ESU до января 2023 года, немного осталось но тем не менее
> Они это все за довольно отдельные бабки делают, а вон те полтора
> землекопа с чего должны это бесплатно делать?это означает, что платформа хоть и за бабки, но всё еще поддерживается производителем и всё еще актуальна
А, так zig это распил? Ну, буду знать тогда.
> А, так zig это распил? Ну, буду знать тогда.Мне кажется что вы можете прислать им патч с поддержкой вашей семерки совершенно бесплатно. А забесплатно самим возякаться в сдохшей операционке желающих предсказуемо мало.
Zig не готов. В Rust уже делают strict provenance, авторы Zig же ещё даже не выучили это слово(попробуйте начти что-нибудь про pointer provenance в документации).
Zig может по толщине какашки определить размер животного? Нет? А rust может: https://crates.io/crates/coprosizeЕщё rust может дилдой управлять: https://crates.io/crates/buttplug
Нахрен кому нужен твой zig, если он не умеет всех этих полезнейших вещей делать?
Становится ясно зачем такой секурный язык был нужен. Не хотелось бы чтоб дилду на улице взломали. Это его предназначение.
думаете растоманы смогут написать так чтоб не взломали?
Вот это красивый наброс. Браво, маэстро!
Плюсую! учитесь, диванные анонимы. человек сначала погрузился в тему, откопал проекты. небось еще и в язык углубился - это не тебе не набросы типа - "азаза - смузихлебы, нишарят"
Да, для самотыка это важно, чтоб переполнения буферов не вышло.
> Уже есть Zig, лучше б его включили, Rust проржавел, конкуренты - лучшеВообще да, он поприкольнее сделан, и корпам ботинки не лижет. Однако в виде GCC-фронтэнда его все же нет, а мощный оптимизирующий бэкэнд с которым я на "эй ты, козел!" - это все же аргумент.
>Уже есть Zig, лучше б его включилиV, вроде, раньше появился. Соблюдайте очередь!
Я тоже немало удивлён. V гораздо больше шансов имеет, чем Zig. И это первое упоминание.
V это разводняк,который рано или поздно будет заброшен
> V это разводняк,который рано или поздно будет заброшенДа-да. Мы знаем способность кожанных мешков предсказывать будущее. Чемберлен после Мюнхенского сговора подтвердит.
Лишнее подтверждение того что LLVM намного более адекватный проект, чем GCC
Вы сделали этот вывод на основании логических умозаключений или просто фанатик?
он просто писатель фантаст
> Начало конца24-сантиметрового
ха ха, ну сейчас в сишников бомбанет, будут минусовать... вот только Линус Торвальдс тоже за включение раста в ядро
Торвальдсу вообще уже давно наплевать на ядро и что в нем будет.
Ничего хорошего не будет. Ядро с каждой версией всё сильнее превращается в bloatware. Давно пора задуматься о полном его переписывании с оглядкой на современные реалии, выкинув тонны legacy кода для древних экзотических архитектур, которые уже нафиг никому не нужны.
вопрос в том на каком языке программирования его переписывать, если мы хотим избавиться от legacy
Да хоть на паскале. Legacy это не про язык, это про поддержку всяких там PS/2 клав, архитектур типа i386, ISA шин, IDE контроллеров и прочего исторического железа, которое уже физически не существует в рабочем виде кроме единичных экземпляров.
Да чхать на это. Большинство из этого собирается с [n]. Проблема в том, что дистрибутивы сдуло в направлении переусложненных решений, которые требуют всякие cgroups, разные мандатные права, bpf, да даже lvm/raid сделан так, что пользоваться не хочется, но пользуешься, т.к. инфраструктура уже давно выстроена и устаканилась. Большинство из этой дичи - дань корпоративному сектору.
>> Legacy это не про язык, это про поддержку всяких там PS/2 клав, архитектур типа i386, ISA шин, IDE контроллеров и прочего исторического железа, которое уже физически не существует в рабочем виде кроме единичных экземпляров.Ну-ну... Особенно про PS/2 повеселило :).
А чем это мешает? Ну болтается оно там. Мы же, когда собираем под нужную нам архитектуру, не включаем это себе в образ.
> А чем это мешает? Ну болтается оно там. Мы же, когда собираем
> под нужную нам архитектуру, не включаем это себе в образ.Аполитично мыслишь, анон. То, чего нет -- сломаться не можешь.
PS/2 не трогай. Вообще, зря это стали убирать из новых материнок. Вот, пересели с PS/2 на USB и что? Теперь, когда падает USB драйвер или начинает глючить и его нужно прибить и запустить заново, что хоть редко, но бывает, одновременно под это залетает и USB-клава с которой идет управление. Офигенно удобно, да, повесим все на USB, чтобы выход был только через ребут. Идиотизм. Ладно если под рукой есть еще машина откуда можно по SSH зайти, а ее может и не быть.
Дед, на Core 2 Duo сидишь? Ещё скажи что DVD диски используешь 🤣
Смузихлёб, спок 🤣
Нужно говорить "поридж, спок"
Lenovo T содержат и то, и то. И они, перепрошитые на LibreBoot, одобрены FSF и ещё продаются.
> Дед, на Core 2 Duo сидишь? Ещё скажи что DVD диски используешьЧто, никогда не встречал ситуации когда системная фирмварь usb-клаву не подхватила? То что она где-то потом работает это круто, конечно. А если что-то пошло не так ДО того как ядро взлетит?
USB большой, фичастый, в дескрипторы много чего можно напихать. А фирмварь вам все же не generic кернел способный жрать "любой HID вообще". И чего там в фирмвари клавы вон те накодили - отдельный вопрос. В этом месте можно скушать свежее, теплое д@рьмецо при случае 🤣
А PS/2 что, он тупой, в нем ломаться нечему.
На макпуках какая usb-клава? Главное чтобы модно было, и посоны с района уважали. DVD не модно, сам SNM объявил.
> На макпуках какая usb-клава? Главное чтобы модно было, и посоны с района
> уважали. DVD не модно, сам SNM объявил.DVD я и сам не помню когда пользовался, а PS2 клавы таки есть. Более того, любая USB клава на самом деле dualmode и умеет быть PS2 клавой через тупой пассивный переходник являющий собой "кусок провода" по смыслу. Конечно он не конвертирует PS2 в USB, контроллер клавиатуры умеет и то и другое и определяет к чему его подцепили.
Поэтому при налете на вон то - доставем из кармана характерюую мелкую зеленую хрень, втыкаем клаву через нее в PS2, который, таки, есть даже на ультрасовременных мамках, и чтобы вот это не работало в фирмваре, бутлоадере и т.п. - не попадалось. А вот usb - иногда все же могет. Некоторые клавы вывешивают довольно странные дескрипторы, чему помогает не менее странные спеки где есть еще и упрощенный boot-time протокол, отдельный, но реализовать его некоторым кодерам фирмварей клав, видимо, впадлу - а полный HID со всеми прибабахами системная фирмварь может и не уметь.
У меня на X570 под Ryzen 5950X PS/2 порт есть =)
> выкинув тонны legacy кода для древних экзотических архитектур, которые уже нафиг никому не нужны.При этом, это тот же самый opennet, который воем кричит и требует свергать Линуса и всякого прочего Грега, когда из ядра удалят поддержку какой-нибудь замшелости, о которой даже и слышали-то полтора человека, не говоря уже про то, чтобы найти мейнтейнеров.
да, вот такой он, опеннет, всё-таки разный, раз тут прямо морды друг другу бьём
Плюрализьм мнений, как говаривал Михал Сергеевич Горбачёв. Что, в общем-то, лучше, чем строем шагать в ногу.
> Плюрализьм мнений, как говаривал Михал Сергеевич Горбачёв. Что, в общем-то, лучше, чем
> строем шагать в ногу.Шагать в ногу -- значит быть рядом со своими товарищами. В человеке должно быть всё прекрасно: и портянки, и почищенные сапоги, и портупея с наганом.
Ядро уже давным-давно пора переписать. С использованием наработок OpenBSD и вообще как микроядро с вынесением всего лишнего в юзерспейс.
> С использованием наработок OpenBSDТогда уж лучше Dragonfly BSD. Там ядро поинтереснее + офигенная ФС HAMMER
Чем там ядро интереснее?
Гибрид. Что-то можно и в юзерспейс вынести, наример, Direct Rendering Management, что-то и оставить, например, сеть.
> можно и в юзерспейс вынестиА как это делается? Есть что-нибудь почитать?
Сорцы старой версии XORG, вытворявшие дикое порно с PCI самолично. Но это будет отличный пример того КАК ДЕЛАТЬ НЕ НАДО БЫЛО. Кернел сильно лучше с железом работает на низком уровне.
> Гибрид. Что-то можно и в юзерспейс вынести, наример, Direct Rendering Management, что-то
> и оставить, например, сеть.Его в ядро внесли как раз потому что в юзерспейсе предсказуемости недостаточно. Да и тухлая это идея - пускать юзермод напрямую в железо. При этом и тайминги хреновые, т.к. юзермод не контролирует когда его ядро выпнет, и с точки зрения секурити это layering violation, одна из обязанностей ядра это монопольно арбитрировать на всю толпу задач работу с железками. А если какая задача сама туда лазит - как это арбитрировать вообще?!
Его дочь не просто так в заложники взяли, т.к. ему не пофиг.
Феминистки? Мне кажется, у него дочь идейная фемка.
Торвальдсу просто надоело ревьювить бесконечные PR и указывать из года в года на одни и те же тупые ошибки. А так он скажет "Я раст не знаю, ревьювьте сами" и всё - получит свой носок.
Скорее всего ему просто любопытно что из этой возни получится. А вдруг и что-то дельное?
Торвальдс в глаза знать не знает что такое этот раст, он занимается исключительно менеджментом и бизнес-процессами, полностью отойдя от кодинга лет двадцать как.
Наивные растоманы вас почитают и перестанут быть такими оторванными от реальности (нет)
Не, лет 20 назад быть не может. Он только в 2005-м Git запилил.
> исключительно менеджментом и бизнес-процессами, полностью отойдя от кодинга лет двадцать как.Вообще-то если его коммиты еще и читать, да и вообще хоть что-то в project management понимать, то можно узнать что крутой project manager должен уметь и сам шашкой помахать. Без этого он не будет котироваться в кодерской среде, что для PM'а фатально. PM это тот кто стыкует менеджмент с кодингом. Очень редкий вид архидьяволов, а Торвальдс самый крутой из них.
Так он указывал команде продвижения Раста в ядро что надо подправить. Значит знает.
А чего минусуем-то??? Все ж по делу сказаноо
Так бомбануло же.
> Язык Rust сфокусирован ......Да,да, да, даьше вы повторите свою любимую мантру. Большая часть текста новостей про вас, эта мантра.фанатики такие фанатики.
>> Язык Rust сфокусирован ......
> Да,да, да, даьше вы повторите свою любимую мантру.Кто эти вы и зачем ты процитировал кусок новости?
> Большая часть текста новостей про вас, эта мантра.фанатики такие фанатики.Большая часть комментов от вас. Бедолаги подгорельцы такие подгорельцы.
> Кто эти выНу тыж вылез.
>> Кто эти вы
>*повторный негодующий пук*Яснопонятно. Очередной Воен Супротив Раста воюет против полчищ воображаемых врагов.
Что ещё ожидать от растоманов
Я очень надеюсь, что бинарник компилятора будет называться grust.
Чтоб постоянно сыпать соль на рану?
на ржавую рану
Пропал калабуховский дом...
А как там компилятор для go поживает?
Уже не модный.
> Уже не модный.Я про gccgo
O'K, я именно им собираю гошные поделия со шитхаба.
> Уже не модный.gccgo нормально поживает. Но модным он никогда не был.
Иго раста надвигается!
Раст - это язык будущего!!1!
А в чём фичи у языка Rust, я так и не понял?
Как плюсы, только плохое компулятор не позволяет сделать.
Как плюсы говорите? А как там с наследованием?
Да, из всех ширико применимых языков - ржавый ближе всего к плюсам. Наследование если очень нужно - можно достигнуть через Deref(правда одинарное) но опыт подсказывает что композиция всегда лучше наследования
> А в чём фичи у языка Rust, я так и не понял?Rust - это Си с тайпклассами. Вместо Simula испытал влияние ML и Haskell.
Вот и я думаю, чего было Мурзилам не писать их Quantum на OCaml, NIH?
Не NIH a GC
Есть удобное ключевое слово unsafe за которым можно писать весь код.
Это очень удобное ключевое слово! Манера использования которого очень красноречиво говорит о программисте, который писал код. Насколько он ответственно подходит к своему делу. Достаточно взглянуть на то, использует ли он unsafe, и если использует, то как - и сразу становится понятно, стоит связываться с таким кодом или нет.
А еще есть прекрасное #![forbid(unsafe_code)], который позволит обезопасить свой код от ненужных применений unsafe.
> А еще есть прекрасное #![forbid(unsafe_code)], который позволит обезопасить свой код от
> ненужных применений unsafe.И как, много софта с этим собирается?
компилятор думает за "программиста"
Вот за си погромистов компилятор не думает!
Правда они тоже думают не сильно... и отстреливают себе ногу по самую ж очередным выходом за границы массива
¯\_(ツ)_/¯
> А в чём фичи у языка Rust, я так и не понял?Никто не понял. Синтаксис вырвиглазный -- понятно. Что за фичи -- нет.
Эх Анон, Анон, жаль что ты так ничего не понял. Ни про заимствования, ни про времена жизни. Еще и читать чужой код на расте ему сложно (ну разумеется, ты же его не знаешь)...Синтаксис вырвиглазный только для страдающих синдромом утенка. А для остальных - он читаемый и явный.
Особенно примеры фич в предыдущих новостях.
Читаемый, но не комфортно. Вот, ассемблер, для тех кто знает читаем, но не популярен в массах. Или ладно, Паскаль, очень читаем, но писать некомфортно и длинно, и где он сейчас? Вот.
Современный инструмент, помимо эффективности, должен быть удобен и приятен.
У раста стандарт на язык хоть существует то? Или тамошние хипстеры прямо в master ветку свои фичи коммитят? В этом случае gcc в жизнь не угонится за ними.
Стандарта нет за ненадобностью (а точнее вредностью).
Нужно сидеть в головах одновременно у всех кто разрабатывает язык?
> Нужно сидеть в головах одновременно у всех кто разрабатывает язык?В головах сидеть не нужно, нужно повторять референсный компилятор.
> В головах сидеть не нужно, нужно повторять референсный компилятор.Повторяешь поведение референсного компилятора, а потом выясняется, что это был баг и нужно опять переделывать. Очень эффективно.
> Повторяешь поведение референсного компилятора, а потом выясняется, что это был баг и
> нужно опять переделывать. Очень эффективно.Баги разрешаю не повторять, фиксить сразу.
> В головах сидеть не нужно, нужно повторять референсный компилятор.Паршивый подход к делу. На будущее запомним что warlock66613 продвигает гнусный вебмакакинг в хучшем виде. Впрочем, чего с warlock'ов взять, они те еще типы.
> Паршивый подход к делу.Забавное заявление на ресурсе, посвящённом в том числе Linux, который написан на нестандартном диалекте стандартизированного языка.
> Забавное заявление на ресурсе, посвящённом в том числе Linux, который написан на
> нестандартном диалекте стандартизированного языка.Маленький нюанс состоит в том что кернелы, бутлоадеры, фирмвари и тому подобное невозможно писать на целиком стандартном диалекте языка. Хотя-бы потому что они не дают подный контроль над лэйаутом бинаря и структурой памяти. В сях ступили, сделали в C99 freestanding но вон те моменты регламентировать в стандарте почему-то не стали. Ну их все и оформляют левыми расширениями.
И кстати switch..case с диапазоном значений - тоже можно было бы из гнутых расширений в стандарт затолкать. Нормальная фича, между прочим, делающая некоторый код сильно компактнее и элегантнее.
А в сабже можно, например, функцию или переменную в конкретную секцию положить стандартным для яп способом, коли он такой офигеть системный? Или опять какая-нибудь порнография с линкером и не описанными с RFC и прочих типа-стандартах расширениями, костылями и прочим? :) А, еще можно асм поюзать, как редоксеры всякие, но так даже паскакаль типа системный. Да даже васик наверное, если в нем это можно.
Ну тогда развитие Раста определяется сегодня левой пяткой этого разработчика, завтра правой другого.
> Ну тогда развитие Раста определяется сегодня левой пяткой этого разработчика, завтра правой
> другого.Откуда такой вывод и как он связан с наличием или отсутствием стандарта? Вот на Паскаль в своё время был стандарт. Кем определилось развитие этого языка?
Как, как. Приперся воланд^W борланд, стал хреначить свое, ни с чем не совместимое. А остальные вообще не поняли зачем это надо. Борланд постепенно тоже слился. Паскаль нормально как обучалка, но вот софт на нем писать... ну во первых в какихнибудь дельфях его так изгадили что он изначальный понт продолбал, став вместо предсказуемого надежного тула генератором наколени, где хорошие свойства яп всем пофиг, формошлепов уж точно не те аспекты интересовали. Да и надежность их хреноты, игнорящей отвал сети, валящейся с "run-time error 200" и "access violation" и прочими приколами давно стала легендой.Потом оказалось что вебмакачить можно и пожестче, порапиднее, формошлепов задвинули на второй план. Недобитые остатки до сих пор где-то бродят.
История с системдой повторяется.
Тут глубже
Вижу в комментариях собралось очень много профессиональных программистов.
Объясните, пожалуйста, каким критериям должен соответствовать язык для настоящих программистов? Чем плох rust?
Какой язык стоит учить если я хочу стать настоящим программистом, а не макакой? Почему?
Человечий. Программисты - рабы корпораций, тянущие лямку вдоль вырытого не ими канала, т.е макаки по определению, не важно на каком языке они пишут. Лучше научиться программировать программистов на добычу тебе бабосиков.
Вообще-то продвинутые системщики являются чем угодно кроме рабов. А корпорации готовы глотки друг другу передрать охотясь за штучным зверем иной раз.
Хороший мем.
> Вообще-то продвинутые системщики являются чем угодно кроме рабов. А корпорации готовы глотки
> друг другу передрать охотясь за штучным зверем иной раз.Это касается вообще любых штучных специалистов: врачей, конструкторов, да хоть футболистов. Только таких крутых программистов дай бог сотни на весь мир, а остальные пишут истории "как я не попал в Эппл/Гугл/Конторанейм".
Есть мнение, что программистами на пенсию не уходят. Всех кого знал из своих знакомых (разработчики с опытом 20+ лет) ушли кто в торговлю, кто в производство, кто в бизнес не связанный с IT. Программирование это всё же удел молодых (до 30 лет), потом уже появляются семьи и прочие бытовые проблемы, некогда учить очередные фреймворки.
Видимо будет откровением, но множество программеров фреймворки в глаза не видели.
> Видимо будет откровением, но множество хеллоувордщиков фреймворки в глаза не видели.Фиксанул, не благодари
> это всё же удел молодых (до 30 лет), потом уже появляются
> семьи и прочие бытовые проблемы, некогда учить очередные фреймворки.А я видел чела который в свои 65 кодил как огурчик, и когда такой опыт совмещается с мозгом который не отсох, это невероятно крутое комбо. Конечно он не учил каждый день по фреймворку, но это не мешало обставлять в кодинге хипстоту как котят, избегая 95% тупых ошибок вон тех красав.
И пока красавы с фреймворком ипутся дебажа мегафреймворк, в котором они ни в зуб ногой, т.к. только вчера его "выучили" - у этого уже два раза все работает, идеально, без багов, юниттестами прочекано, резвенькое. клевое, и он вообще уже наворачивает следующий проект, пока те лохи просят дедлайн подвинуть. А, дедлайны он тоже конечно в 20 раз реалистичнее считает и не продалбывается, уже зная что он может и сколько это займет. Конечно такой не должен остаться ломовой лошадью. Это будет минимум синьор, а скорее тимлид если еще не PM, если он хотя-бы наполовину так крут как это можно ожидать.
js учи, потом спасибо скажешь
Любой интерпретируемый язык подразумевает макакинг в т.ч. и JS. Ну за редким исключением типа data scientist'ов на пайтоне и сисадминов с их баш-партянками.
> Любой интерпретируемый язык подразумевает макакинг в т.ч. и JSУчи typescript, потом спасибо скажешь.
Typescript - костыльный язык. Лучше Раста и Хаскеля сейчас языков нет и близко.
> Лучше Раста и Хаскеля сейчас языков нет и близко.А почему на лучших языках вакансий нет и близко?
Почему на лучшем расте за 11 лет ничего толкового не написали?
>> Лучше Раста и Хаскеля сейчас языков нет и близко.
> А почему на лучших языках вакансий нет и близко?Хаскель реально академичный, в одном ряду с LISP'ом или APL'ом. А раст натурально ещё молодой. Питону вон 20 лет потребовалось, прежде чем распробовали
> Почему на лучшем расте за 11 лет ничего толкового не написали?
А что считать толковым? Про всё что угодно можно сказать "недостаточно круто".
Файрфокс частично на расте с 2018 года, среднее количество CVE в год упало с 2019 где-то на треть. Но всегда можно сказать, что файрфокс говно и вообще не целиком на rust и не считается
Дискорд, Майкрософт, Фейсбук отчитываются о замене мелких сервисов на раст и в отсчётах их всё устраивает. Но всегда можно сказать, что это мелкие приблуды и вообще кто их знает, может они заменили говнокод Go на идеально выверенный код на Rust, не считается.
ripgrep работает значительно быстрее классического grep, vscode использует для поиска именно его. Но это мелкая утилита и даже без GUI, не считается.
Делают опциональной частью Linux, но это просто Торвальдсу лень код читать и корпорасты настаивают так что политика и не считается.
Так можно долго продолжать.
Ждать в ближайшие годы проекты уровня Линукс(1991 год), Хром(2008 год) или Блендер (1998 год) не стоит. 11 лет назад Rust был реально очередным ненужным языком со сборкой мусора. Всё стало интереснее только когда от неё избавились. Реально о нём заорали из всех щелей меньше пяти лет назад.
Начинать делать свой игровой движок с нуля дураки есть (Fyrox), но их не хватит, чтобы за пять лет стать конкурентом хотя бы Godot(2007), не то что Unreal с Unity.Если взять за пример Redox OS, то выходит, что кучка энтузиастов смогла сделать ОС с графическим интерфейсом, да ещё и запускаемом на реальном железе, с 2015 по 2019 год. Как по мне, это говорит сильно в пользу языка.
> Файрфокс частично на расте с 2018 года, среднее количество CVE в год
> упало с 2019 где-то на треть. Но всегда можно сказать, что
> файрфокс говно и вообще не целиком на rust и не считаетсяЧастично? Какой процент? А какой на с++? Почему тогда не трезвонить, что с++ отличный язык? На новый стандарт они тоже перешли? Может еще улучшили санитайзеры или фаззинг помог? Вывод тут один: говорить, что это из-за раста без исследований - просто ложь и попытка выдать желаемое за действительное.
> Дискорд, Майкрософт, Фейсбук отчитываются о замене мелких сервисов на раст и в
> отсчётах их всё устраивает. Но всегда можно сказать, что это мелкие
> приблуды и вообще кто их знает, может они заменили говнокод Go
> на идеально выверенный код на Rust, не считается.Эти переписывания вообще забавляют. Это как uber перешел с postgres на mysql и сказал, что все быстрее или как dropbox когда-то переписали js на coffeescript (да-да) и сказали, что когда сильно стало меньше.
> Так можно долго продолжать.
Долго продолжать что? Ничего толкового так и нет.
> Ждать в ближайшие годы проекты уровня Линукс(1991 год), Хром(2008 год) или Блендер
> (1998 год) не стоит. 11 лет назад Rust был реально очередным
> ненужным языком со сборкой мусора. Всё стало интереснее только когда от
> неё избавились. Реально о нём заорали из всех щелей меньше пяти
> лет назад.
> Начинать делать свой игровой движок с нуля дураки есть (Fyrox), но их
> не хватит, чтобы за пять лет стать конкурентом хотя бы Godot(2007),
> не то что Unreal с Unity.Зачем тут эти мысли вслух и экскурс в историю? с++ до 11 стандарта тоже был не айс, но ведь писали софт и еще какой (сколько игр написано на нем) и никто не кричал из каждого утюга как сейчас.
> Если взять за пример Redox OS, то выходит, что кучка энтузиастов смогла
> сделать ОС с графическим интерфейсом, да ещё и запускаемом на реальном
> железе, с 2015 по 2019 год. Как по мне, это говорит
> сильно в пользу языка.Ты, наверное, пишешь это из под redox на реальном железе?
Бинго смузихлёбства.
typescript такой же интерпретируемый язык как и javascript. У него есть опциональная статическая типизация, но она легко обходится оператором as и типом any. К тому статическая типизация работает только во время компиляции без проверок во время выполнения.
> typescript такой же интерпретируемый язык как и javascript. У него есть опциональная
> статическая типизация, но она легко обходится оператором as и типом any.Играй по правилам. В любом языке со статической типизацией можно найти лазейки и делать как не надо.
> К тому статическая типизация работает только во время компиляции без проверок
> во время выполнения.Эмм... ну так и задумывалось.
any такая же часть языка работающая в строгом режиме typescript как и любая другая.
any это и есть по правилам.
class Server {
tryToChargeForServerAndSetStatus(obj: any, p: any, b: any): any {
obj.ololo.doSomethingStrange(b, p);
// lots of nested methods calls.
return obj.result;
}
}
>В любом языке со статической типизацией можно найти лазейки и делать как не надо.any это не лазейка, статическая типизация в typescript опциональная. Если помучаться её можно использовать. Если коллега не захотел он будет везде шлепать any, зато задача закрыта в 3 раза быстрее
> Если коллега не захотел он будет везде шлепать any, зато задача закрыта в 3 раза быстрееЭто человеческая проблема и должна решаться на уровне ваших соглашений в команде: закрепить стиль кодирования, добавить в линтер правило no-explicit-any из typescript-eslint и комитить только через CI. Если коллега не принимает соглашения команды, то наверное ему стоит поискать другую.
> any такая же часть языка работающая в строгом режиме typescript как и любая другая.Да, но повсеместное использование any - плохой тон (какой вообще тогда смысл в типизации, если ее явно не ипользовать?). Точно также в других языках есть опеределенные фичи, которые иногда нужно и корректно исплользовать, но не означает, что нужно использовать везде.
> У него есть опциональная статическая типизация, но она легко обходится оператором as и типом any.Точно также безопасность раста легко обходится использованием unsafe. Бездумное использование unsafe (как и бездумное использование as any) - это показатель.
> Точно также безопасность раста легко обходится использованием unsafe. Бездумное использование
> unsafe (как и бездумное использование as any) - это показатель.А вон там анон показал как это зарубить, если это проблема. Слабо так же в тайпскрипте? :) Вообще, запихать тайпскрипт и хруст в одну нишу может только полнейшая вебмакака.
> Слабо так же в тайпскрипте?Выше уже сказал про no-implicit-any.
> Вообще, запихать тайпскрипт и хруст в одну нишу может только полнейшая вебмакака.
Где ты одну нишу увидел? Ты просто обкакался и пытаешься выкрутиться.
> Выше уже сказал про no-implicit-any.Это где? Тут на всю ветку есть одно слово "implicit" в процитированом посте.
> Где ты одну нишу увидел? Ты просто обкакался и пытаешься выкрутиться.
Я вообще другой анон, баклан.
>> Выше уже сказал про no-implicit-any.
> Это где? Тут на всю ветку есть одно слово "implicit" в процитированом
> посте.https://www.opennet.me/openforum/vsluhforumID3/127971.html#243
Сразу видно, что тред не читал, но мнение имеешь.
>> Где ты одну нишу увидел? Ты просто обкакался и пытаешься выкрутиться.
> Я вообще другой анон, баклан.Это ты представляешься так? Ну штош, баклан, тебе бы следовало тред для начала прочесть и увидеть, что раст был выбран по причине высказывания https://www.opennet.me/openforum/vsluhforumID3/127971.html#141
Но ты не удосужился этого сделать, увидел знакомые слова, стриггерился и побежал брызгать слюной. Так победишь.
> https://www.opennet.me/openforum/vsluhforumID3/127971.html#243
> Сразу видно, что тред не читал, но мнение имеешь.Т.е. ты режим д@била решил врубить по полной? Окей, сейчас я тебе помогу немного обгадиться до конца.
Ctrl+F -> implicit -> ??? (находит только вот тут). А, ты такое эпичное дно что назвал одну фичу ДВУМЯ РАЗНЫМИ СЛОВАМИ В 2 РАЗНЫХ ПОСТАХ? Английская языка такая сложная, implicit, explicit, разбери их там. Знаешь в чем нюанс? А ведь ты спалился что ни разу в жизни эту фичу походу не использовал. И чего тогда стоит твой спич про нее и best practices?!
> Это ты представляешься так? Ну штош, баклан, тебе бы следовало тред для
> начала прочесть и увидеть, что раст был выбран по причине высказывания
> https://www.opennet.me/openforum/vsluhforumID3/127971.html#141А что, я почитал это и согласен с тем что тайпскрипт это горбатый костыль. Он вообще почти не является самостоятельным яп, так, костыль для яваскрипта. ЧСХ твой бред выше показал насколько офигенно это с вебмакаками работает. Хрустик, кстати, в отличие от тебя - знал как пишется эта волшебная абракадабра в его ЯПе и не облажался так как ты. Смотрите дети, разница между хрустиком и вебманки - это вот так.
> Но ты не удосужился этого сделать, увидел знакомые слова, стриггерился и побежал
> брызгать слюной. Так победишь.Я в основном стриггерился с того что ты даже аргументировать нормально не способен без эпичной лажи. Пля, ты даже сам не знаешь как название продвигаемой тобой мегафичи правильно пишешь.
- Вопрос на три: какого цвета наш учебник?!
- Во валит, гад!!!
Ахахаха. Выдыхай.> А ведь ты спалился что ни разу в жизни эту фичу походу не использовал. И чего тогда стоит твой спич про нее и best practices?!
Я тебе еще раз говорю, перечитай тред и может поймешь свою тупость. Сейчас ради анонима буду помнить implicit или explicit. Ты в своем уме? Все правила линтеров запоминаешь? Главное что такое правило есть и найти его труда не составит.
> Я в основном стриггерился с того что ты даже аргументировать нормально не способен без эпичной лажи. Пля, ты даже сам не знаешь как название продвигаемой тобой мегафичи правильно пишешь.
Мне вообще плевать тс или раст. Для меня язык - инструмент и я за объективность, а объективность тут одна: any иногда нужен, но использовать его везде и говорить, что в этом виноват язык - просто тупость. Сделай милость, не заставляй меня больше возвращаться к этому вопросу.
> Ctrl+F -> implicit -> ??? (находит только вот тут)А вот тут мы видим индивидуума, который неспособен прочитать немного текста, а использует поиск для того, чтобы разобраться и орет, когда не получается. Не зря говорят, что современные дети не способны воспринимать иерархическую структуру, пихают все файлы в одно место, а потом пользуются поиском, чтобы что-то найти.
>data scientist'ов на пайтоне
>data scientist'ов
>на пайтонеЛицо этих data scientist'ов представили?
>Любой интерпретируемый язык подразумевает макакинг
Нет.
> Лицо этих data scientist'ов представили?Это они просто еще не слышали как их дата саентологами
называют...
> Какой язык стоит учить если я хочу стать настоящим программистом, а не макакой? Почему?Выучить язык (т.е. синтаксис) - это самое простое что тебе придётся сделать. Трудности будут когда начнешь изучать системы сборки, системы контроля версий, системы управления пакетами и зависимостями, шаблоны проектирования, алгоритмы, фреймворки, библиотеки. Может ну его нафиг это программирование? Сейчас сверщики куда более востребованы, причем даже зарубежом. Кореш в Канаду уехал 2 мес назад, правда у него разряд самый высокий, но это дело наживное.
И да, самое главное - нужно быть поистине увлечённым человеком, для которого перманентное изучение очередного фреймворка будет в кайф даже в выходные и отпуск. Лично я из-за этого и уволился - перегорел. Ушёл в торговлю и не жалею.
вы молодец, даже Линус Торвальдс ушел в менеджмент... с проганьем все в РФ понятно, либо драйвера для китайских микроконтроллеров на Си, либо в банк поддерживать систему на Java.ну и www на PHP/js ... больше нет ничего
Самая типичная ситуация. Уже не программист (или никогда им не был как Фрактал или КвертиРег), а мнение по поводу необходимости раста имеет.
Кстати изучение фреймворка в выходные это и есть причина. Если ты в обычное время не можешь его изучить лучше и не начинать было. А выходные для отдыха.
В обычное это когда? В рабочее когда работать надо, а не фреймворки учить или после работы?
> В обычное это когда? В рабочее когда работать надо, а не фреймворки
> учить или после работы?Непрерывное самообучение -- это неотъемлемая часть работы программиста. Это делается в рабочее время.
> Это делается в рабочее время.Удачи найти такого работодателя, особенно на постсоветском пространстве.
>> Это делается в рабочее время.
> Удачи найти такого работодателя, особенно на постсоветском пространстве.Всмысле?
> Трудности будут когда начнешь изучать системы сборки, системы контроля версий, системы управления пакетами и зависимостями, шаблоны проектирования, алгоритмы, фреймворки, библиотеки.
Вот с этим вот всем разработчик непрерывно сталкивается во время своей работы. В какое, если не рабочее время ему решать эти проблемы? Делаешь задачу -> используешь либу -> нашел в ней проблему -> начал разбираться. Это типичный рабочий процесс.
Типичный рабочий процесс это сидеть и строчить код. Попробуй только намекнуть, что ты не знаком с какой-то там библиотекой и не дай Бог работодатель увидит что ты сидишь читаешь документацию дни напролёт не написав ни строчки кода.
Какая у тебя выборка (сколько работодателей)?
И какой город.
Самый сок, когда на ежедневном митинге тебя спросят что ты сделал, а ты ответишь: читал документацию! В лучшем случае не заплатят за эти дни, в худшем - пинок под зад, ведь завтра на твоё место будет толпа человек 20-30. Это реалии.
> толпа человек 20-30Фантазии мфективных менеджеров, на практике после ухода специалиста взять либо некого, либо новенькие не тянут. Так что толпа то она толпа, да вот кроме питона они ничего не знают.
> после ухода специалистаНу так речь скорее всего о джуне, который пришел в компанию 1 день назад. Специалисты ценятся даже в РФ.
Речь не о джуне речь о тебе. Если тебя так легко заменить и тебе надо трайхардить чтобы просто задержаться на месте то проблема скорее всего реально была в тебе.
Сам то понял что написал?
> Самый сок, когда на ежедневном митинге тебя спросят что ты сделал, а
> ты ответишь: читал документацию!Вообще-то это совершенно нормальный ответ. Адекватные фирмачи, которым не пофиг на будущее фирмы и владение актуальным state of art - могут даже на какую-нибудь тематическую конференцию послать на несколько дней. Оплатив расходы. Конечно с условием что ездок приобретенные знания, конечно, остальным донесет.
> завтра на твоё место будет толпа человек 20-30. Это реалии.
Suxx to be you, анон. Этак тебя вообще скоро copilot заменит и ты вместе с 30 тех лузеров пойдете на мороз в пользу подписки на копилота.
> Самый сок, когда на ежедневном митинге тебя спросят что ты сделал, а
> ты ответишь: читал документацию! В лучшем случае не заплатят за эти
> дни, в худшем - пинок под зад, ведь завтра на твоё
> место будет толпа человек 20-30. Это реалии.Это просто бред.
Зачем ты бьёшь по больному местных диванных экспертов, которые ничего большего чем хеллоуворлд не написали за всю жизнь. Они думают, что работодатель их примет с объятиями без опыта коммерческой разработки и будет держаться за них до последнего, как за самых незаменимых макак :)
Это только если ты сам себя не уважаешь. Как минимум работать в такой компании. Особенно если это какой-то гос. Так действительно может быть то что ты описываешь.
> Это только если ты сам себя не уважаешьПонимаю, что рушится твой манямирок, но это реальность для джунов без опыта. На вайтишных курсах тебе этого конечно не расскажут 😀 так что слушай умного дядю.
Скорее, это старый лузер дает краш-курс как стать таким же лузером. Ничерта не представляющим собой как кодер, работающим в дно-шараге, с мерзким орущим шефом, унылыми проектами, отсталыми технологиями и еще какими-нибудь атрибутами "светлого будущего".А мне почему-то видится что жизнь бывает сильно приятнее, когда все это удастся сделать иначе. К чему и рекомендую джунам стремиться. В жизни как: сколько прав себе назначишь - столько и поюзаешь. Ничто так не нагибает карьеру и скиллы как лузерский настрой сразу на старте.
> Типичный рабочий процесс это сидеть и строчить код. Попробуй только намекнуть, что
> ты не знаком с какой-то там библиотекой и не дай Бог
> работодатель увидит что ты сидишь читаешь документацию дни напролёт не написав
> ни строчки кода.Может они еще за кол-во кода должны платить?
> Типичный рабочий процесс это сидеть и строчить код. Попробуй только намекнуть, что
> ты не знаком с какой-то там библиотекой и не дай Бог
> работодатель увидит что ты сидишь читаешь документацию дни напролёт не написав
> ни строчки кода.Торгаш рассуждает о рабочих процессах. Ну если ты был рабом на галерах, то это только твои проблемы.
Ты в нормальной компании то и не работал никогда. Оно и понятно что ты быстро свинтил. Странно чего такого ты еще ждал. С другой стороны хорошо что всё таки решился свалить это было правильно.
>> Это делается в рабочее время.
> Удачи найти такого работодателя, особенно на постсоветском пространстве.Причём тут "удачи найти на постсоветском пространстве"? Как там дела обстоят у работодателя на постсоветском пространстве -- я знаю. Но это никак не отменяет факта необходимости непрерывного обучения программиста, как часть его работы. В этом смысле на постсоветском пространстве полно тупых хапуг. Работодателей нет. И эта тупость, порождающая жадность приведёт этих хапуг к победе в дарвиновской олимпиаде. Если хапуги на столько тупые, что они этого не могут понять -- туда им и дорога. Но самого факта текущее положение вещей (ещё раз) -- совершенно не отменяет.
> Какой язык стоит учить если я хочу стать настоящим программистом, а не
> макакой? Почему?Ассемблер, чтобы увидеть как машина изнутри работает. Паскаль, чтобы понять как програмить правильно. Хоть он и долбаный зануда. Потом можно сишку, если зайдет то и плюсы, раст, зиг наконец. Немного JS чтобы вебню патчить, баш для мелкой автоматизации... ну, как, всегда гвоздить одним и тем же молотком независимо от размера гвоздя может и не быть удобно. Скажем, попробуйте вообще в браузере Rust выполнить? При сильном желании это можно, WASM'ом, но пару полей формочки с емылом так проверять? Там производительность не надо, тормозить нечему даже если это будет без JIT, возня себя не оправдает.
>Скажем, попробуйте вообще в браузере Rust выполнить?У вас слабые теоретические знания по парадигмам программирования. ЖабаСкрипт - это интерпретируемый язык, синтаксис языка работает с ДокуметОбъектМодель, который реализован внутри виртуальной машины под названием Интернет-браузер.
Раст - это компилируемый язык, программист Раста работает напрямую с оперативной памятью компьютера.
>баш для мелкой автоматизации
Патрик при помощи баша и GNU sed делает целый дистрибутив. Всё завиит от человека, если челове сам по себе мелкий, то такой человек может делать на баше только мелкие вещи.
>>Скажем, попробуйте вообще в браузере Rust выполнить?
> У вас слабые теоретические знания по парадигмам программирования. ЖабаСкрипт - это интерпретируемый
> язык, синтаксис языка работает с ДокуметОбъектМодель, который реализован внутри виртуальной
> машины под названием Интернет-браузер.
> Раст - это компилируемый язык, программист Раста работает напрямую с оперативной памятью
> компьютера.У Вас в голове полнейшая каша. Существует наверное с десяток интерпретаторов языка Си. А для машинного кода написано столько интерпретаторов, что для них придуманы особые названия: эмулятор процессора, виртуальная машина. Как и ВМ для JS исполняет не текст, а байт-код виртуального процессора (а для ускорения может его и скомпилировать).
>>баш для мелкой автоматизации
> Патрик при помощи баша и GNU sed делает целый дистрибутив. Всё завиит
> от человека, если челове сам по себе мелкий, то такой человек
> может делать на баше только мелкие вещи.Патрик при этом знает всё вышеперечисленное, вот и пошутил.
Можно даже из js сделать байткод и отдавать его вместо js текста. Обещают выигрыш до трети попугаев, но и проблем совместимости они огребают.
Не можно - а сделано. React Native так и работает. Он как я понял умеет выполнять только байт-код (как минимум в release mode), который получается из JavaScript во время сборки проекта.
> Существует наверное с десяток интерпретаторов языка Си.Существует (существовала) даже аппаратная реализация Си.
PDP ?
>>Скажем, попробуйте вообще в браузере Rust выполнить?
>У вас слабые теоретические знания по парадигмам программирования. ЖабаСкрипт - это интерпретируемый язык, синтаксис языка работает с ДокуметОбъектМодель,
> который реализован внутри виртуальной машины под названием Интернет-браузер.
> Раст - это компилируемый язык, программист Раста работает напрямую с оперативной памятью компьютера.Вы отстали от жизни (в лучшем случае, мягко говоря). Существует куча фигни, которая позволяет тебе языки, далекие от веба (те же Си/С++ и Раст) компилировать во что-то, что выполняется в браузере. Уже давным-давно, в далекой-далекой гала... короче, сишный квейк, компильнутый (транспилированный?) в яваскрипт, запускали в браузере. Уже все пошли дальше. Например, с помощью LLVM кучку языков компилируют в WebAssembly, который выполняется потом в браузере (и это уже тоже старые решения). Фреймворков на не-JS/TS языках появилось. Что-то может и DOM "растом дергать" и интероперабельность с яваскриптом там есть и прочее и прочее...
Вот некоторые библиотек на "расте для веба", компилируются в WebAssembly и взаимодействуют с яваскриптом, когда нужно, но прикладухи ты пишешь на расте:
seed
(Seed is a Rust front-end framework for creating fast and reliable web apps with an Elm-like architecture.)
https://github.com/seed-rs/seedPercy
(Build frontend browser apps with Rust + WebAssembly. Supports server side rendering)
https://github.com/chinedufn/percyYew
(Yew is a modern Rust framework for creating multi-threaded front-end web apps using WebAssembly)
https://yew.rs/Sycamore
(Sycamore is a reactive library for creating web apps in Rust and WebAssembly.)
https://github.com/sycamore-rs/sycamore
> У вас слабые теоретические знания по парадигмам программирования.
> ЖабаСкрипт - это интерпретируемый язык, синтаксис языка работает с
> ДокуметОбъектМодель, который реализован внутри виртуальной машины под
> названием Интернет-браузер.Спасибо капитан очевидность. А почему вы думали что я не в курсе? Но если уж придираться, JS нынче зачастую JIT'ится и это не совсем то же самое что интерпретация уже.
> Раст - это компилируемый язык, программист Раста работает напрямую с оперативной памятью
> компьютера.А еще в этом вашем браузере есть такая забавная штука как WASM. И таки в ЭТО можно собрать программу на и си, и на расте, да даже на (довольно специфичном) асме. Конечно, опкоды и адресация памяти станут немного абстрактнее, но работать все же будет. И даже IIRC имеет какие-то интерфейсы к яваскрипту.
> Патрик при помощи баша и GNU sed делает целый дистрибутив.
Да мало ли странных людей на планете, сбивающих автомобилями вертолеты. Не означает что автомобиль офигенное ПВО в общем случае.
> Всё завиит от человека, если челове сам по себе мелкий, то такой человек
> может делать на баше только мелкие вещи.Просто баш сам по себе структурально не создан для больших проектов. Верификация кода слабая, типизации нет, поэтому глюки и баги в большом проекте могут и задолбать. Особо умным прилетает потом какой-нибудь хитрый отлуп с DHCP серванта, немного получающий рут на их компе, потому что баш сильно умный и не делался под сильную секурити с допущением что ремота имеет существенный контроль над данными. Парсить untrusted input башем - ну не то чтобы нельзя, но эскейпинг без вулнов на баше это такая порнография, скажу я вам... а без этого можно это месиво жесточайше поиметь немного кастомными входными данными, ололо =)
> Вижу в комментариях собралось очень много профессиональных программистов.
> Объясните, пожалуйста, каким критериям должен соответствовать язык для настоящих программистов?
> Чем плох rust?
> Какой язык стоит учить если я хочу стать настоящим программистом, а не
> макакой? Почему?Главный критерий прикладного языка: код пишется 1 раз, и читается -- 50. Гошечка, в этом смысле -- очень норм. Но не выполняет второй критерий.
Второй критерий (системный язык): язык должен предоставлять абстракцию виртуальной машины и полностью скрывать реальное железо, позволяет при этом написать ОС. Этот критерий кратно повышает возможность переноса софта с платформы на платформу. Понятно, полностью абстрагироваться от железа не выйдет, но ослабить эту связь на 99.5% -- это будет отлично.
Третий критерий: маленький компактный язык. Здесь Го худо-бедно соответствует. Он достаточно небольшой (в последней редакции уже далеко не так), изучить его механически можно за месяц, понять -- нужно несколько лет, увы.
Раст крайне запутанный язык, как в синтаксисе, так и в базовых типах и тем более -- в понимании идиом. Читать чужой код ну просто невозможно.
Раст, предоставляя некоторую абстракцию виртуальной машины даёт сплошные протечки. Для него это нормально -- потому что он плотно слипся с кодом на СИ, который в свою очередь разворачивает программиста в сторону железа, чуть больше, чем полностью. Теоретически, Си переносим. Практически -- это сплошная попоболь. Почему Раст наследует практически все эти родовые уродства без какой-либо перспективы исправления.
Язык не надо учить, чтобы стать настоящим программистом. Надо изучать программирование. А оно -- концептуально на порядок выше, чем 99.5% языков программирования. Научишься программировать -- в любом языке ты будешь влёт видеть недостатки языка. Сначала в голове систематизируй классификацию языков. Укладывая в эту классификацию очередной язык -- ты будешь знать о нём 90% главных характеристик.
Я вполне сознательно выбрал Го. Потому что это -- испорченный Оберон (* имхо, лучший язык программирования *). Соперничество Оберону может составить только Компонентный Паскаль. Первый больше для системщины, второй -- идеален для прикладнухи. В чём-то V лучше Go, но V пока слишком зелен, но я уже вижу в V попытку исправить Go, уже допущены концептуальные ошибки (потому что авторы тупо не поняли почему Го сделан так, как сделан). И это ещё большее отклонение от Оберона, что как по мне -- так тоска печаль.
И обязательный компонент хорошего супа: учиться, учиться и ещё раз учиться, как завещал великий Ленин. Ну. и такие столпы современности, как Никлаус Вирт, Стив Макконел, Фред Брукс, Мартин Фаулер, Кент Бек -- обязательны к прочтению и перепрочтению. Инструменты типа git -- обязательны к использованию. Обязательно участвовать в коллективной разработке, делать запросы на слияние -- почувствовать вкус коллективной разработки (на сколько это больно и противно).
Программировать каждый день, хотя бы по 30 мин -- само собой.
Каких-то 3-5 лет -- и опыт будет уже вполне достаточный, чтобы пойти джуном куда-нибудь.
Ещё проще: HTDP, "Как проектировать программы". Легендарная по своей сути книжка, (хотя и гораздо слабее SICP) наконец-то переведена издательством ДМК. Так ведь издатели и до "The Unix-Haters Handbook" доберутся, редиски этакие.
Assembly, Scheme, Scala/Clojure, Erlang/Elixir, Haskell. OOP в принципе не настолько хорошая вещь как про него думают. Смысла тратить времени особо нет. Но для понимания общих принципов нужно. Но если учить скалу/кложур, то и джаву придётся знать. На плюсы время не трать и не слушай "русских программистов", которые за них топят.
"Настоящих программистов" не существует. Если ты хочешь работать в этой сфере, смотри по вакансиям, какие языки востребованы. В РФ это (предположу) C#, js+php (web), может быть си. Рынок труда очень кривой.Есть фундаментальное образование (университеты, колледжи), там научат всякому, не только языку. Есть курсы, если кодер закончил курсы по языку, но не знает как работает операционная система - то он и есть макака. Кроме языка нужно знать много всего сопутствующего.
Из классических языков неплохой вариант для начала тот же паскаль, подойдёт для обучения и для небольших проектов. Ещё можно посмотреть на C#, тоже неплохой вариант для начала, но уже с нюансами.
>не макакой
Любого кодера можно назвать макакой, сфера ИТ очень токсичная.
>Чем плох rust?
Тем, что это мем, а не язык программирования.
О, брат анон хорошо напомнил, ещё go есть, тоже неплох, говорят.
Здесь почти нет профессиональных программистов. Здесь есть куча фриков, луддитов и чрезвычайно политизированных околоайтишников, в основном. Беги отсюда.Раст ничем не плох, но учить стоит не один язык, и начинать будущему "настоящему программисту" стоит не с языка, а с алгоритмов. Для этого же прекрасно подойдет, например, Пайтон. Затем стоит изучить что-то относительно низкоуровневое - С / С++, в том числе и для того, чтобы иметь возможность сравнивать их с Растом. А дальше все будет зависеть от задач - не существует языка, который бы одинаково массово применялся и в вебе, и на десктопах, и в мобильных приложениях.
> Раст ничем не плохПриходи ещё лет через 10.
Вот что мохнатая лапа гугля животворящего делает!
А что проект гугла про перефокусировке разработчиков Фаерфокса с разработки Фаерфокса на какую-то фигню под названием раст прошел полностью успешно. Это по круче Ленки Поттеринг
Объясните, зачем это нужно, если в РФ вакансий на расте нет от слова совсем.
К Лапшину можешь пойти
Лапшин может навесить на уши лапшы?
> Лапшин может навесить на уши лапшы?Он умеет искать ... рож которых на всей планете спасибо если несколько десятков водится. И если такие в РФ и были - то давно сыбали, потому что вон тот, с офисом в москве, при всем желании не предложит столько сколько это на самом деле стоит. И те кто все вон то умеет об этом очень хорошо догадывается.
> К Лапшину можешь пойти
> https://www.linux.org.ru/forum/job/16916771У него уже там целый зоопарк: erlang, python, js, теперь еще и раст.
Ну, а в Эритрее и с Си вакансиями туго, не хотите же вы сказать...
Как говорится, плохому танцору... кое-что мешает.
> Ну, а в Эритрее и с Си вакансиями туго, не хотите же вы сказать...Зато в РФ стало много вакансий на которых программировать вообще уметь не надо! Даже платят неплохо. Берут всех. И представительства есть по всей стране. Правда говорят что есть нюансы.
На стройки, на склады?
> На стройки, на склады?На спецпроекты.
> На стройки, на склады?Можно и так сказать.
Тыж уже написал что не программист, зачем тебе это? Для интереса посмотри еще на Хаскеле вакансии или на Crystal.
>в РФ вакансий на расте нет от слова совсемЭто вброс? Лично меня достают рекрутёры ежедневно (имел глупость написать где-то, что имею опыт разработки на Rust).
А мне лично Сергей Брин пишет. Каждый день зовёт на работу.
А по выходным за двойную оплату?
Зайдите на hh.ru, наберите в поиске "Программист Rust" и увидите, какую чушь про "совсем нет вакансий" вы написали.
Зашел. Почти все вакансии про финансовые пирамиды лол. Процентов наверное 80
Так они не только заказчиков облапошивают, но и сотрудников. Так сказать чтобы не терять хватку. А среди растафанатиков самый высокий процент легковерных людей.
Неудифительно, сначала они поверили в маркетинговый булшит про автоуправление памятью, потом в финансовые пирамиды.
> Почти все вакансии про финансовые пирамиды лолИли с дофига опытом с кучей уже завершенных коммерческих проектов в портфолио.
А Вселенная ограничена границами РФ? :-)
Так мечтают же некоторые, чтоб так было ;)
Круто! Давно хотел выучить Rust. Чем канпилятор gcc может быть лучше родного?P.S. С чего начать изучения Rust человеку с опытом в JS?
> P.S. С чего начать изучения Rust человеку с опытом в JS?Вот с этого: https://doc.rust-lang.org/book/
Считаю, что рекомендовать Растбук первой книгой - вредительство. Дело в том, что она "двухпроходная": некоторые главы требуют знания последущих :).Лучше начинать с великолепной книги "Programming Rust" by Blandy&Orendorff. Как раз недавно вышло второе издание, так что книга актуальная, покрывает и async и 2021.
> Вот с этого: https://doc.rust-lang.org/book/Довольно отстойная штука, примеры высосаны из пальца и ни в раз не отражают ни продвинутые нюансы, "догадайтесь как это делать сами", ни реалистичное использование конструкций в программах.
Писано каким-то унылым техписом на отъ...сь для галочки [x] we have book походу.
Для продвинутых есть другие книги. Тут спросили, с чего начать.
>P.S. С чего начать изучения Rust человеку с опытом в JS?Вся суть растофанатов.
С архитектуры компьютера систем и отличий гарвардской архитектуры от фон Неймановской
Вот скажи честно, как это отличие влияет на код прикладной программы, даже на Сишке?
Единственное что он помнит из вузовского курса архитектуры компьютера -- это то, что архитектурые бывает две: фон-Нейман и Гарвард. И естественно как и все дилетанты, он считает известный ему кусочек знаний просто _необходимым_ для того, чтобы называться специалистом.
> Вот скажи честно, как это отличие влияет на код прикладной программы, даже на Сишке?Вообще влияет. Посмотри на прошивки для авр-ок. Чистый гарвардец штука специфичная.
Сначала 5 лет будут героически добавлять поддержку раста, потом 5 лет не менее героически его выпиливать потому что он никому не нужен. Классика.
учитывая что rust также постепенно внедряется в linux, то скорее такого не будет; хотя, сегодня уже не в чём нельзя быть уверенным, так что поживём и увидим, может даже когда-нибудь появится rilux (linux (re)written in rust)
Растаманы, наивные! Никакие компании не смогут содействовать взлёту Раста. Ваша судьба зависит от того одобрит ли вас Столлман, или не одобрит.На колени перед великим копилефтом, перед великим Столлманом!
Они гордые, у них недавно месяц гордости был
А вы за ним пристально следили? Хотели бы поучаствовать, но 29.06.2013 135-ФЗ запретил?
Так от чего, говорите, некоторые ангелы стали падшими? От какого чувства?
Столлман ни на что не влияет. Столлман ни на что не способен. Столлман вообще просто чудаковатый старикашка, кормящийся с проповедей, читаемых им узкому кругу верующих и не имеющий уже давно никакого отношения к IT-отрасли. Раст взлетает потому, что решает проблемы, которые не так хорошо решались до него. Аминь.
> Раст взлетаетСо скрипом уже 11 лет. Смотри как бы на вынужденную не пошел.
Ты позор Ирландской Республиканской Армии. В ИРА уважают Столлмана.
Если запилить "системный язычок" с синтаксисом и семантикой как у JS и распространять через npm, сразу весь хайп по поводу раста сведётся на ноль.
Настоящим программистам проверки компилятора не нужны, а тем кто программировать не может никакой rust не поможет, наоборот, они будут уверены что пишут безопасный код без ошибок под действием синдрома Даннинга Крюгера и только всё испортят.
Теперь осталось донести твои мысли до каждого растофанатика. А вот как это сделать это большой вопрос.
> Язык Rust сфокусирован на безопасной работе с памятью...Ну хватит уже эту мантру в каждю новость пихать!!!
дануна, вот это тема
Ещеб Firefox собирался из исходников этим компилятором.
Ещеб это Firefox был кому-то нужен.
Я, кстати, вернулся на Firefox с Хрома, когда переквалифицировался в Rust-программиста. Но исключительно по идеологическим мотивам :).
Обидно наверно выучить плюсы, десктопные фреймворки типа куте, и через десять лет увидеть, что вместо них используют веб-технологии для UI и вот теперь еще Раст.
Внучег, язык - это всего лишь способ изложения мысли, за тебя он думать не будет.
Я разве говорил, что он должен?
А переучиваться придется. Раньше бухгалтера считали на счетах и вели книгу. Сейчас сам знаешь.
Смысл не меняется, меняются инструменты.Кстати, есть мнение, что плюсцы не нужны, чистый си во все поля. Что с этим делать?
С этим надо что-то делать? Что, например?
Как бы вроде нет, но многие начинают бороться с неизбежными изменениями.
Ну казалось бы, раст. Еще один язык. На твою жизнь сиплюсов хватит, не хочешь писать на расте, проходи мимо. Но нет.
Тоже самое можно сказать про Хаскель.
> Кстати, есть мнение, что плюсцы не нужныСкажи это работодателям, вот удивятся. Что-то на hh вакансий где нужен чистый Си по пальцам сосчитать, везде как минимум С++ с сопутствующим набором дополнительных технологий типа git (один лишь мануал которого тянет на целую докторскую диссертацию).
Чел так ты даже гит не осилил неудивительно что тебя выгнали из программистов.
git бесполезный кусок bloatware только мешающий разработке. Настоящие программисты пишущие ПО для военных спутников, делают это на ANSI C, передают исходный код на флешках. Всякое bloatware типа github им не нужны.
На дискетах же ты что. Флешки это западная ненужная уязвимость.
> ФлешкиЭто ты не застал советские микросхемы памяти на ЦМД. Но лучше бери глубже: у кого нобелевка за гетероструктурные полупроводники? То-то же :)
>у кого нобелевка за гетероструктурные полупроводникиЖивёт Рассеюшка советскими успехами только. E2K, по сути, тоже ещё от советских времён наследие Эльбрус II.
> советскими успехами...живёт весь мир. И не только советскими, а намного ранее.
> ...живёт весь мир. И не только советскими, а намного ранее.Кроме собственно россиян. Которые в совке на плоды прогресса были почти полностью обуты, с записью на позорный жигуль на годы вперед, а в РФ как максимум покупали реальные реализации у бегого человека. Ну или желтого, какая разница. Желтый человек тоже в последнее время россиянам кое-что демонстрирует, уже особо не скрываясь.
> глубже: у кого нобелевка за гетероструктурные полупроводники? То-то же :)Ну да, и светодиоды лосев типа-изобрел. Но светодиодные лампочки в результате у россиян почему-то made in china. А те жалкие потуги делать светодиоды которые были в CCCР/РФ не впечатлят сейчас даже весьма подвальный китай. Который научился это сильно лучше, многократно массовее и неизмеримо дешевле.
А что, CCCР всё это время мирно развивался, как китай?
> А что, CCCР всё это время мирно развивался, как китай?Плюс-минус. Китай во вторую мировую тоже свою порцию люлей получал, от японцев например. Да и в целом они были драными крестьянами - годов до 70..80 прошлого века. А вот где-то там они заметили что СССР делает что-то не так и в отличие от - выводы сделали. И пока желтолицые осваивали продвинутые технологии, вытаскивая драных крестьян в развитую нацию, у россиян шли инверсные процессы, когда под благостные отчеты драли глотки за все что продается в магазинах. Сперва за всякие жигули, потом и за мебель какую, а под самый финиш и за последнего куря уже.
Сходный код программ для военного спутника вполне поместится на дискету. Другое дело что и дискеты и флешки в России не производятся.
*исходный код
Возможно у наших спутников есть функция схода с орбиты )
Идиот, у военных есть своя распределённая сеть, которая на физическом уровне изолирована от интернета, со своими серверами для хранения и передачи данных. В следующий раз думай прежде чем писать, а то знающие люди засмеют.
Так а что плохого, если засмеют? Заслуженно же.
> Идиот, у военных есть своя распределённая сеть, которая на физическом уровне изолирована
> от интернета, со своими серверами для хранения и передачи данных.Это смотря у каких военных. Если посмотреть на то как натовское вооружение работает даже в урезанном режиме, можно понять что они технологии Warzone 2100 уже давно у себя запилили.
> выгналиДебил, мне вообще-то 78 лет и я говорю не за себя. Я то успел поработать "программистом" ещё на ЭВМ которые занимали целые этажи.
>Обидно наверно выучить плюсы, десктопные фреймворки типа куте, и через десять лет увидеть, что вместо них используют веб-технологии для UI и вот теперь еще Раст.Что значит "обидно"? Программисты привыкли постоянно учиться, это и полезно для профилактики деменции :). А что касается плюсов и Qt, то десяти лет обычно хватает на то, чтоб они надоели до смерти. Так что новые прикольные язычки, на которые к тому же есть спрос у работодателей (Go и Rust) появились кстати.
одного GCC теперь через год хватит, без всяких llvm?
ага, как в анекдоте:
- У нас есть 15 форматов файлов, надо сделать универсальный!
...
- У нас есть 16 форматов...
И при чём здесь форматы файлов? Если даже будет 150 фронтэндов, то это компиляторы с _разных_ языков. Ну а языки придумывают не разработчики GCC.
Как был зоопарк из гцц-ллвм-шланг, так и останется. И проекты - как требовали весь этот зоопарк, да ещё конкретных версий, так и будут требовать.
Зоопарк компиляторов это ещё непаханное поле новых векторов атак https://www.researchgate.net/publication/348171356_Exploitin...
Как полный текст pdf получить? Нафига тут этот булшит ради которого надо регаться.
Люди разучились пользоваться интернетом...
https://dl.acm.org/doi/pdf/10.1145/3418898
Лишь бы GCC не утратил разборчивость и не проглотил Cargo.
осталось выкинуть карго и может что-то да выйдет. А так одинм мертвецом больше, одним меньше в куче gcc. - без разницы
Лучше бы гнуто-гццшный компилятор лиспа запилили вместо kawa, guile и gcl.
Не ну а что, теперь в каждом новом релизе gcc будут упомянать Rust, а это лишний повод нам сново собраться тут в комментариях. %-)