Вспоминаем искусство древних,например,аллокатор на основе областей ака arena based allocators или на базе стека.и забываем всю эту смузихрень. Чем ьальше,тем больше люблю си,он даже шарпы уверенно теснит ибо это свобода,кк и паскаль.
@@hmixa вопрос один, что можно писать на сишке по мимо микроконтроллеров и низкоуровневого софта для железок по типу драйверов и тд? Посмотрел подкаст, решил побаловался (сам фронтентер, пишу на js и php), опыт в строготипизированных яп есть но что конкретно на сишке писать не пойму, по мимо консольных штук))
@@awenn2015 мне кажется что С вполне может подойти для каких-то утилит командной строки. И эти утилиты могут быть и простеньким и такими как тот же git. Получил параметры, распарсил их, понял что хотят, сделать что-то нужное, написал о'кей или сообщение об ошибке и ушёл.
Нынче си - это такой универсальный ассемблер. Сишный компилятор есть нынче для всего подряд, поэтому можно нагенерить сишного кода и накомпилять его под целевые платформы. Иными словами, ветка для деплоя вашего софта просто стала чуточку длиннее. А так, что в си, что в плюсах, комьюнити просто ужасное, перед собеседованием что на сишника, что на плюсовика зажмите нос, не забудьте после такого собеса помыть руки. Общая болезнь у всей около-си тусовки - люди не знают как и куда им ещё высраться. И вместо того, чтобы сосредоточиться на продукте и его функционале, сишники и плюсовики очень любят друг друга пиздить за какие-то мелочи, которые в другой тусовке даже бы не заметили. А, и да, вот вы потратили свое время на изучение всех брачных танцев. И получили за это зарплату, сравнимую с вкатунами на каком-нибудь другом языке. Особенно это заметно в среде эмбеддеров. А знаете как это произошло? Все очень просто, зарлата есть там, где есть откуда ее платить, а не там, где сложнее брачные танцы. Ребята, си и плюсы - это чан с говном, а не шоколадная фабрика. Просто посмотрите внимательно на то, какие классные вещи и как легко можно сделать на других языках. Да, без Си и плюсов не было бы той же Явы, петухона, игровых движков и прочих благ цивилизации. Но вы уверены что хотите пребывать в позе атланта, держащего землю? В общем, вы предупреждены, дальше делайте выводы сами.
Не ожидал увидеть Игоря в реках, ностальгия прям по лекциям в ИТМО. Было интересно узнать, когда работаешь все время на C99, что полезного появилось в C11. А по поводу того, что останутся только gcc и llvm для C, для массовых архитектур типа x86_64 и ARM* да, но есть еще например архитектуры с VLIW системами команд типа Эльбрусов или DSP-ядер, где используются свои компиляторы со своими оптимизациями, поддержкой интринсиков и векторных регистров.
Главная причина почему Си даёт фору всякими растам и зигам заключается в его богом проклятом тулинге. Ни единого стандарта сборщика, ни пакетного менеджера, что тут говорить, когда самая популярная тулза под Си (cmake) это кросс-плтаформенный компилятор сборщиков. А самостоятельное управление памятью это безусловный плюс, если мы конечно говорим про системное программирование. В целом на Си более-менее комфортно писать, если не суёшь нос дальше линукса.
Есть еще платфррмы на которых только асм и си Специализированные сигнальные процессоры(DSP) Там как раз и char 16бит бывает и все эти дела, ради которых неопределенное поведение введено в стандарт. Даже не знаю через сколько десятилетий на эти архитектуры придет раст и зиг…. Так что Си жив и будет жить!
@@comachineсейчас все компиляторы заставляют знать второй яп для сборки первого. Смотри как эту проблему решили nob тсодинга и jai джона блоу. Никто ничего подобного в индустрии не имеет, всем нужны девопсы и программисты на системе сборки.
Си на данный момент единственный реально кроссплатформенный язык когда написал код и с минимальными издержками компилируешь и запускаешь его на любой балалайке. У всех остальных(в том числе у котлина и java) кроссплатформенность сплошная профанация.
Разве у Java c мульииплатформенностью всё так плохо? Мне казалось, если JVM (Java Virtual Machine) портирована на устройство, то оно без проблем схавает твой код. Конечно же, это не идёт в сравнение с написанным специально под устройство кодом, но всё же. НЕ ПОПЫТКА РАЗВОДИТЬ СРАЧИ, просто начинающий джавист интересуется технологиями.
@@johnnymnemonic8923 Для этого кто-то должен портировать JVM на устройство, что не всегда возможно, а если и возможно то окажется каким-то урезанным. Пример андройда показательный - вроде обычное приложение на ява, а работает только в эмуляторе
@@user-kv3rc9jk9u в эмуляторе или в изолированной среде? Если второе, то это, как я слышал, сделано для безопасности устройства, чтобы, мол, ПО не могло навредить всей системе, а запускалось себе в песочнице и получало доступы к ресурсам по мере необходимости и со строгим контролем от операционки.
Прямая работа с памятью в C - это привелегия и ответственность, а не проблема. В мире где на производительность влияет насколько ты cache friendly, такой язык нужен и будет нужен. На C прям видно как примерно ассемблерный код будет выглядеть. Да, Rust снижает риски "выстрела в ногу", но его синтаксис меня бесит - он какой-то нелогичный :)
Недавно вышел Box2d 3.0 , переписан с C++ на C , улучшилась точность симуляции а производительность выросла вдвое . Новая версия SDL(используется в cs2 , dota2 , left4dead ) осталась на C .
Посмотрел. У вас предвзятое отношение к C. Что за выражение "обмазаться структурами/макросами"? Типа как обмазаться говном? Почему вы другие языки называете "нормальные языки"? После такого нет доверия вашему утверждению, что на C не стоит начинать новый проект. Как же ядро Linux смогли написать, что аптайм у серверов получается огромный и всё работает без крашей? Может это потому, что надо писать правильно и всё будет работать быстро и надёжно? Все другие языки (с защитами от дураков) нужны из-за того, что в программисты идут всякие раздолбаи, которые не парятся, когда пишут код. Надо просто проверять на адекватность, прежде чем нанимать на работу.
@@yTuHa9I_LLIe9I а какое отношение к вопросу имеет ваш коммент? и почему некоторые любят цифры?не просветите? поясняю, вам написали о сложном и большом проекте. вы же вывернули в совсем другую плоскость. цифры-аще,скоро буду считать маркером идиотов
@@MrChelovek68 "Маркером идиотов". Понял вас. Правильно ли я понимаю, что вы хотите сказать, мол качество кода никак не зависит от числа квалифицированных разработчиков? Или что стабильность системы не зависит от длительности её эксплуатации и широты распространения? Ну тогда мне вам сказать нечего - вы, судя по всему, в своём познании преисполнились
Ого, это что, адекватный сишник, да ещё и мытый. Где вы такого нашли-то? Сравнение с Rust что-то вообще не раскрыли, в таймкодах про это вообще ничего.
сейчас появилась в embedded новая хрень. все файлы идут с расширением .cpp. компелируются как с++. но код пишут в С. но при этом можно использовать stl библиотеки.... очень удобный mix
Есть такая небольшая, уловка, ты очищаешь память free(p); p = NULL; в результате этого, даже если ты вызовешь ещё раз free(p); функция отработает корректно.
@@iex32 в C вселенной, вместо вываливания в ошибку, функция free(p); где p = NULL; завершается успешно, лично я не знал, до некоторого времени, о такой особенности free().
@@kosiak10851 далеко не все. И когда ты умеешь программировать тебе без разницы особо язык. Питон просто удобно продавать. Два месяца курсов и готовый формошлеп и скрипткиди для галер - это не программист.
увидел исходники постгреса в рекомендуемых к чтению проектах, а что насчёт исходников питона? стоит ли ориентироваться на этот код с точки зрения Си разработки?
В плюсы перекочевал define и на мой любительский взгляд это самое убогое корявство в плюсах. Если для си это нормальная конструкция, то в плюсах когда видишь это слово, хочется надавать по рукам и щам за такое. Фуфу. Остальное всё люблю в плюсах.
Ну если не заморачиваться оптимизацией исполняемого кода, то define это фуфу, но если все же думать о низкоуровневых вещах, то define это путь сделать сложный код более читаемым.
Там нет ничего умного. Ты можешь написать Memory Safe программу на C которую невозможно будет реализовать на Rust - из-за ограничений компилятор. Это помимо того что компилятор Rust по уровню помойки которая в нем творится можно сравнивать только с Huskel. Даже если в компиляторе есть бекдоры от NSA - мы их никогда не найдем, потому что проанализировать что там творится - займет слишком много времени. И на самом деле на Rust невозможно реализовать очень большое количество вещей связанных с параллелизмом и многопроцессорностью.
@@d1namis С не предназначен для memory safe. Наоборот, он делает упор на unsafe в критически ограниченных объемах. Микроконтроллеры тому пример. Rust писался с целью - быстро и безболезненно закрывать критические участки программ. Компилятор раста продуман очень скрупулёзно. Есть конечно пооблемы в виде циклических ссылок. Но в остальном, он умён и оптимален. Умная многопоточка, умные указатели, умные оптимизации. Это лучший компилятор без GC, из тех, что я встречал за годы работы.
@@user-pq7dj1ny4h Зачем вы мне это объясняете? Это ведь даже не ваше мнение, просто общее впечатление о Rust. На СИ можно написать программу которая будет 100% Memory Safe, но на Rust такую же программу реализовать будет невозможно - это утверждение не требует никаких особых умственных усилий для восприятия. И Сейчас и в будущем без Unsafe - реальные интересные программы и алгоритмы - на Rust просто нельзя реализовать, но то что они Memory Safe - доказано математически. И тут появляется проблема - Rust превращает простые программы в Сложные, а сложные и интересные - реализовать на Rust без unsafe невозможно. Rust это не более чем эксперимент уровня TypeScript
@@user-pq7dj1ny4h продуман скрупулезно и Циклические ссылки? вы серьезно?это разные вселенные так то.интересно на чем его написали,что ide не показала циклические ссылки
@@andrewbondaryuk пока, кстати, возможно. но популярно-не значит,что лучше или больше возможностей. порог входа ниже и все. и все dsl языки это именно dsl. что жаба,что ц-решетка,что жабаскрип, это просто надстройки. а когда ты,занимаясь dsl понимаешь какую свободу дает си, то dsl языки для тя блекнут раз и навсегда. и раст становится маркетинговым мусороом. а вот стандарты могут ток ухудшить положение,если будут следовать смузибреду
Не пойму этого прикола со сложностью указателей, в js все не скалярные данные передаются по ссылке, в php вроде нет но там они тоже есть в виде & это знака, тут истина то простая по сути, если создавая переменную мы взяли другую по указателю то ссылаться они будут на одно место в памяти и все, ничего сложного
Lunux на ruste это невозможно. Сам Торвальдс осторожно говорит на эту тему. Pascal просто вызывае отторжение и неприязнь к программированию. Не знаю почему. В школе не любил Pascal.
Правильно делаешь! Всё как твой дед который с коболя на С отказывался переходить. По итогу ты бомж, бывает. Дай вселенная твоим детям такую же судьбу 😂
@@User-ux1tm нет никакого учить, есть только писать программы. Если раст под задачи подходит - пиши на нем. А си, бреинфак или Хороший Учебный Язык - это дело, мягко скажем, десятое...
А как вы будете использовать уже существующие библиотеки написанные на С и С++ в Rust проекте учитывая что эти библиотеки не имеют полной документации и вообще их иногда надо патчить ?
Бла, бла, бла! Пробовал я Ruct, идея прекрасная но симантика гавно. Короче мне не понравилось. Если я лезу функцией в переферию то всё что дальше юзает эту функцию будет небезопасным. Короче одно мозгоёбство!
@@chaquesecondeв цпп тоже есть указатели. ссылки с наличием или отсутствием обьектов никак не связаны, это просто менее декларативный и более абстрагированный способ передачи аргументов
Эээ... аааа... мммм.. да блин, невозможно слушать, два с половиной часа такой пытки! Как вообще этот Жирков преподавал, или преподает где-то ? Лучше бы тихо сидел и книжки в углу писал, а не над людьми издевался, тем более детьми, мать его((( Каждый преподаватель, для полной профпригодности, должен пройти полное обследование, или лечение у логопеда, с соответствующей сертификацией - точка!
Три танцора говорят о программирование. Один олух ещё и в математику полез 😅 говорит "математики любят красоту" 😅 😅😅. Математика конечно красивая наука, но совсем не о красоте и не любов к красоте в ней залог успеха. Математика о решение задач, любых. Математическое мышление нацелено на решение задач и без разницы красивым оно будет или нет. Там ни что не диктуется красотой. Видно парень не из числа мыслителей, но свои фантазии любит распространять.
не согласен про красоту. если твоое-математика,ты будешь в ней видеть красоту. и матан к кодингу каешн имеет отношение в разных плоскостях. а так,красота может заключатся в простоте доказательства. это называется еще -элегантностью. но болтать каешн можно бесконечно насколько у тя богатый внутренний мир,ток толку от болтовни ноль
@@MrChelovek68 красоту можно видеть, везде, не только в математике. И в ремонте домов строителями. Это же не означает что кто пришел в кодинг со стороны строительство тот ищет в нем красоту ... Элегантности изобретеной в математике нет, математику не изобретают а открывают, она вся есть без учённых, просто неизведанная ещё. Я же сказал в ней есть красота, но цель математика не красота. И ты прав, болтать можно о чем угодно, исправь же себя на основании понятого тобой. Не будь как этот пустослов в видео.
@@kaihusravnajmiddinov5413 И почему же математику не изобретают, а открывают? А может, математические теории это вид искусства? Искусство не изобретают и не открывают.
@@spirridd нет -не искусство. Математические теоремы и законы - это законы логики/истины. Когда их узнают и доказывают их открывают. Все доказанные математические формулы были верными до своего доказательство, то есть другими словами работали и были в естестве. Пример: Пифагор доказал что в прямоугольном треугольнике, квадрат гипотенузы равен сумме квадратов катетов. Эти суммы были равны и до доказательства Пифагора и до его рождения и до рождения Иисуса. Пифагор просто открыл этот закон. Вс математика - так. Люди просто могут придумывать названия этим формулам, а они существовали с начало сотворения этого мира. Искусство - это вообще другое и не точно определенное понятие, и конечно его (искусство) изобретают как раз таки. Ну например картина Репина..
@@kaihusravnajmiddinov5413 Пифагор не просто открыл этот закон. До Пифагора такого закона не было. Вообще, никаким образом не существовало. Как и самого прямоугольного треугольника не существовало. Это математический объект, придуманный человеком.
Что тебе нравится больше, чем очищать память, выделенную в куче, и понимать, что ты ее уже очистил ?
Вспоминаем искусство древних,например,аллокатор на основе областей ака arena based allocators или на базе стека.и забываем всю эту смузихрень. Чем ьальше,тем больше люблю си,он даже шарпы уверенно теснит ибо это свобода,кк и паскаль.
@@MrChelovek68 арены наше все
@@MrChelovek68на смузи может не хватить
Ещё больше люблю слушать фанатов раста которые ни в один вопрос глубоко не погружались и свято верят в маркетинговый булщит
@@morglod это отдельная тема, ибо прямо классика,новый очередной язык, и ему нужна ниша.
С развивается не быстро потому что это надо делать очень осторожно, одно не верное движение и у тебя уже с++.
@@hmixa вон си3 уже вышел, а вы до сих пор на си сидите....
@@iamdozerq спасибо, почитаем. Я вообще-то на С#, но с это Родина. Я после макроассемблера от PDP11 в 89 году С выучил, где-то минут за 40.
@@hmixa вопрос один, что можно писать на сишке по мимо микроконтроллеров и низкоуровневого софта для железок по типу драйверов и тд? Посмотрел подкаст, решил побаловался (сам фронтентер, пишу на js и php), опыт в строготипизированных яп есть но что конкретно на сишке писать не пойму, по мимо консольных штук))
@@awenn2015 ядро операционной системы)
@@awenn2015 мне кажется что С вполне может подойти для каких-то утилит командной строки. И эти утилиты могут быть и простеньким и такими как тот же git. Получил параметры, распарсил их, понял что хотят, сделать что-то нужное, написал о'кей или сообщение об ошибке и ушёл.
Так никто и не сказал, что ваш любимый postgres написан на С...
Как и Oracle, кстати.
Даже небо, даже Аллах . Перечислять устанешь
В описании добавили как один из проектов
@@dencasio6141 даун?
@@qandak могут себе назад добавить
Нынче си - это такой универсальный ассемблер. Сишный компилятор есть нынче для всего подряд, поэтому можно нагенерить сишного кода и накомпилять его под целевые платформы. Иными словами, ветка для деплоя вашего софта просто стала чуточку длиннее.
А так, что в си, что в плюсах, комьюнити просто ужасное, перед собеседованием что на сишника, что на плюсовика зажмите нос, не забудьте после такого собеса помыть руки. Общая болезнь у всей около-си тусовки - люди не знают как и куда им ещё высраться. И вместо того, чтобы сосредоточиться на продукте и его функционале, сишники и плюсовики очень любят друг друга пиздить за какие-то мелочи, которые в другой тусовке даже бы не заметили.
А, и да, вот вы потратили свое время на изучение всех брачных танцев. И получили за это зарплату, сравнимую с вкатунами на каком-нибудь другом языке. Особенно это заметно в среде эмбеддеров. А знаете как это произошло? Все очень просто, зарлата есть там, где есть откуда ее платить, а не там, где сложнее брачные танцы.
Ребята, си и плюсы - это чан с говном, а не шоколадная фабрика. Просто посмотрите внимательно на то, какие классные вещи и как легко можно сделать на других языках. Да, без Си и плюсов не было бы той же Явы, петухона, игровых движков и прочих благ цивилизации. Но вы уверены что хотите пребывать в позе атланта, держащего землю?
В общем, вы предупреждены, дальше делайте выводы сами.
Отличный выпуск, спасибо огромное вам и гостю
В gcc функции не просто могут быть вложенными, а могут иметь замыкания и при этом использоваться как обычные функции - магия, одним словом
+, ток функция родитель должна быть на стеке или чот такое. Обрезанные замыкания, в общем. Но удобно
Я один вижу ухоженного Гилфойла?
Когда сделали новую железку достаточно сделать кодогенератор к С компилятору. Что есть значительно проще написания компилятора.
Не ожидал увидеть Игоря в реках, ностальгия прям по лекциям в ИТМО. Было интересно узнать, когда работаешь все время на C99, что полезного появилось в C11. А по поводу того, что останутся только gcc и llvm для C, для массовых архитектур типа x86_64 и ARM* да, но есть еще например архитектуры с VLIW системами команд типа Эльбрусов или DSP-ядер, где используются свои компиляторы со своими оптимизациями, поддержкой интринсиков и векторных регистров.
Rust и Redox - для хобби, C++ 26 для учёбы и работы. PHP+nginx - чтобы не сойти с ума 😊 + девчёнка-фротендер для красоты и на будущее ❤
Отличный выпуск! Кстати, про Аду уже был выпуск, говоря о "классических" языках?
Неа, но где-то на дне бэклога есть!
Язык Ада! Звучит!!!
Наконец годное интервью по си! 👍👍👍🔥
Главная причина почему Си даёт фору всякими растам и зигам заключается в его богом проклятом тулинге. Ни единого стандарта сборщика, ни пакетного менеджера, что тут говорить, когда самая популярная тулза под Си (cmake) это кросс-плтаформенный компилятор сборщиков. А самостоятельное управление памятью это безусловный плюс, если мы конечно говорим про системное программирование. В целом на Си более-менее комфортно писать, если не суёшь нос дальше линукса.
Zig можно использовать как кросс компилятор
Есть еще платфррмы на которых только асм и си
Специализированные сигнальные процессоры(DSP)
Там как раз и char 16бит бывает и все эти дела, ради которых неопределенное поведение введено в стандарт.
Даже не знаю через сколько десятилетий на эти архитектуры придет раст и зиг….
Так что Си жив и будет жить!
си такой язык, в котором нужно знать другой язык, чтобы собрать проект с библиотеками на этом языке)))
@@comachineсейчас все компиляторы заставляют знать второй яп для сборки первого. Смотри как эту проблему решили nob тсодинга и jai джона блоу. Никто ничего подобного в индустрии не имеет, всем нужны девопсы и программисты на системе сборки.
"На С возможно всё, даже наломать дров" - Брайан Керниган. 😂
Си на данный момент единственный реально кроссплатформенный язык когда написал код и с минимальными издержками компилируешь и запускаешь его на любой балалайке. У всех остальных(в том числе у котлина и java) кроссплатформенность сплошная профанация.
Разве у Java c мульииплатформенностью всё так плохо? Мне казалось, если JVM (Java Virtual Machine) портирована на устройство, то оно без проблем схавает твой код. Конечно же, это не идёт в сравнение с написанным специально под устройство кодом, но всё же.
НЕ ПОПЫТКА РАЗВОДИТЬ СРАЧИ, просто начинающий джавист интересуется технологиями.
Golang в помощь
@@johnnymnemonic8923 Для этого кто-то должен портировать JVM на устройство, что не всегда возможно, а если и возможно то окажется каким-то урезанным. Пример андройда показательный - вроде обычное приложение на ява, а работает только в эмуляторе
@@user-kv3rc9jk9u в эмуляторе или в изолированной среде? Если второе, то это, как я слышал, сделано для безопасности устройства, чтобы, мол, ПО не могло навредить всей системе, а запускалось себе в песочнице и получало доступы к ресурсам по мере необходимости и со строгим контролем от операционки.
Прямая работа с памятью в C - это привелегия и ответственность, а не проблема. В мире где на производительность влияет насколько ты cache friendly, такой язык нужен и будет нужен. На C прям видно как примерно ассемблерный код будет выглядеть.
Да, Rust снижает риски "выстрела в ногу", но его синтаксис меня бесит - он какой-то нелогичный :)
Skill issue
Очень интересно и приятно слушать 🎉
Гилфойл рассказывает про С.. круто.
Для консольных утилит в Linux, или даже в Windows, C хорошо подходит, для решения той или иной одной задачи, в концепции Unix.
Крутой выпуск! Хотелось бы услышать сравнение с rust. За 2 часа потемнело, соведущий слился, но гость любит C)
Короче, Си - простой язык. На самом деле. На Си просто писать программы. ООП и веб-разработка, - это не про Си, хотя Си можно и там использовать.
"5я лаба" была топчик!)
Я думал он подъезде сидит оказывается это диван
Недавно вышел Box2d 3.0 , переписан с C++ на C , улучшилась точность симуляции а производительность выросла вдвое .
Новая версия SDL(используется в cs2 , dota2 , left4dead ) осталась на C .
C прекрасно используется и много где. От ембедед до системного программирования. Rust хорошо как более сложных проектов.
Посмотрел. У вас предвзятое отношение к C. Что за выражение "обмазаться структурами/макросами"? Типа как обмазаться говном?
Почему вы другие языки называете "нормальные языки"? После такого нет доверия вашему утверждению, что на C не стоит начинать новый проект.
Как же ядро Linux смогли написать, что аптайм у серверов получается огромный и всё работает без крашей?
Может это потому, что надо писать правильно и всё будет работать быстро и надёжно?
Все другие языки (с защитами от дураков) нужны из-за того, что в программисты идут всякие раздолбаи, которые не парятся, когда пишут код. Надо просто проверять на адекватность, прежде чем нанимать на работу.
Как раз хотел написать!
1.296 миллиона коммитов, 15.5 тысяч контрибьюторов. А вы уверены, что ваш проект на Си сможет так же?
@@yTuHa9I_LLIe9I а какое отношение к вопросу имеет ваш коммент? и почему некоторые любят цифры?не просветите?
поясняю, вам написали о сложном и большом проекте. вы же вывернули в совсем другую плоскость. цифры-аще,скоро буду считать маркером идиотов
больше того,все эти пискли о небезопасности,даже не знаюют о том,что существуют практики программирония на си со своими шаблонами.
@@MrChelovek68 "Маркером идиотов". Понял вас. Правильно ли я понимаю, что вы хотите сказать, мол качество кода никак не зависит от числа квалифицированных разработчиков? Или что стабильность системы не зависит от длительности её эксплуатации и широты распространения? Ну тогда мне вам сказать нечего - вы, судя по всему, в своём познании преисполнились
А будет выпуск про ассемблер? Ведь под капотом С и С++ только ассемблер. Было бы неплохо послушать экспертов. ❤❤❤
На си весь эмбеддед. И ядро линукса на сях.
Много полезного узнал на старости лет, спасибо. Напр. типы с _t - уже нарывался ;)
Ну я пишу на Си, послушал, и судя по интервью у Си пока только одни плюсы. Поэтому и дальше буду писать на Си.
Железячники, хэй! ))
Салам 👋
Зато любой чайник и скороварку запустить можно!😂
Hello,DGT67!
Тут
Ого, это что, адекватный сишник, да ещё и мытый. Где вы такого нашли-то?
Сравнение с Rust что-то вообще не раскрыли, в таймкодах про это вообще ничего.
Собственно за этим и пришел, тоже не нашел. Обычно Zig/Rust рядом идут в сравнениях
может потому что он не интересен? в каждом топике по коду-why not rust. бекоз итс юзлесс
@@MrChelovek68 да, не интересен, поэтому про него и на обложке и в заголовке.
@@safort7806 кликбейт, разве не слышали?
@@MrChelovek68 так а как работает кликбэйт? Чтобы заманить тех, кто интересуется.
сейчас появилась в embedded новая хрень. все файлы идут с расширением .cpp. компелируются как с++. но код пишут в С. но при этом можно использовать stl библиотеки.... очень удобный mix
Есть такая небольшая, уловка, ты очищаешь память free(p); p = NULL; в результате этого, даже если ты вызовешь ещё раз free(p); функция отработает корректно.
Корректно?!
@@iex32 в C вселенной, вместо вываливания в ошибку, функция free(p); где p = NULL; завершается успешно, лично я не знал, до некоторого времени, о такой особенности free().
Удобное
Дорогая редакция, помимо Coq, не планируете пригласить гостей пообщаться про Isabelle/HOL, F*, Lean4 ? А хакеры любят лисп, как ни странно
наконец-то)
1:12:44 - классная рифма: "си - легаси"
С выделяет ещё и отсутствие 1:15:24 манглирования, может по ому не ввели нэймспейсы
Хватит хейтить Паскаль😂 Нормальный язык.
с классическим синтаксисом,это вообще как классическая машина-красота
Для обучения программированию лучше так и не придумали
Проснись дед, в 21 веке все на Питоне пишут.
@@kosiak10851 далеко не все. И когда ты умеешь программировать тебе без разницы особо язык. Питон просто удобно продавать. Два месяца курсов и готовый формошлеп и скрипткиди для галер - это не программист.
Kosiak а по фактам скажешь что?
увидел исходники постгреса в рекомендуемых к чтению проектах, а что насчёт исходников питона? стоит ли ориентироваться на этот код с точки зрения Си разработки?
Посоветуйте лучшую книгу для изучения C.
Стивен Прата - Язык программирования Си
поддерживаю
@@russian_pizza спасибо
@@The-il13 спасибо
В плюсы перекочевал define и на мой любительский взгляд это самое убогое корявство в плюсах. Если для си это нормальная конструкция, то в плюсах когда видишь это слово, хочется надавать по рукам и щам за такое. Фуфу. Остальное всё люблю в плюсах.
Ну если не заморачиваться оптимизацией исполняемого кода, то define это фуфу, но если все же думать о низкоуровневых вещах, то define это путь сделать сложный код более читаемым.
Вопрос к 24:45 :на чём оптимально писать софт для Linux?
Группа программистов из Мозиллы (бывших сишников), решила и написала умный С - Rust.
Там нет ничего умного. Ты можешь написать Memory Safe программу на C которую невозможно будет реализовать на Rust - из-за ограничений компилятор. Это помимо того что компилятор Rust по уровню помойки которая в нем творится можно сравнивать только с Huskel. Даже если в компиляторе есть бекдоры от NSA - мы их никогда не найдем, потому что проанализировать что там творится - займет слишком много времени. И на самом деле на Rust невозможно реализовать очень большое количество вещей связанных с параллелизмом и многопроцессорностью.
@@d1namis тогда линукс в опасносте.... раст в ядро линукса затащили
@@d1namis С не предназначен для memory safe. Наоборот, он делает упор на unsafe в критически ограниченных объемах. Микроконтроллеры тому пример. Rust писался с целью - быстро и безболезненно закрывать критические участки программ. Компилятор раста продуман очень скрупулёзно. Есть конечно пооблемы в виде циклических ссылок. Но в остальном, он умён и оптимален. Умная многопоточка, умные указатели, умные оптимизации. Это лучший компилятор без GC, из тех, что я встречал за годы работы.
@@user-pq7dj1ny4h Зачем вы мне это объясняете? Это ведь даже не ваше мнение, просто общее впечатление о Rust. На СИ можно написать программу которая будет 100% Memory Safe, но на Rust такую же программу реализовать будет невозможно - это утверждение не требует никаких особых умственных усилий для восприятия. И Сейчас и в будущем без Unsafe - реальные интересные программы и алгоритмы - на Rust просто нельзя реализовать, но то что они Memory Safe - доказано математически. И тут появляется проблема - Rust превращает простые программы в Сложные, а сложные и интересные - реализовать на Rust без unsafe невозможно. Rust это не более чем эксперимент уровня TypeScript
@@user-pq7dj1ny4h продуман скрупулезно и Циклические ссылки? вы серьезно?это разные вселенные так то.интересно на чем его написали,что ide не показала циклические ссылки
Respect C/C++ 👍👌
"Хорошая книга по современному С"
Книга 2008 года издания :)
практики кода на си аще 95 года. но кто их читает...)))
@@MrChelovek68
У меня ощущение, что даже 1С более популярно и распространено, чем си 😀
По C17 я видел, наверно на русском нет новых?
@@andrewbondaryuk пока, кстати, возможно. но популярно-не значит,что лучше или больше возможностей. порог входа ниже и все. и все dsl языки это именно dsl. что жаба,что ц-решетка,что жабаскрип, это просто надстройки. а когда ты,занимаясь dsl понимаешь какую свободу дает си, то dsl языки для тя блекнут раз и навсегда. и раст становится маркетинговым мусороом. а вот стандарты могут ток ухудшить положение,если будут следовать смузибреду
@@MrChelovek68
zig?
Почему не нужно писать на Си, не понял?
Не пойму этого прикола со сложностью указателей, в js все не скалярные данные передаются по ссылке, в php вроде нет но там они тоже есть в виде & это знака, тут истина то простая по сути, если создавая переменную мы взяли другую по указателю то ссылаться они будут на одно место в памяти и все, ничего сложного
Ровно как и нет никакой проблемы в том чтобы освободить память после использования, но мемори лики и нуллпоинтеры почему то плодятся😅
@@bernish Скорее-всего, тут не смогу сказать, дело привычки скорее всего
1:26:25 есть же запятые для этого, или я не понял о чем гость
Ни слова про Objective-C 😂😂😂
Lunux на ruste это невозможно. Сам Торвальдс осторожно говорит на эту тему. Pascal просто вызывае отторжение и неприязнь к программированию. Не знаю почему. В школе не любил Pascal.
забавно,мне паскаль понравился. ег синтаксис классический. и си я люблю и си шарп.
Спасибо - понял, что мне не надо в С)
А я пишу на Си и пох чё у вас башке, даже слушать эту лажу не стал.
Правильно делаешь! Всё как твой дед который с коболя на С отказывался переходить. По итогу ты бомж, бывает. Дай вселенная твоим детям такую же судьбу 😂
@@Александр-ф9в4ю си на 24 год в топе 3 по популярности, так что не скули
@@Александр-ф9в4юэто очень обидно 😅
а какой смысл оценивать то, о чем ты не имеешь представления. Не смотрел ролик - не комметриуй
...
@@Александр-ф9в4ючувствуется большая обида на язык, Си не всем удается освоить. 😂
Любите си.
Бля, нихера про раст, походу он в него не умеет
Аргументы за Си какие-то детские. Тот, кто выжил -- совершает ошибку выжившего. Тот, кто выжил -- не самый лучший. Это самый худший.
Из всего сказанного понятно что С эволюционировал от системного языка в непонятно что и для чего.
последний стандарт странный. с11 - норм
игры пишут пишут даже на lua
не пишут игры на луа. это язык для всяких модов и внутриигровой логики максимум. и то, если бы его не было, всем было бы лучше
Это не язык, а южноамериканское непотребство.
Да-да. А ML на питоне пишут. Кекв 🗿
@@doodocina скажи это библиотеки love2d где есть несколько хороших игр на нем и corona sdk и куче других движков и библиотек
@@tailogs5825 мне плевать где и что есть. игровые движки - мусор, большинство библиотек - мусор
Скажите пожалуйста, стоит ли учить раст не зная языка Си?
да, после хаскеля будет совсем просто :)
@@User-ux1tm нет никакого учить, есть только писать программы. Если раст под задачи подходит - пиши на нем. А си, бреинфак или Хороший Учебный Язык - это дело, мягко скажем, десятое...
@@iamdozerq нет не десятое. потому чт язык и практика написания на нем приложений-это разные вещи. совсем.
А как вы будете использовать уже существующие библиотеки написанные на С и С++ в Rust проекте учитывая что эти библиотеки не имеют полной документации и вообще их иногда надо патчить ?
стоит, но не учить а сразу попытаться сделать на нем какой нибудь проект :)
Несуществует "мягкого реального времени" реальное время или есть или его нет.
после "как выбрать между С *или* С++" смотреть не стал
Ещё не смотрел, но в чём абсурд фразы? Это не подразделы какого-то одного языка, а разные ЯП. Соответственно да, выбирать надо.
@@kosiak10851 русский язык вышел из чата. между ... ИЛИ ...
Поч
@@alurma не хочется слушать настолько неграмотных людей, вряд ли что-то умное скажут
Почти 3 часа воды ...
На мой вкус очень содержательно, но я студент
Содержательно. Я много нового узнал
@@ulysses.apokin именно про C тут минут 10-30 , остальное вода около Computer Science .
Бла, бла, бла! Пробовал я Ruct, идея прекрасная но симантика гавно. Короче мне не понравилось. Если я лезу функцией в переферию то всё что дальше юзает эту функцию будет небезопасным. Короче одно мозгоёбство!
Круто! Теперь точно не буду учить С!
его и не надо учить, им нужно брать и пользоваться. он настолько простой
Про брать и пользоваться-это просто топ
Си - простой язык. Хочешь себя обворовать, не учи Си! Не слушай то, что в видео говорят.
Невозможно слушать парня в красной рубашке постоянно ААА...АААА....ААА
Почему в Си нет ссылок, или уже завезли?
Потому что нет объектов. Ну и есть указатели
зачем такая абстракция в Си ?
Пока нет. Идея их добавить звучит недурно, но и с указателями тоже справляемся.
потому что тогда С превратится в Go
@@chaquesecondeв цпп тоже есть указатели. ссылки с наличием или отсутствием обьектов никак не связаны, это просто менее декларативный и более абстрагированный способ передачи аргументов
Скучно, ограничено, предвзято. Оно и понятно. Ребята, следующие выпуски давайте про путешествия, еду, ну или фокусы показывайте.
Эээ... аааа... мммм.. да блин, невозможно слушать, два с половиной часа такой пытки!
Как вообще этот Жирков преподавал, или преподает где-то ? Лучше бы тихо сидел и книжки в углу писал, а не над людьми издевался, тем более детьми, мать его(((
Каждый преподаватель, для полной профпригодности, должен пройти полное обследование, или лечение у логопеда, с соответствующей сертификацией - точка!
Три танцора говорят о программирование. Один олух ещё и в математику полез 😅 говорит "математики любят красоту" 😅 😅😅. Математика конечно красивая наука, но совсем не о красоте и не любов к красоте в ней залог успеха. Математика о решение задач, любых. Математическое мышление нацелено на решение задач и без разницы красивым оно будет или нет. Там ни что не диктуется красотой.
Видно парень не из числа мыслителей, но свои фантазии любит распространять.
не согласен про красоту. если твоое-математика,ты будешь в ней видеть красоту. и матан к кодингу каешн имеет отношение в разных плоскостях. а так,красота может заключатся в простоте доказательства. это называется еще -элегантностью. но болтать каешн можно бесконечно насколько у тя богатый внутренний мир,ток толку от болтовни ноль
@@MrChelovek68 красоту можно видеть, везде, не только в математике. И в ремонте домов строителями. Это же не означает что кто пришел в кодинг со стороны строительство тот ищет в нем красоту ...
Элегантности изобретеной в математике нет, математику не изобретают а открывают, она вся есть без учённых, просто неизведанная ещё. Я же сказал в ней есть красота, но цель математика не красота.
И ты прав, болтать можно о чем угодно, исправь же себя на основании понятого тобой. Не будь как этот пустослов в видео.
@@kaihusravnajmiddinov5413 И почему же математику не изобретают, а открывают? А может, математические теории это вид искусства? Искусство не изобретают и не открывают.
@@spirridd нет -не искусство. Математические теоремы и законы - это законы логики/истины. Когда их узнают и доказывают их открывают.
Все доказанные математические формулы были верными до своего доказательство, то есть другими словами работали и были в естестве.
Пример: Пифагор доказал что в прямоугольном треугольнике, квадрат гипотенузы равен сумме квадратов катетов.
Эти суммы были равны и до доказательства Пифагора и до его рождения и до рождения Иисуса. Пифагор просто открыл этот закон.
Вс математика - так. Люди просто могут придумывать названия этим формулам, а они существовали с начало сотворения этого мира.
Искусство - это вообще другое и не точно определенное понятие, и конечно его (искусство) изобретают как раз таки. Ну например картина Репина..
@@kaihusravnajmiddinov5413 Пифагор не просто открыл этот закон. До Пифагора такого закона не было. Вообще, никаким образом не существовало. Как и самого прямоугольного треугольника не существовало. Это математический объект, придуманный человеком.