Про true-сишников
От: Shmj Ниоткуда  
Дата: 12.02.25 16:49
Оценка:
Вот пример проекта: https://github.com/carlini/c-chat-gpt-2/blob/main/c_chat_gpt_2.c https://habr.com/ru/articles/879662/

Замечали ли вы, что на голом Си проекты получаются как бы более компактными и выразительными? Но нужно уметь писать, не пытаться в ООП и пр. извраты.

Интересно же — существуют true-сишники, особый стиль жизни даже — которые гневно не одобряют всякие излишества в языках, приравнивая их к джинсам и жвачке времен СССР. При этом знают тонкости системы, железа на глубочайшем уровне и знают как сделать проще или вообще не делать. Наслышан о таких, но, к сожалению, познакомиться не довелось.

Встречали ли вы таких? Как относитесь?
=сначала спроси у GPT=
Отредактировано 12.02.2025 17:54 Shmj . Предыдущая версия .
Re: Про true-сишников
От: rudzuk  
Дата: 12.02.25 18:48
Оценка: +2 :))) :))) :))) :))) :))) :))) :)
Здравствуйте, Shmj, Вы писали:

S> Интересно же — существуют true-сишники

S> ...
S> Встречали ли вы таких? Как относитесь?

Трусишники Теперь буду ржать, как встречу.
avalon/3.0.2
Re: Про true-сишников
От: vsb Казахстан  
Дата: 12.02.25 19:11
Оценка: +1
У меня такое мировоззрение. Хотя я и Си не одобряю, но из доступного-популярного он ближе остальных к "идеалу". C и Go, в зависимости от уместности GC.
Отредактировано 12.02.2025 19:11 vsb . Предыдущая версия .
Re: Про true-сишников
От: Anton Batenev Россия https://github.com/abbat
Дата: 12.02.25 19:32
Оценка: 1 (1) +6
Здравствуйте, Shmj, Вы писали:

S> Вот пример проекта: https://github.com/carlini/c-chat-gpt-2/blob/main/c_chat_gpt_2.c


По стилистике это писал "бородатый физик в свитере с оленями". Хотя в своей области он может быть весьма ученым мужем, к разработке его лучше не допускать.
Re[2]: Про true-сишников
От: Shmj Ниоткуда  
Дата: 12.02.25 21:07
Оценка:
Здравствуйте, Anton Batenev, Вы писали:

AB>По стилистике это писал "бородатый физик в свитере с оленями". Хотя в своей области он может быть весьма ученым мужем, к разработке его лучше не допускать.


Но он может достаточно ясно выразить в коде идею. Пусть оно будет и не оптимально, без соблюдения Code Conventions и пр. Но будет работать и идея будет сохранена. Потом уже не так сложно привести к нормальному виду и оптимизировать.
=сначала спроси у GPT=
Re: Про true-сишников
От: AleksandrN Россия  
Дата: 12.02.25 21:35
Оценка:
Здравствуйте, Shmj, Вы писали:

S>Интересно же — существуют true-сишники, особый стиль жизни даже — которые гневно не одобряют всякие излишества в языках, приравнивая их к джинсам и жвачке времен СССР. При этом знают тонкости системы, железа на глубочайшем уровне и знают как сделать проще или вообще не делать.


Напомнило Лурк

Бородатые олдфаги, единственные, кто умеет писать ядра операционок, драйвера и системные службы, демонстративно отказываются учить что-то ещё. На самом деле, любой уважающий себя сишник знает не только С++, но и ещё с десяток других языков, главным образом для того, чтобы их обсирать. А на Си они любят писать потому, что код в таком случае получается короче и прямее.

Re[2]: Про true-сишников
От: opfor  
Дата: 13.02.25 01:05
Оценка:
Здравствуйте, AleksandrN, Вы писали:

AN>

AN>Бородатые олдфаги, единственные, кто умеет писать ядра операционок, драйвера и системные службы, демонстративно отказываются учить что-то ещё. На самом деле, любой уважающий себя сишник знает не только С++, но и ещё с десяток других языков, главным образом для того, чтобы их обсирать. А на Си они любят писать потому, что код в таком случае получается короче и прямее.


