Для системного программирования подойдет C. Этот язык является lingua franca системного программирования, на нем пишет практически весь системный софт.
>>1699406 (OP) C, ассемблер, немного плюсы. Ассемблер в чистом виде юзается редко, обычно это ассемблерные вставки в сишном коде. Си - в юниксах идеален для системного программирования (ну, так сложилось). На винде больше плюсы. Плюсы более высокоуровневые и в целом более требовательные, но винда в отличие от линукса не претендует, чтобы её запускали даже на картошке.
>>1699406 (OP) Машкоды. Это неизбежно. Можно разбавлять ассемблерами, но без фанатизма. Для переносимости добавить что-нибудь из Фортов. Этого достаточно.
>>1700457 Окей, тогда, если мы соглашаемся с твоим аргументом, то Common Lisp [1], Haskell [2] и Ocaml [3] - это языки для системного программирования, что лишний раз доказывает превосходство последователей функциональной парадигмы над жалкими императивными петушками.
>>1701278 >Окей, тогда, если мы соглашаемся с твоим аргументом, то Common Lisp [1], Haskell [2] и Ocaml [3] - это языки для системного программирования, что лишний раз доказывает
SBCL иногда удобен [1], но это ничего не доказывает (потому что лисперы ничего никому не доказывают). OCaml это тупик, как и Mirage. ATS в третьей инкарнации обещает быть интересным. На Haskell, отхачив ghc хорошенько, можно генерировать разные интересные vhdl послушав про картезиански замкнутые категории и Bluespec.
>>1699611 Маня, ОП задавал вопрос про системное программирование. В системном программировании без жонглирования указателями и прямого доступа к памяти не обойтись, порой даже приходится в некоторых местах отказываться от STL-контейнеров.
>>1699406 (OP) ОП, 80% комментов здесь от поехавших битардов. Слушай сюда - учи С и С++. Оба языка пригодятся в системном программировании, иногда нужно упарываться в Си, иногда можно и плюсами обойтись, но оба языка нужно учить. Если не знаешь ни тот, ни другой, вкатись сначала в С, будет легче. С++ намного тяжелее, особенно в качестве первого языка. И не слушай ебаклаков, которые кукарекали про Сишарп. Язык явно не для системного программирования. Некоторые поехавшие веганы-борщехлебы еще могут посоветовать тебе учить Раст - гони их в пизду тоже. Раст хоть и системный яп, но не факт, что выстрелит. А если когда-нибудь и выстрелит, то когда ты, анон, уже будешь пенсионером. Весь софт в мире держится на системах и либах, написанных на С и С++. Хочешь стать системным прогером? Учи эти языки + основы ОС.
>>1717276 Он может быть борщехлебом и писать на Расте, системный софт на котором невозможно написать без абьюза ансейфа, а значит C-like проблемы с памятью возвращаются (кстати, это основная причина того, что Раст - мертворожденная хуйня без будущего). Когда же до вас, мань, дойдет, что написание СИСТЕМНОГО (не прикладного, а, блять, СИСТЕМНОГО) софта не может быть безопасным в плане памяти априори, требуется прямое вмешательство в память с минимальными ограничениями для программиста. Посмотри сорцы того же redox и грепни сколько ансейф блоков там есть, лол. Причем это суперсырая, неюзабельная для широких масс ОС.
>>1717453 Суть раста не в полном уходе от ансейфа, а в явном обозначении опасных мест в коде и в упрощении отладки вследствие этого (в т.ч. с помощью компилятора). Вокруг опасных байтоёбских кусков кода ты пишешь безопасные высокоуровневые обёртки. Си - ансейф целиком, ибо при его создании мало кто думал о безопасности. Сомневаюсь, что раст быстро сдохнет, ибо концепция тех же лайфтаймов сейчас уникальна и довольно интересная (например, в контексте всякой высоконагруженной хуиты, для которой даже фризы от GC неприемлимы) И кто тебя заставляет пользоваться редоксом сейчас? Это всего лишь прототип системы на новом языке, который мало кому нравится из-за того, что сукабля боров чекер не компилит мой говнокод с потенциальным UB, как если бы я писал на сях. Ты бы ещё первые билды линукса засрал из-за неюзабельности для широких масс. Ругать софт из-за того, что нам ним не работает столько же народу, скольк над линём (а я напоминаю, что тот притягивал к себе разрабов со всего мира из-за того, что был одной из первых опенсурцных ОС) - такое себе занятие
>>1717493 Раст не взлетит в системщине, потому что всему миру похуй на это. Это круто как концепция, технология, но в мире как писали системный софт на С/С++ так и продолжат писать. Максимум найдет ультраузкую нишу в прикладухе или околосистемщине, как Го, и то не факт.
>>1699406 (OP) А что тебя конкретно интересует? Микроконтроллеры, ядро пинуса? Там везде уже устоявшийся стандарт, либо в виде SDK конкретной фирмы, где всё выбрано за тебя, либо сишечке в ведре, где тоже выбрано за тебя. Есть ещё VHDL/Verilog если ты проектируешь железо или программируешь плисины.
Алсо, не слушай этого >>1717614 ниасилятора. Оно конечно экзотичненько и борщехлёбно, но вполне пригодно. Учи и сишечку, и раст.