Да уж, Си прост, как калоша. Не то что эти ваши Swift'ы с какими-то guard'ами, reference cycle'ами и async'ами — пока разберешься, проще на сях свой компилятор написать.
Отредактировано 13.02.2025 1:06 opfor . Предыдущая версия .
Re: Про true-сишников
От: Sinclair Россия https://github.com/evilguest/
Дата: 13.02.25 01:06
Оценка:
Здравствуйте, Shmj, Вы писали:

S>Вот пример проекта: https://github.com/carlini/c-chat-gpt-2/blob/main/c_chat_gpt_2.c https://habr.com/ru/articles/879662/


S>Замечали ли вы, что на голом Си проекты получаются как бы более компактными и выразительными?

Смотря какие проекты. Как я уже говорил — если у вас стоит задача сделать портабельную библиотеку для использования из разных языков, то C будет одним из наилучших вариантов выбора.
А вот, к примеру, какой-нибудь более-менее современный компилятор писать на C — это боль и страдания.
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Re: Про true-сишников
От: amironov79  
Дата: 13.02.25 02:43
Оценка: +1
Здравствуйте, Shmj, Вы писали:

S>Замечали ли вы, что на голом Си проекты получаются как бы более компактными и выразительными? Но нужно уметь писать, не пытаться в ООП и пр. извраты.


Проблема в том, что код на Си выглядит просто и компактно, но в каждой строчки возможна проблема работы с памятью, и без многолетнего опыта объективно оценить качество кода практически невозможно.
Re: Про true-сишников
От: Нomunculus Россия  
Дата: 13.02.25 03:43
Оценка: +8 :)
Здравствуйте, Shmj, Вы писали:

Ох уж эти оптимизаторы писанины хреновы. Любители макросов обдолбанные

#define LOOP(i, j) for (int i = 0; i < j; i++)


Вот сложно да, каждый раз «for” писать??? Неее. Будет вводить свои слова, что читающий каждый раз вспоминал, что ты там за слова напридумывал.
Придурки
Re: Про true-сишников
От: cppguard  
Дата: 13.02.25 06:01
Оценка: +1
Здравствуйте, Shmj, Вы писали:

S>Замечали ли вы, что на голом Си проекты получаются как бы более компактными и выразительными? Но нужно уметь писать, не пытаться в ООП и пр. извраты.


Ага, примерно как на Perl — написать один раз можно, а вот отлаживать или разбираться в таком коде не очень хочется.
Re: Про true-сишников
От: Константин Б. Россия  
Дата: 13.02.25 06:12
Оценка: +3
Здравствуйте, Shmj, Вы писали:

S>Вот пример проекта: https://github.com/carlini/c-chat-gpt-2/blob/main/c_chat_gpt_2.c https://habr.com/ru/articles/879662/


S>Замечали ли вы, что на голом Си проекты получаются как бы более компактными и выразительными? Но нужно уметь писать, не пытаться в ООП


...не делать обработку ошибок и вообще по максимуму срезать углы. Тогда да всё компактно
Re[2]: Про true-сишников
От: rudzuk  
Дата: 13.02.25 06:21
Оценка:
Здравствуйте, Нomunculus, Вы писали:

Н> Будет вводить свои слова, что читающий каждый раз вспоминал, что ты там за слова напридумывал.


Кто сказал Nemerle?
avalon/3.0.2
Re: Про true-сишников
От: LaptevVV Россия  
Дата: 13.02.25 06:39
Оценка: -1 :)
S>Встречали ли вы таких? Как относитесь?
Не только встречал, но и в ресторане вместе обедали не один раз.
И, кстати, он на рсдн присутствует...
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re: Про true-сишников
От: Doom100500 Израиль  
Дата: 13.02.25 06:44
Оценка:
Здравствуйте, Shmj, Вы писали:

S>Вот пример проекта: https://github.com/carlini/c-chat-gpt-2/blob/main/c_chat_gpt_2.c https://habr.com/ru/articles/879662/


S>Замечали ли вы, что на голом Си проекты получаются как бы более компактными и выразительными?


Компактными и выразительными по сравеннию с чем? Можешь показать тоже самое на другом языке, менее или более компактно и выразительно?

Мне кажется, что ты клонишь в сторону излишней многословности плюсов, особенно всяких "компайлтаимовых штучек (C)". Ну так те штучки пишутся в библиотечном, а не в прикладном коде. Здесь же код прикладной. И на плюсах мог бы выглядеть и компактнее и выразительнее.

Был бы, например, std::ifstream, вместо fopen/fclose. Всякие макро, типа LOOP, UNARY, BINARY были бы записаны какими-нибудь лямбдами. Хотя LOOP тут — это пппц .

S> Но нужно уметь писать, не пытаться в ООП и пр. извраты.


А это что?

Matrix a = NewMatrix(rows, cols, 1);


Чем отличается от

Matrix* a = new Matrix(rows, cols, 1)  ?


А вон тот LOOP — это как раз к прочим извратам.
Спасибо за внимание
Re[2]: Про true-сишников
От: alpha21264 СССР  
Дата: 13.02.25 07:10
Оценка:
Здравствуйте, Нomunculus, Вы писали:



Н>Вот сложно да, каждый раз «for” писать??? Неее. Будет вводить свои слова, что читающий каждый раз вспоминал, что ты там за слова напридумывал.

Н>Придурки

linux gdb так написан. Поубивал бы.

Течёт вода Кубань-реки куда велят большевики.
Re[3]: Про true-сишников
От: Нomunculus Россия  
Дата: 13.02.25 07:13
Оценка:
Здравствуйте, alpha21264, Вы писали:

A>linux gdb так написан. Поубивал бы.


Намучался я в одном проекте с одним любителем макросов. У него весь код был в макросах и это невозможно было дебажить. БЛИН!
Re: Про true-сишников
От: Privalov  
Дата: 13.02.25 07:30
Оценка:
Здравствуйте, Shmj, Вы писали:

S>Вот пример проекта: https://github.com/carlini/c-chat-gpt-2/blob/main/c_chat_gpt_2.c https://habr.com/ru/articles/879662/


S>Замечали ли вы, что на голом Си проекты получаются как бы более компактными и выразительными? Но нужно уметь писать, не пытаться в ООП и пр. извраты.


Это что, чатгопота подсказала? В любом случае всё упирается в это "как бы". Какой-то особой выразительности в приведённом коде я не вижу.
Лично я использовал Си в качестве высокоуровневого ассемблера. Сделать вставку в фортрановской программе или JNI.
Re: Про true-сишников
От: wl. Россия  
Дата: 13.02.25 10:53
Оценка:
Здравствуйте, Shmj, Вы писали:

S>Вот пример проекта: https://github.com/carlini/c-chat-gpt-2/blob/main/c_chat_gpt_2.c https://habr.com/ru/articles/879662/


S>Замечали ли вы, что на голом Си проекты получаются как бы более компактными и выразительными? Но нужно уметь писать, не пытаться в ООП и пр. извраты.


не замечал. Обычно какие-то огромные портянки функций на десяток страниц, с глобальными переменными и непонятно где определенными константами и прочими макросами.
Пытался как-то разобраться в одном из аспектов драйвера NVidia под linux — не смог, чисто WriteOnly код повсюду
Re: Про true-сишников
От: Nuzhny Россия https://github.com/Nuzhny007
Дата: 13.02.25 11:12
Оценка: +1
Здравствуйте, Shmj, Вы писали:

S>Вот пример проекта: https://github.com/carlini/c-chat-gpt-2/blob/main/c_chat_gpt_2.c https://habr.com/ru/articles/879662/


Такие проекты начал писать чуть пораньше Андрей Карпаты: llm.c и llama2.c.

S>Замечали ли вы, что на голом Си проекты получаются как бы более компактными и выразительными? Но нужно уметь писать, не пытаться в ООП и пр. извраты.


И... бесполезны. Потому что на практике вылезает куча нюансов и разветвлений, которые не укладываются в первоначальную абстракцию и требуют расширения. А тут либо ООП, либо что-то ещё, чего в С особо и нет из коробки.

S>Встречали ли вы таких? Как относитесь?


Фабрис Беллар сразу всплывает в памяти, как яркий представитель и с чьим кодом в виде ffmpeg имел дело. Отношусь хорошо, для практического применения такого кода всегда приходится писать удобные обёртки. Но внутри он достаточно прост и читабелен, если им просто пользоваться, а не поддерживать.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.