|
|
|
4.350, adolfus (ok), 20:58, 09/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Это же справочник по ANSI C мохнатых годов. Он бесполезен -- уже десять с лишним лет, как третья версия языка (Std ISO/IEC 9899-2011).
| |
|
|
2.66, Аноним (66), 11:38, 07/09/2022 [^] [^^] [^^^] [ответить]
| +2 +/– |
Было бы хорошо при рендере завернуть в html тег <code> куски кода.
Тогда гугл переводчик не будет переводить код
| |
|
|
|
5.213, Аноним (-), 19:27, 07/09/2022 [^] [^^] [^^^] [ответить]
| –1 +/– |
>Тавтологию чувствую здесь я.
Речевой стиль магистра Йоды чувстую Я.
| |
|
|
5.314, Аноним (314), 22:03, 08/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
> Это ментальное рабство. Ваш выбор, не обязательныйдля других.
Это средство обмена информацией с другими айтишниками, чудак. Конечно можно обмениваться информацией с лишь 2% айтишников в своем закутке, но эффективность этого вызывает сомнения.
| |
|
|
|
|
|
2.46, Анонн (?), 11:07, 07/09/2022 [^] [^^] [^^^] [ответить]
| +5 +/– |
... и тоже отстрелить себе ногу, как это годами делают матерые сишники!
| |
|
3.61, Анан00230 (?), 11:32, 07/09/2022 [^] [^^] [^^^] [ответить]
| +13 +/– |
В С нельзя просто так взять и не отстрелить себе ногу - но при должном старании и этому можно научиться.
В Rust нельзя просто так взять и отстрелить себе ногу - но при должном старании и этому можно научиться.
| |
|
4.120, InuYasha (??), 13:07, 07/09/2022 [^] [^^] [^^^] [ответить]
| +5 +/– |
В Java надо эту ногу сначала долго и нудно отращивать, в процессе чего наступит OOM у ружья, оно взорвётся и оторвёт руки.
| |
|
5.128, Аноним (128), 13:24, 07/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Хз, работаю в банке, юзаем 17 жабу и кваркус (даже в нативку не собираем через грааль). На контейнер выделяем ~200 метров в хипе, с автоскейлингом кубера при всплесках RPS уходили в OOM пару раз в квартал. Если у тебя нет в проекте говнокода (по типу stateful бинов-синглтонов, где есть коллекции, в которых объекты накапливаются и никак не изымаются), то сборщик мусора тебе тупо не даст в OOM уйти. Тупо подфризит виртуальную машину на доли секунды, пока чистит (если пользоваться нормальными GC последнего поколения, типа Shenandoah).
| |
|
6.134, Аноним (-), 13:30, 07/09/2022 [^] [^^] [^^^] [ответить]
| +3 +/– |
Ну а си прекрасен тем что в нем всего этого оверинжениринга - и его е...чих проблем - просто нет. Поэтому не надо делать мозг поколениями GC, фризить будет только при ж@порукости кодера, а это все же другое. И на 200 мегах в контейнере можно нехило так разогнаться. Конечно, бины с синглтонами лучше вон тем концептуалам оставить, а то можно и из сей яву случайно сделать.
| |
|
7.176, Аноним (176), 16:50, 07/09/2022 [^] [^^] [^^^] [ответить]
| +3 +/– |
Ну если ты только для себя число пи по вечерам рассчитываешь, а не круглосуточно денежные транзакции крутишь, кредиты клиентам выдаешь или 24/7 интернет-банкинг вертишь, то можно (и нужно!) на си.
| |
|
|
|
10.315, Аноним (-), 22:19, 08/09/2022 [^] [^^] [^^^] [ответить] | +/– | Поэтому ваш код и является лютым УГ которое, конечно, можно всучить всяеим бизне... большой текст свёрнут, показать | |
|
11.325, Аноним (128), 03:40, 09/09/2022 [^] [^^] [^^^] [ответить] | +1 +/– | Дом с гаражом на 8 сотках в частном секторе провинциального миллионника Вы вооб... большой текст свёрнут, показать | |
|
|
|
|
7.211, Аноньимъ (ok), 19:25, 07/09/2022 [^] [^^] [^^^] [ответить]
| +4 +/– |
Как только проект на сишке крупнее хеллоуворд начинается такой оверинженеринг и танцы с конями макросами и кодогенераторами что в жаве с ее фабриками фабрик и не снилось.
| |
|
|
|
10.316, Аноним (-), 22:33, 08/09/2022 [^] [^^] [^^^] [ответить] | +/– | По большому счету да Хотя при желании даже на сях можно и вон тем игогошкам пок... большой текст свёрнут, показать | |
|
|
|
|
|
7.196, лютый ж.... (?), 18:03, 07/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
>Я бы вот это отправил разработчикам elasticsearch :)
Ни разу не было ООМ у эластика, даже с терабайтными базами. Учитывая насколько он вне конкуренции по фичам - ваши вскукареки оставьте при себе )
| |
|
|
|
|
|
|
1.4, Аноним (4), 10:18, 07/09/2022 [ответить] [﹢﹢﹢] [ · · · ]
| –22 +/– |
Я вот лично не понимаю, какой толк сегодня писать на Си. Когда то Си был компромиссом между ЯВУ и асмом. Когда пишешь на асме код конечно получается более компактным, но при этом надо делать много лишней работы. Например думать о распределении регистров. А тут вроде как и на ЯВУ пишешь и код компактный и быстрый получается. Но о быстроте в наше время говорить уже нет смысла, т.к. любой компилятор умеет оптимизировать гораздо лучше, чем человек. Остается только компактность. Насколько я понимаю, в Си нет райнтайма как такового, из за чего код до сих пор может влазить в килобайты/мегабайты памяти. Но это же очень узкий круг девайсов. Это только для прошивок каких-то и микроконтроллеров.
| |
|
2.8, Аноним (8), 10:20, 07/09/2022 [^] [^^] [^^^] [ответить]
| +10 +/– |
>Например думать
конечно надо язык где думать вообще не надо.
| |
|
3.11, Аноним (4), 10:27, 07/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Я писал на ассемблере очень много. Это сейчас в 64х битных процах дофига регистров. А раньше их было только 7. И естественно, что регистры - это самая быстрая память в компе. Так что желательно хранить как можно больше информации именно в них. Но постоянно думать о том, что же оставить в регистрах, а что выкинуть в память - это тот еще геммор. И в какой-то момент я просто осознал, что думаю об этой проблеме больше, чем собственно об алгоритме работы моей программы. Это неправильно.
| |
|
4.15, Аноним (15), 10:33, 07/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
То ещё CISC был и оптимизации кода были очевидны, поскольку была очевидна работа простых процессоров. Под современные суперскалярные процы, RISC-процессоры, и уж тем более всякие VLIW кодить на асме в принципе невозможно.
| |
|
5.129, Аноним (129), 13:24, 07/09/2022 [^] [^^] [^^^] [ответить]
| +3 +/– |
Под логичный и симметричный RISC типа ARM програмить так то сильно приятнее чем под облепленого легаси урода с переусложненным набором команд типа x86 какого. При том вот именно x86-32 еще и по регистровому файлу и режимам адресации урод полный, в 64 битах немного попустило, но на нормальный проц оно похоже достаточно условно.
| |
5.130, Аноним (130), 13:25, 07/09/2022 [^] [^^] [^^^] [ответить]
| +1 +/– |
На асме ключевые узкие по перфомансу места вручную кодить вполне себе можно, полностью конечно никто всю программу писать не будет.
| |
5.225, Аноним (225), 20:33, 07/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
> Под современные суперскалярные процы
Суперскаляры можно и не уполминать уже.
Современные суперскаляры вырождаются в буквальном смысле этого слова в RISC. Там RISC-ядра с эмуляцией инструкций для обратной совместимости.
| |
|
6.301, Аноним (301), 20:10, 08/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Но uCode ROM и "декомпрессия" сложных опкодов в подпрограммы блоков выполнения остались...
| |
|
|
|
3.41, Анонус (?), 10:59, 07/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
>конечно надо язык где думать вообще не надо
Это не так смешно, как тебе хотелось бы. Компьютеры для того и существуют, чтобы облегчать мышление.
| |
|
4.59, Cradle (?), 11:30, 07/09/2022 [^] [^^] [^^^] [ответить]
| +1 +/– |
Не совсем. Потому что, велосипеды существуют чтобы помочь проехать дальше, но не обязательно легче.
| |
|
5.158, Аноним (158), 14:41, 07/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
> Не совсем. Потому что, велосипеды существуют чтобы помочь проехать дальше, но не
> обязательно легче.
Это еще что, некоторые потом обнаруживают что единственно правильный вариант либы - оказывается не обязан быть единственно правильным. И вместо ацкого стдлиба можно и от сторонних лиц библ набрать. При том более подходящих под вон ту задачу.
| |
|
4.71, Diozan (ok), 11:44, 07/09/2022 [^] [^^] [^^^] [ответить]
| +7 +/– |
Облегчить можно душу. Самому облегчиться. А мышление рационализировать. Рутину свалить компьютерам, а самому заняться более высокими категориями...
| |
|
5.122, InuYasha (??), 13:11, 07/09/2022 [^] [^^] [^^^] [ответить]
| –1 +/– |
Как бы я ни был олдсуклен и уверен что каждый ув себя программист должен знать как его код работает, но, всё же, отношу дрочево с регистрами именно к рутине. Причём, длительной и трудоёмкой.
| |
|
4.101, Аноним (101), 12:38, 07/09/2022 [^] [^^] [^^^] [ответить]
| +3 +/– |
> чтобы облегчать мышление
Великолепная фраза. Вы сделали мой день.
| |
|
5.131, Аноним (129), 13:26, 07/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Зато честно сказал чем кормят вас многие кодеры с аргументом "зато накодил это ... за час".
| |
|
4.108, bOOster (ok), 12:46, 07/09/2022 [^] [^^] [^^^] [ответить]
| +1 +/– |
Однако, у компьютера появился "разум"???
Облегчать РЕШЕНИЕ, а не мышление.
| |
4.109, Michael Shigorin (ok), 12:46, 07/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Даже IBM додумались до "машина должна работать, а человек -- думать".
А мышление "облегчают" скорее комиксы и прочая подобная примитивизация, лишающая человека собственно поводов задуматься, как мне сдаётся. И то именно что в кавычках, Diozan в #71 хорошо сказал.
| |
|
5.438, Аноним (438), 04:29, 04/11/2022 [^] [^^] [^^^] [ответить] | +/– | Человек должен думать, безусловно, но он не должен думать за машину Задача чело... большой текст свёрнут, показать | |
|
4.272, Первая буква (?), 09:13, 08/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Как раз и нет. Их задача - выполнять огромное количество однотипных операций в минимальную единицу времени. А все ваши пресловутые ИИ, нейросети и т.д. - это как раз таки и перебор базы готовых решений (очень грубо). Компьютер убирает рутину, но думать легче от этого не становится.
| |
|
3.152, Анан00230 (?), 14:02, 07/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Выдирать фразы из контекста и громко в лоб отвечать на соломенное чучело... Фу так делать
| |
|
2.13, Аноним (15), 10:30, 07/09/2022 [^] [^^] [^^^] [ответить]
| +6 +/– |
Реальность такова, что прогресс электроники заканчивается, а сложность вычислений растёт. Поэтому всю работу по оптимизации в очередной раз скинут на программиста, которому снова придётся выучить низкоуровневые языки и фреймворки. Посмотрите на OpenGL -> Vulkan, типичный пример как за счёт многократного увеличения сложности API удалось увеличить производительность на несколько десятков процентов.
| |
|
3.85, User (??), 12:18, 07/09/2022 [^] [^^] [^^^] [ответить]
| +2 +/– |
Беда в том, что на объёмах, превышающих hello, world! Компилятор оптимизирует лучше человека.
| |
|
4.302, Аноним (-), 20:18, 08/09/2022 [^] [^^] [^^^] [ответить] | +/– | Этой сказке лет наверное 30, если не 50 И хотя в ней есть определенный пойнт, в... большой текст свёрнут, показать | |
|
|
2.28, Аноним (28), 10:47, 07/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Когда-то Си был единственным компромиссом асму. На всём другом Юникс плохо получалось написать.
| |
2.84, Аноним (82), 12:17, 07/09/2022 [^] [^^] [^^^] [ответить]
| –2 +/– |
>Остается только компактность.
Но о компактности в наше время говорить уже нет смысла, т.к. любой магазин компьютерных комплектующих умеет решить эту проблему гораздо лучше, чем человек.
>Насколько я понимаю, в Си нет райнтайма как такового
А crt.o тогда что такое?
| |
|
3.151, Аноним (-), 14:00, 07/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
> А crt.o тогда что такое?
Startup какой-нить. Он так-то опция, начиная с C99 режим freestanding регламентирован, и в нем может быть вообще совсем нихрена. Есть только один мелкий нюанс: у си есть все же некие ожидания от окружения. И вообще совсем без стартапа - окей, а эти ожидания как заимплементятся? В некоторых случаях можно выпендриться и сделать это прямо на си, однако этот кусок кода будет работать с нестандартными допущениями насчет среды выполнения, и это катит не на любом проце.
| |
|
4.205, аНОНИМ (?), 18:37, 07/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
На stm32 стартап прекрасно пишется на самом си, на нём же пишется и например таблица векторов прерываний (помогает ещё и линкер тут со своими weak символами, естественно). Правда, интринсики из CMSIS нужны, ну так они везде нужны, и внутри себя они по сути - инлайновый асмовый код (точнее пара-тройка команд). Весь проект может не содержать ни строчки руками написанного асма.
| |
|
5.277, Аноним (277), 10:19, 08/09/2022 [^] [^^] [^^^] [ответить] | +/– | Да, в cortex M ядро проца дружественно к таким начинаниям И, кстати, я тоже все... большой текст свёрнут, показать | |
|
|
|
2.87, User (??), 12:23, 07/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Грехи отцов падут на детей. Поддержка legacy с нами ещё долго останется
| |
|
3.150, Анан00230 (?), 14:00, 07/09/2022 [^] [^^] [^^^] [ответить]
| +1 +/– |
Проблема не в том должен программист думать или не должен. Проблема в том что программист продолжает думать над задачами, которые уже по факту имеют хорошее типовое решение, ничем не отличающееся по качеству от того, над которым он усердно думает.
Это еще более-менее может быть понятно в образовательных целях, но когда это происходит на постоянной основе в production коде, вот тогда и появляется ощущение что вся индустрия it мягко говоря растрачивает интеллектуальные ресурсы попусту
| |
|
4.228, Sw00p aka Jerom (?), 21:00, 07/09/2022 [^] [^^] [^^^] [ответить]
| +1 +/– |
>типовое решение, ничем не отличающееся по качеству от того, над которым он усердно думает.
долго надо было думать, чтобы написать left-pad? вот и типовое решение которое акнулось
| |
|
|
2.116, Ivan_83 (ok), 12:52, 07/09/2022 [^] [^^] [^^^] [ответить]
| –1 +/– |
Только вместо яву можно подставить что угодно, в мою молодость там было паскаль, потом делфи и вижал бейсик.
Всё сдохло, С остался.
У меня наверное четверть пакетов в системе на С, и сама система тоже.
XFCE, GTK - всё ещё на С.
Очень удобно когда можешь отдебажить кучу приложений и тут же их пофиксить.
Правда я и остальные диалекты понимаю, но плохо говорить. )
| |
|
|
4.265, Ivan_83 (ok), 07:56, 08/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Там шрифтов штук 50, и ещё всякие разные пакеты, питона штук 30 и хз чего ещё и на какой экзотике.
| |
|
|
2.203, аНОНИМ (?), 18:34, 07/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Далеко не любой (точнее никакой не) компилятор умеет оптимизировать лучше человека. Пишем ну например реализацию какого-нить sha1 или sha256 на си на интринсиках из SHA-NI, и получается у нас медленнее чем ручно-асмовый код в openssl. Ручными (!) унроллами циклов и перестановками операций можно чуть поднять быстродействие, но всё равно будет медленнее openssl. Из той же оперы и какой-нить ffmpeg, где практически все иннерлупы жатия видео -- на асме.
| |
|
3.278, Аноним (277), 10:23, 08/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Как бы это сказать? Какой-нибудь LTO иногда глобальным анализом может такое навернуть, что человек бы вообще не додумался бы. Возьмет и аннулирует 80% функции доказав что эта часть никогда не вызывается при использовании как тут. Да еще смержит с 2 похожими наполовину. Вручную так делать мало кто захочет - "хакерский" мегаоптимизнутый код читать будет невозможно. Но в кодогенераторе при оптимизации все это не проблемы человека уже.
Но да, в локальных горячих кусках компилер может и хрень сделать, асм или интринсики в этом сильно предсказуемее и зачастую лучше.
| |
3.286, n00by (ok), 11:36, 08/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
sha1 оптимизируется вот так:
t < 20 ? (c ^ d) & b ^ d // b & c | ~b & d
: t < 40 ? b ^ c ^ d
: t < 60 ? (c | d) & b | c & d // b & c | b & d | c & d
:/* < 80 */ b ^ c ^ d;
но почему-то не везде.
| |
|
4.303, Аноним (-), 20:21, 08/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
А эта конструкция точно имеет постоянное время выполнения, не зависящая от входных данных?
Если нет - оно будет дико течь тайминги, давая зеленый свет тайминг атакам всех мастей и направлений. Учитывая что SHA1 и так то на ладан дышит (коллизию на заказ подогнать стоит примерно ~$30k) - это такое знание древних которое уже не очень актуально стало. Ладно бы еще SHA256 оптимизили..
| |
|
5.331, n00by (ok), 09:47, 09/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Эта конструкция при прочих равных исполняется быстрее эталонной из FIPS, поскольку уменьшено количество операций. Писалась она во времена, когда sha1 ещё считался приемлемым и повсюду работали варианты из комментария.
| |
|
6.358, Аноним (-), 12:36, 10/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
> Эта конструкция при прочих равных исполняется быстрее эталонной из FIPS, поскольку уменьшено
> количество операций. Писалась она во времена, когда sha1 ещё считался приемлемым
> и повсюду работали варианты из комментария.
В крипто "быстрее" не единственный критерий успеха алгоритмов и его реализации. А по состоянию на сейчас вы занимаетесь тем что учите народ плохому, как делать не надо. Это ведет к "опенсорсу который вы заслужили" так то.
| |
|
7.368, n00by (ok), 13:37, 10/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Если кто забыл начало ветки - так она началась с «зачем нужен Си, когда компиляторы умнее людей», а подветка - с оптимизаций sha1 путём раскрутки циклов и ещё какой-то механической по сути работы. А там выше я написал то, что каждый из экспертов по оптимизации мог бы прочесть например у Генри С.Уоррена. Может ли компилятор произвести такое преобразование? Вот что имеет смысл по теме. Насколько понимаю, sha1 не считается стойким криптопреобразованием более десяти лет, так что и говорить об алгоритме в этом контексте не приходится.
| |
|
|
|
|
|
2.326, myhand (ok), 05:58, 09/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
> Например думать
Ну, тут уже оттоптались.
> о быстроте в наше время говорить уже нет смысла
Рука тянется к наградному парабеллуму...
| |
|
1.6, Бывалый смузихлёб (?), 10:18, 07/09/2022 [ответить] [﹢﹢﹢] [ · · · ]
| –8 +/– |
не раскрыта тема, на кой чёрт вообще нужны именно гнутые расширения языка - они слишком специфичны, едва ли это сильно применимо и универсально
| |
|
2.10, Аноним (10), 10:27, 07/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Работать с этим языком без них довольно больно. А вот то, что оглавления в пдфке нет, действительно заслуживает всяческого порицания.
| |
|
3.112, bOOster (ok), 12:49, 07/09/2022 [^] [^^] [^^^] [ответить]
| –3 +/– |
Работать с ними довольно больно делает всем остальным, не оголтелым фанатикам ГНУ
| |
|
|
5.132, n00by (ok), 13:29, 07/09/2022 [^] [^^] [^^^] [ответить]
| –6 +/– |
Автономные программисты Rosa Tresh впадают в ступор, когда alloca() вызывает переполнение стека. Правда, они как раз оголтелые фанаты GNU, в смысле GPL.
| |
|
6.369, Аноним (-), 14:33, 10/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
> Автономные программисты Rosa Tresh впадают в ступор, когда alloca() вызывает переполнение
> стека. Правда, они как раз оголтелые фанаты GNU, в смысле GPL.
Опять все беды от росы? У вас програмер из росы жену чтоли увел?
| |
|
7.370, n00by (ok), 14:39, 10/09/2022 [^] [^^] [^^^] [ответить]
| –1 +/– |
>> Автономные программисты Rosa Tresh впадают в ступор, когда alloca() вызывает переполнение
>> стека. Правда, они как раз оголтелые фанаты GNU, в смысле GPL.
> Опять все беды от росы? У вас програмер из росы жену чтоли
> увел?
Да, все твои беды от «росы». Именно из-за принадлежности к этой секте ты не осилил понять смысл ветки. Человек спросил о проблемах alloca(), я привёл пример из жизни. Твоим друзьям показали конкретную строку, а они не знали что с этим делать. Неделю. Я видел всякое, но нигде больше в одном месте не было столько глупых и неумелых, как там, так что других примеров у меня нет.
| |
|
8.380, Аноним (-), 09:06, 11/09/2022 [^] [^^] [^^^] [ответить] | +/– | Я вообще росой не пользуюсь и знаю о ней только то что она существует Ну и еще ... большой текст свёрнут, показать | |
|
9.382, n00by (ok), 10:09, 11/09/2022 [^] [^^] [^^^] [ответить] | +/– | Запросто Называется duck typing И они про это поставлены в известность, и абст... большой текст свёрнут, показать | |
|
10.385, Аноним (-), 10:44, 11/09/2022 [^] [^^] [^^^] [ответить] | +/– | Я почему-то думал что это дело называется толи фиксацией, толи обсессией В отве... большой текст свёрнут, показать | |
|
11.386, n00by (ok), 13:06, 11/09/2022 [^] [^^] [^^^] [ответить] | +/– | Может, проекцией Ну как бы бегать за мной с одним и тем же и писать про фиксаци... большой текст свёрнут, показать | |
|
12.387, Аноним (-), 13:48, 11/09/2022 [^] [^^] [^^^] [ответить] | +/– | Да я вроде за всю жизнь это тебе писал раза 2 или 3 Явно меньше чем ты эту росу... большой текст свёрнут, показать | |
|
13.392, n00by (ok), 15:43, 11/09/2022 [^] [^^] [^^^] [ответить] | +/– | Да, пару раз Потому что остальные дцать раз Анон писал такое и пропадал Есть ... большой текст свёрнут, показать | |
|
|
15.429, n00by (ok), 13:02, 13/09/2022 [^] [^^] [^^^] [ответить] | +/– | Так и сторон бывает много, как ни странно Нет, и я не вижу у них конкурентов, е... большой текст свёрнут, показать | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.86, Аноним (82), 12:19, 07/09/2022 [^] [^^] [^^^] [ответить]
| +1 +/– |
Хочу Rust с расширениями GNU. Пусть расширят его средствами ООП.
| |
|
|
5.144, Бывалый смузихлёб (?), 13:50, 07/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
> Хотелка уже выросла?
не более чем в гнутые расширения, надо полагать
Ведь мир не ограничивается одной лишь гнутостью
| |
|
4.427, Аноним (427), 11:01, 13/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
> Хочу Rust с расширениями GNU.
Coming soon! Фронтэнд вроде уже взяли или вот-вот возьмут в очередной релиз GCC.
| |
|
3.244, Аноним (243), 23:06, 07/09/2022 [^] [^^] [^^^] [ответить]
| –1 +/– |
"Абрикосы с асбестом. Хочешь без асбесда - возьми другие."
Ну это само собой.
| |
|
2.154, Аноним (-), 14:11, 07/09/2022 [^] [^^] [^^^] [ответить] | +/– | Там есть и красивые удобные штуки Типа switch case на диапазон сразу На мой в... большой текст свёрнут, показать | |
|
3.220, Карабьян (?), 20:16, 07/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
И эти люди охаивали майкрософт за ембрейс ехтингвиш и далее. Но МС никогда Си не поганила
| |
|
|
5.317, Аноним (-), 22:38, 08/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
> #pragma declspec
У MSVC вообще довольно много incompat такого плана. А еще он не умеет __attribute__ допустим, как gcc или шланг, при том что атрибуты как-то мощнее и адреснее в указании к чему это по факту применяется.
| |
|
4.256, Аноним (255), 02:14, 08/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Я больше скажу. MS никогда C и не поддерживала. Только C++ с огрызком стандартной библиотеки C.
| |
|
5.280, Аноним (280), 10:31, 08/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
> Я больше скажу. MS никогда C и не поддерживала. Только C++ с
> огрызком стандартной библиотеки C.
Ну как не поддерживала, DOS они на сях писали, как и винды во многом, так что вьюжлси таки си умеет. Просто потом их на плюсоту потянуло и на си они забили. А так глядя на скорость работы винды и линуха с большими иерархиями файлов, например - простите но винду клинит в разы хуже, и мысль что у них офигенное ядро получилась на этом фоне чего-то не убедительна.
И вообще, линуксоид может отстроить себе ядро на не очень крутой машине. Удачи в обычном домашнем окружении винду или какой-то ее кус вообще отребилдить без мытарств, даже если б вам сорц и дали.
| |
|
6.287, n00by (ok), 11:45, 08/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
У Виндоса ядро офигенное получилось для того времени. Когда оперативной памяти было мало, экзешники там быстрее отображались в память и её экономили, не генерируя лишних грязных страниц. Ныне памяти в разы больше, данные с накопителя быстрее читать большим блоком, тогдашние оптимизации как бы вредят.
| |
|
7.304, Аноним (-), 20:36, 08/09/2022 [^] [^^] [^^^] [ответить] | +/– | В NT4 и винтукее - ну да, нормально Однако владельцем оно все же не вышло и мар... большой текст свёрнут, показать | |
|
8.332, n00by (ok), 10:01, 09/09/2022 [^] [^^] [^^^] [ответить] | +/– | Венгерской нотации же szString Или начинать имена классов с C Микрософт ... большой текст свёрнут, показать | |
|
9.359, Аноним (-), 12:55, 10/09/2022 [^] [^^] [^^^] [ответить] | +/– | Да ну спасибо Со своей стороны я считаю что в целом моя возня с виндами того не... большой текст свёрнут, показать | |
|
|
|
6.321, Аноним (321), 23:56, 08/09/2022 [^] [^^] [^^^] [ответить]
| +1 +/– |
Не знаю, на чем они там DOS писали, но компилятора C у них никогда не было. MSVC - это компилятор C++. И да, даже если твой код не использует возможностей C++ и внешне похож на C, его интерпретация компилятором C и C++ будет разной.
| |
|
7.333, n00by (ok), 10:16, 09/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
/Tc Указывает исходный файл на языке C.
/TC Указывает, что все исходные файлы — C.
/Tp Указывает исходный файл на языке C++.
/TP Указывает, что все исходные файлы являются C++.
Но Си там был своеобразный.
| |
7.360, Аноним (-), 12:58, 10/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
> Не знаю, на чем они там DOS писали, но компилятора C у них никогда не было.
Да что ты? А что такое было, допустим, Microsoft C 80? :)
> MSVC - это компилятор C++.
Он видимо вырос из какого-то сишного предшественника. Давным давно был вот какой-то именно майкрософт, именно си. Да и название "вьюжл си" как бы намекает. А то что там потом и плюсы появились - так они у почти всех развитых тулчейнов со временем появились.
> И да, даже если твой код не использует возможностей C++ и внешне похож на C,
> его интерпретация компилятором C и C++ будет разной.
Спасибо капитан очевидность.
| |
|
6.322, Аноним (321), 23:59, 08/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
> А так глядя на скорость работы винды и линуха с большими иерархиями файлов, например - простите но винду клинит в разы хуже, и мысль что у них офигенное ядро получилась на этом фоне чего-то не убедительна.
Скорость работы файловой системы никак не связана с выбором ЯП.
| |
|
7.361, Аноним (-), 12:59, 10/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
> Скорость работы файловой системы никак не связана с выбором ЯП.
Как бы это сказать? Лично мне не нравится как работает виндозное ядро по довольно многим аспектам. По поводу чего я и кривлю рожу на тему "ну что, майкрософт, помогли тебе твои плюсы?"
| |
|
|
|
4.279, Аноним (277), 10:27, 08/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
> никогда Си не поганила
Да куда им?! Их кусок позора в виде студии даже C99 до конца не умеет вроде аж до сих пор. И если на них равняться... маздайцы все как один пишут на "C++". Который по факту оказывается C99, ради коментов // и чего еще по мелочи. Не, даже классы не юзают и какие там еще неймспейсы, чисто меняют расширение для менее мерзотного компилера. А заодно и по оптимизациям студия уже давно перестала быть впереди планеты всей: gcc и clang ее во многих случаях делают с отрывом.
Так что никто не собирается на майков равняться в случае си. Они делом доказали что их компилер дикий ацтой.
| |
|
|
2.232, Анонн (?), 21:52, 07/09/2022 [^] [^^] [^^^] [ответить]
| +1 +/– |
Нужны чтобы ядро нельзя было скомпилить ни на чем кроме гыцц. Но нехорошие люди из llvm и с этим справились, поэтому придется придумывать другую пакость..
| |
|
3.344, Аноним (341), 14:33, 09/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Это не люди из LLVM справились, это кернелдевелоперы пошли навстречу. Поубирали некоторые/многие расширения из кода ядра.
| |
|
|
1.7, Аноним (7), 10:19, 07/09/2022 [ответить] [﹢﹢﹢] [ · · · ]
| –2 +/– |
> языковых расширениях, разработанных проектом GNU
Зря. Для лучшей переносимости лучше следовать единому стандарту, а не местечковым расширениям.
| |
|
2.111, Michael Shigorin (ok), 12:49, 07/09/2022 [^] [^^] [^^^] [ответить]
| +3 +/– |
Мне лет десять назад упоминали, что RMS ходил по проектам и призывал не принимать патчи для поддержки LLVM. Напрягло очень сильно, поскольку это и есть тот самый vendor lock. Надеюсь, Ричард с тех пор усовестился на этот счёт (но вроде бы не спрашивал)...
| |
|
3.263, Карабьян (?), 06:55, 08/09/2022 [^] [^^] [^^^] [ответить]
| +2 +/– |
> Мне лет десять назад упоминали, что RMS ходил по проектам и призывал
> не принимать патчи для поддержки LLVM. Напрягло очень сильно, поскольку
> это и есть тот самый vendor lock. Надеюсь, Ричард с
> тех пор усовестился на этот счёт (но вроде бы не спрашивал)...
А ведь он и автор autotools в том числе, призванных упростить смену компилятора в том числе. Хочется верить, что все-таки это неправда
| |
3.270, Аноним (269), 08:56, 08/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Так получается, что vendor lock это LLVM, раз для его поддержки нужно особые патчи в проекты добавлять.
| |
|
4.281, Аноним (280), 10:33, 08/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
> Так получается, что vendor lock это LLVM, раз для его поддержки нужно
> особые патчи в проекты добавлять.
Все проще: кернелам, фирмварям, бутлоадерам и т.п. низкоуровневому софту обычно надо некоторые вещи, которые в стандартах все же не регламентированы.
| |
|
|
2.136, n00by (ok), 13:33, 07/09/2022 [^] [^^] [^^^] [ответить]
| +3 +/– |
Часть расширений компиляторов (не обязательно GNU) в итоге попадают в стандарт.
| |
|
1.17, sergeyb (ok), 10:37, 07/09/2022 [ответить] [﹢﹢﹢] [ · · · ]
| –13 +/– |
Открываем раздел "5.8 Recursive Functions", копируем пример, собираем, запускаем.
'''
sergeyb@pony:$ cat fac.c
int
factorial(int x)
{
if (x < 1)
return 1;
else
return (x * factorial (x - 1));
}
int
main() {
factorial(1000000000);
}
sergeyb@pony:$ gcc fac.c
sergeyb@pony:$ ./a.out
Segmentation fault (core dumped)
sergeyb@pony:$
'''
Отличный учебник!
| |
|
2.19, pashev.ru (?), 10:42, 07/09/2022 [^] [^^] [^^^] [ответить]
| +3 +/– |
Ты дурак. Рекурсивная функция показана? Показана. Особенности перечислены? Перечислены. Какие претензии?
| |
|
|
4.102, Аноним (101), 12:40, 07/09/2022 [^] [^^] [^^^] [ответить]
| +3 +/– |
Восхваляя рекурсивные алгоритмы, забывают, что проблема именно в стеке. Да, кстати, и факториал так считать неэффективно. Примеры должны быть простыми, но не тупыми.
| |
|
5.155, Аноним (-), 14:14, 07/09/2022 [^] [^^] [^^^] [ответить]
| +2 +/– |
> Восхваляя рекурсивные алгоритмы, забывают, что проблема именно в стеке. Да, кстати, и
> факториал так считать неэффективно. Примеры должны быть простыми, но не тупыми.
Понимаешь ли в чем дело, чудак...
1) Си сам по себе на уровне спеков ... вообще ничерта не говорит про стек и аллокацию.
2) У оптимизера на этот счет бывают какие-то очень сильно свои идеи. Он настолько умный что даже щеленаправленые попытки уронить программу подобной по смыслу конструкцией ронять ничего не хотят, потому что оптимизер вообще ухитрился аннулировать работу со стеком, а иной раз и вообще скостив весь код до условного "return 10050", ну или сколько там получалось :)
| |
5.166, vdb (?), 15:45, 07/09/2022 [^] [^^] [^^^] [ответить]
| +2 +/– |
> Восхваляя рекурсивные алгоритмы, забывают, что проблема именно в стеке.
Следующая глава книги: "1.2 The Stack, And Stack Overflow".
| |
|
6.181, n00by (ok), 16:57, 07/09/2022 [^] [^^] [^^^] [ответить]
| –1 +/– |
>> Восхваляя рекурсивные алгоритмы, забывают, что проблема именно в стеке.
> Следующая глава книги: "1.2 The Stack, And Stack Overflow".
Такая глава следует после рекурсивной Фибоначчи:
if (n <= 2)
return 1;
else
return fib (n - 1) + fib (n - 2);
В исходном сообщении совсем другая функция:
if (x < 1)
return 1;
else
return (x * factorial (x - 1));
Не знаю, откуда взял её автор сообщения, но это не просто рекурсия, а хвостовая рекурсия - ей не нужен стек.
| |
|
7.184, другой аноним (?), 17:13, 07/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
(занудно) это НЕ хвостовая рекурсия. Хвостовая рекурсия -- это ТОЛЬКО return factorial(...) и ничего больше. Вызов функции должен быть строго последним действием перед возвратом, а у Вас последнее действие -- умножение. Факториал МОЖНО переписать в виде хвостовой рекурсии, но Вы этого не сделали. Вам для этого потребуется вспомогательная функция с двумя аргументами.
| |
|
8.187, n00by (ok), 17:20, 07/09/2022 [^] [^^] [^^^] [ответить] | +1 +/– | А вот код из главы 1 2 The Stack, And Stack Overflow без изменений int fill_sta... текст свёрнут, показать | |
|
|
|
|
|
|
14.388, Аноним (-), 14:09, 11/09/2022 [^] [^^] [^^^] [ответить] | +/– | Насколько я понимаю - потому что это быстрее и без ряда дурных проблем Ну то-ес... большой текст свёрнут, показать | |
|
15.390, n00by (ok), 15:08, 11/09/2022 [^] [^^] [^^^] [ответить] | +/– | Такому аллокатору не нужна ни стдлиб, ни куча Нужен отдельный от стека блок пам... большой текст свёрнут, показать | |
|
16.393, Аноним (-), 16:04, 11/09/2022 [^] [^^] [^^^] [ответить] | +/– | А сам весьма немаленький код этого аллокатора откуда вообще тогда возьмется И ч... большой текст свёрнут, показать | |
|
17.396, n00by (ok), 17:08, 11/09/2022 [^] [^^] [^^^] [ответить] | +/– | Код сейчас это sub rsp, NN Будет add rbp, NN Но можно и sub, не суть Ещё один... большой текст свёрнут, показать | |
|
|
|
20.413, Аноним (413), 15:47, 12/09/2022 [^] [^^] [^^^] [ответить] | +/– | Это работает в 90 случаев но в остальных 10 забавно выставляет адепта метода р... большой текст свёрнут, показать | |
22.428, Аноним (-), 11:59, 13/09/2022 [^] [^^] [^^^] [ответить] | +/– | Ну так то оно наверное может работать, но кажется это будет не бесплатно При то... большой текст свёрнут, показать | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5.156, Аноним (-), 14:18, 07/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
> И ты дурак. Читать-то умеешь? Книгу-то просмотрел?
Он то как раз не дурак. Особенно в си. Ну вот видно это. Почему-то.
| |
|
6.160, pashev.ru (?), 14:52, 07/09/2022 [^] [^^] [^^^] [ответить]
| +4 +/– |
Только дурак может выискивать проблемы у примера, который и приведён для рассмотрения этих проблем.
| |
|
7.182, n00by (ok), 17:04, 07/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
А где он приведён? Я вижу в книге Фибоначчи. А то, что дружно заминусовали эксперты - оптимизируется в цикл.
| |
|
|
|
|
|
|
3.60, pashev.ru (?), 11:32, 07/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Глядишь в книгу, видишь фигу.
> @section The Stack, And Stack Overflow
Тебе в Сбербанке работать.
| |
|
4.65, Аноним (65), 11:36, 07/09/2022 [^] [^^] [^^^] [ответить]
| +1 +/– |
Вы все смотрите в разные книги, а один еще и сам придумывает как код уронить и жалуется на книгу, а не на себя. Что с вами со всеми не так?
| |
|
|
6.114, Michael Shigorin (ok), 12:52, 07/09/2022 [^] [^^] [^^^] [ответить]
| –2 +/– |
Мне вот интересно, кем надо быть, чтоб Бронникова (openvz, среди прочего) в бакланы зачислить -- скорее Торвальдсом или всё же скорее?..
| |
|
7.285, Alexey (??), 10:46, 08/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Не плюй в колодец, вылетит - не поймаешь!
Интернет злой. Карму сольют мгновенно.
Вот к вам в Базальт подут и начнут вас обвинять, что при установке Альта сломалась 10ка.
Куда вы пошлёте умника?
Так и с неудачным использованием правильного примера рекурсии.
| |
|
|
5.104, Аноним (101), 12:42, 07/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
> Вы все смотрите в разные книги
Ну верно. Их там 3 штуки. Одна в новости и две в первой ссылке обсуждения.
| |
|
|
|
2.53, Аноним (57), 11:18, 07/09/2022 [^] [^^] [^^^] [ответить]
| +2 +/– |
Срамота!
1. Открыл не тот учебник.
2. В том что ты открыл есть код только функции factorial, main там отсутствует.
3. Подставляешь в вызов функции int константу 1000000000.
Веб-макака шоль?
| |
2.125, Аноним (125), 13:18, 07/09/2022 [^] [^^] [^^^] [ответить]
| +1 +/– |
> factorial(1000000000)
Как учили нас когда-то: «Факториал – страшная функция. Если она появляется в твоём расчёте – избавься от неё».
Ты что подаёшь в качестве аргумента, лапоть?
| |
|
3.306, uis (??), 21:03, 08/09/2022 [^] [^^] [^^^] [ответить]
| +1 +/– |
Вопрос: сколько нулей в этом факториале.
> Факториал – страшная функция. Если она появляется в твоём расчёте – избавься от неё
Абсолютно верно
| |
|
2.145, n00by (ok), 13:50, 07/09/2022 [^] [^^] [^^^] [ответить]
| –1 +/– |
>[оверквотинг удален]
> int
> factorial(int x)
> {
> if (x < 1)
> return 1;
> else
> return (x * factorial (x - 1));
> }
> '''
> Отличный учебник!
Отличный пример.
-foptimize-sibling-calls
Optimize sibling and tail recursive calls.
Enabled at levels -O2, -O3, -Os.
| |
|
3.183, freehck (ok), 17:12, 07/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
> -foptimize-sibling-calls
> Optimize sibling and tail recursive calls.
> Enabled at levels -O2, -O3, -Os.
И это ему очевидно не поможет, потому что писать надо так:
int factorial_iter(int acc, int n) {
if (n <= 1) return acc;
return (factorial_iter(acc*n, n-1));
}
int factorial(int n) {
return (factorial_iter(1,n));
}
| |
|
4.189, n00by (ok), 17:28, 07/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
>[оверквотинг удален]
>> Optimize sibling and tail recursive calls.
>> Enabled at levels -O2, -O3, -Os.
> И это ему очевидно не поможет, потому что писать надо так:
> int factorial_iter(int acc, int n) {
> if (n <= 1) return acc;
> return (factorial_iter(acc*n, n-1));
> }
> int factorial(int n) {
> return (factorial_iter(1,n));
> }
Так в книге другой код. Там вот таким переполняют стек:
int
fill_stack (int n)
{
if (n <= 1) /* This limits the depth of recursion. */
return 1;
else
return fill_stack (n - 1);
}
Откуда взялся факториал и глава 5.8 - я не знаю, но похоже, что предложен исправленный вариант, или намёк, что надо объяснять в той главе про оптимизации.
| |
|
|
2.204, Alexey (??), 18:35, 07/09/2022 [^] [^^] [^^^] [ответить]
| +2 +/– |
Тебя же уже в телеге макнули в твой выхлоп?
В книге правильный пример.
Вами он неправильно использован.
Кто виноват?
RMS? нет.
| |
|
|
|
|
4.76, Аноним (76), 11:56, 07/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Ты тоже не пропадай, а то мы тут не в курсе кто кого тут должен держать в курсе.
| |
|
|
6.170, Аноним (170), 16:05, 07/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Открыт набор на курс держания анонимов. Успейте записаться, только сейчас скидки 10% по промокоду анон.
| |
|
5.97, Массоны Рептилоиды (?), 12:33, 07/09/2022 [^] [^^] [^^^] [ответить]
| +4 +/– |
держу в курсе что он держит в курсе что он держит в курсе что он держит в курсе что он держит в курсе
Segmentation fault (core dumped)
| |
|
|
|
|
|
|
|
4.106, Аноним (101), 12:44, 07/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Конечно, шутка. Он Тондо-Гимпела забыл приложить (книга ответов для Кернигана-Ритчи).
| |
|
|
4.167, Аноним (167), 15:48, 07/09/2022 [^] [^^] [^^^] [ответить]
| +1 +/– |
Не надо Страуструпа ругать! Большая удобная книга, можно как подставку под монитор использовать
| |
|
5.283, Аноним (280), 10:40, 08/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
> Не надо Страуструпа ругать! Большая удобная книга, можно как подставку под монитор
> использовать
У современных нормальных мониторов подставка и без дохлых страусов регулируется!
| |
|
|
|
|
5.246, Аноним (157), 23:26, 07/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Варнинги и опечатки в книге мы не рассматриваем.
В главах 1.9 и 1.10 есть программки с функцией getline(), эти программы не компилятся современными компиляторами. Впрочем можно собрать с -std=c89.
| |
|
|
|
|
|
|
3.185, Аноним (185), 17:18, 07/09/2022 [^] [^^] [^^^] [ответить]
| –8 +/– |
[[[ To any NSA and FBI agents reading my email: please consider ]]]
[[[ whether defending the US Constitution against all enemies, ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]
Как же старикашка недоканселиный надоел этим параграфом ко всем своим письмам, показывает себя идиотом.
// b.
| |
|
4.346, Аноним (346), 15:34, 09/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Надоел. Дико. Хотя я за всё время прочёл менее 10 его писем.
А теперь представь, каково агентам АНБ и ФБР, которые это вынуждены читать! :)
| |
|
|
|
1.30, Аноним (30), 10:51, 07/09/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
А почему рендеринг в pdf такой кривой, что от слова "Manual" на титульной странице осталась только половина?
| |
|
|
3.67, Аноним (67), 11:38, 07/09/2022 [^] [^^] [^^^] [ответить]
| +2 +/– |
Там двумя строчками выше написано, что ещё не отпечатано на бумаге, потому и ISBN нет.
| |
|
2.78, Аноним (10), 11:56, 07/09/2022 [^] [^^] [^^^] [ответить]
| +2 +/– |
Я думаю, это может быть связано с тем, что человек, писавший и компилировавший материалы в пдф, не имеет возможности проверить результат. Во-первых, это богомерзкий проприетарный формат с дрм и врождённой дырявостью, и, во-вторых, консольных читалок что-то не видно на горизонте. Отсюда и столько совершенно очевидных косяков, и с ссылками, и с конвертацией. Не ищет лёгких путей, но можно было бы завести отдельный девайс, используемый специально для таких вещей -- излишняя принципиальность только вредит.
| |
|
3.174, Аноним (34), 16:34, 07/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Посочувствуем человеку, у которого в 2022 году нет графического терминала.
> консольных читалок что-то не видно на горизонте.
Хорошая шутка.
Нет, ну в принципе, можно и видео через caca смотреть…
Но в целом есть поговорка: не можешь какать — не мучай попу.
| |
|
4.310, Аноним (-), 21:11, 08/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
> Посочувствуем человеку, у которого в 2022 году нет графического терминала.
Скажи, сколько ты со своим якобы-высокоэффективным обвесом дельных книжек написал? Да еще претендующих на ISBN? Урлу скачать дашь? А компилеров которые кому-то еще и нужны будут сколько сделал? А то может оказаться, что ты, обвешаный современными средствами, всего лишь унылый балласт по сравнению с тем консольным олдскулером. И это, кстати, баг а не фича.
> Нет, ну в принципе, можно и видео через caca смотреть…
Да вот знаете, рак даже с суперсовременным обвесом остается раком. А профи много и не надо, на то и прояи.
> Но в целом есть поговорка: не можешь какать — не мучай попу.
Самокритично. Но с вон тем сообщением тебя на недержание все же пробило.
| |
|
|
2.98, fuggy (ok), 12:36, 07/09/2022 [^] [^^] [^^^] [ответить]
| –1 +/– |
Ты ещё спроси почему оглавление пустое в pdf по ссылке в новости.
| |
|
1.70, Аноним (4), 11:43, 07/09/2022 [ответить] [﹢﹢﹢] [ · · · ]
| –8 +/– |
Может я не прав, но во первых не вижу сегодня смысла писать не на Плюсах, которые по сути просто надстройка над Сями, реализующая все недостающие фичи. А во вторых все еще считаю Си плохо читаемым языком, который за свою долгую жизнь просто наводнился различного рода костылями и подпорками. Все вот эти _AbRaCaDaBrA_ и другие лишние знаки припенания. Почему бы не писать по человечески?
| |
|
|
3.75, Аноним (76), 11:55, 07/09/2022 [^] [^^] [^^^] [ответить]
| +6 +/– |
Я вот думаю, что сила в карбоне. У кого карбон – тот и сильней. Вот раст обманул кого-то, денег нажил. И чего, раст сильнее стал? Нет, не стал. Потому что правды за растом нет. А тот, у кого карбон, за ним правда, значит, он сильней
| |
|
2.81, Аноним (81), 12:02, 07/09/2022 [^] [^^] [^^^] [ответить]
| +6 +/– |
> не вижу сегодня смысла писать не на Плюсах
либу на си легко заюзать из других языков. К примеру, GLib/GObject, а также все другие либы, базирующиеся на них, автоматически получают автоматические биндинги ко всем популярным скриптовым языкам. Ну а либа на плюсах так и останется либой на плюсах.
если софт представляет из себя монструозный комбайн, то наверное да, стоило бы предпочесть плюсы сям. А для всего остального хватает и си. Си - это дефолтный язык, и отклонение от дефолта следует обосновывать в каждом отдельном случае.
| |
|
3.123, Аноним (4), 13:12, 07/09/2022 [^] [^^] [^^^] [ответить]
| –3 +/– |
Если я правильно помню, в Сях нету даже такой банальной вещи, как передача переменной в функцию по ссылке. Там для этого нужно городить указатель.
| |
|
|
|
6.300, n00by (ok), 18:42, 08/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Я побоялся такое писать - кто-то начнёт о сладком яде. Вон там уже подсчёт ссылок приплели. :)
| |
6.311, Аноним (-), 21:12, 08/09/2022 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Это да, но сахарок он приятен на вкус.
Пока диабет не долбанет.
| |
|
7.339, Аноним (341), 13:23, 09/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Ну так зачем же жрать килограммами? Эдак от любой пищи куда-нибудь, да долбанёт.
| |
|
|
|
4.207, Брат Анон (ok), 18:51, 07/09/2022 [^] [^^] [^^^] [ответить]
| +1 +/– |
В Си по определению не может быть ссылок. Только если используется библиотечный сборщик мусора.
| |
4.432, ммнюмнюмус (?), 02:34, 14/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Как раз указатель и есть банальность. А плюсовая ссылка - маленьний оверинжениринг на её основе.
| |
|
|
2.110, Ivan_83 (ok), 12:46, 07/09/2022 [^] [^^] [^^^] [ответить]
| +5 +/– |
Надстройки - не нужны.
С читается легко, там мало ключевых слов, а кресты вообще не читабельны с их теплейтами и прочим сахаром.
Костыли в код тащат програмисты а не С.
| |
2.115, fuggy (ok), 12:52, 07/09/2022 [^] [^^] [^^^] [ответить]
| +4 +/– |
Только в плюсах этих надстроек уже столько, сколько человек не сможет выучить за разумное время.
| |
2.186, freehck (ok), 17:19, 07/09/2022 [^] [^^] [^^^] [ответить]
| +1 +/– |
> не вижу сегодня смысла писать не на Плюсах
> считаю Си плохо читаемым языком
То есть перед нами человек, который считает кресты -- хорошо читаемым языком, а чистый си -- нет...
Срочно собираем опеннет-консилиум врачей! Предварительный диагноз на обсуждение: кресты головного мозга. =)
| |
|
3.210, Аноним (210), 19:14, 07/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Нужно срочно лечить. Предлагаю избавить его от мучений и сделать ему эвтаназию.
| |
3.312, Аноним (312), 21:22, 08/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Тут все просто. Есть легенда что каждый плюсовик пишет на своем C++. Поэтому C++ бывает очень разным. Бывает дикий ужас, который не декодабелен никем кроме автора. Бывает отличный, прозрачный, читаемый код, где емкие и выразительные высокоуровневые конструкции сочетаются с низкоуровневым контролем над ситуацией, а происходящее понятно даже полному профану из-за выразительности кода.
Заодно это и уровень кодера хайлайтит, сразу понятно с кем имеем дело и что они знают и могут по части софтостроя. И какой бардак (или его отсутствие) у них в головах. Так что плюсы это отличный детектор скиллов кодера. И тут уже не спрячешься, цену себе не набьешь сертификатиками, все как на ладони, сразу видно кто есть кто и что он может.
| |
|
4.323, freehck (ok), 00:52, 09/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Да как бы абсолютно то же самое можно про любой язык сказать. Я видел примеры хорошего и плохого кода на Ocaml, на Racket, на C++, на Clojure, на Java, на Scala... Да даже на Bash и на Ansible. Это общее для IT-сферы, и одними крестами не ограничивается. Люди используют любую технологию в меру своей грамотности.
| |
|
5.363, Аноним (-), 13:09, 10/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
> Да как бы абсолютно то же самое можно про любой язык сказать.
В остальных яп это выражено меньше, хотя, конечно, гамнокодить можно на чем угодно.
> Я видел примеры хорошего и плохого кода на Ocaml, на Racket,
> на C++, на Clojure, на Java, на Scala... Да даже на
> Bash и на Ansible. Это общее для IT-сферы, и одними крестами
> не ограничивается. Люди используют любую технологию в меру своей грамотности.
А таки вот именно плюсы это очень удачный детектор "мощных кодеров". И они обычно не считают себя настолько уж обезьянами чтобы на яве вообще идти что-то програмить. У явы парадигмы, видите ли, другие: огроменный STDLIB который боги накодили, а вы тут червяки, давайте-ка, хреначьте, а то за вами придет самый страшный дед - лайн.
| |
|
|
|
|
|
2.259, Тот_Самый_Анонимус (?), 04:36, 08/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Да там то же самое:
- как оставлять нисмищные шютки про аборты в комментах;
- как удалять «несвободные» блобы;
- как код под пропагандируемой им лицензией сразу становится качественным.
| |
|
|
|
5.313, Аноним (313), 21:26, 08/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
> Ну а чего ещё он делает в реале, кроме перечисленного?
Показывает как можно быть свободным человеком, не отлизывая ботинки корпораций до блеска, например. Но в твоем случае это бесполезно: некоторые рабы решительно не понимают как можно жить без надсмотрщика и барака предоставленного добрым хозяином нахаляву.
| |
|
|
|
|
1.99, Аноним (99), 12:36, 07/09/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
>>> If you understand basic concepts of programming but know nothing about C, you can read this manual sequentially from the beginning to learn the C language. <<<
Ага щас! Cмелое конечно заявление, вот только лично мне очень интересно на чем оно основано?🤦 (ох, уж эти хакеры)
| |
|
2.142, Аноним (142), 13:46, 07/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
А я на Zig, и могу спокойно „этого питона”:
* Компилировать (и кросс-компилировать, и с поддержкой кэширования).
* Использовать с кодом на Zig.
* Притворяться им, так что другие языки не отличат.
| |
|
3.192, Hck3r (?), 17:38, 07/09/2022 [^] [^^] [^^^] [ответить]
| +1 +/– |
Притворяться питоном?
Вставлять sleep, чтобы помедленнее было?)
| |
3.365, Аноним (-), 13:24, 10/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
> А я на Zig, и могу спокойно „этого питона”:
> * Компилировать (и кросс-компилировать, и с поддержкой кэширования).
> * Использовать с кодом на Zig.
> * Притворяться им, так что другие языки не отличат.
Ну да, только вон там в соседней новости твой тезка ныл про баги в оном. Нет, в нем есть кое-что прикольное, с компилтайм вычислениями прикольно придумано. Но...
| |
|
|
1.137, InuYasha (??), 13:38, 07/09/2022 [ответить] [﹢﹢﹢] [ · · · ]
| –5 +/– |
Я думал, после всех этих лет буду готов простить Ричарду эти серединно-половинчатые отступы, но... КРРИИИИННННЖЖЖЖЖ! ))
Но вообще, нелпохо. Расширенный аналог синенькой книги "Язык программирования Си", М.:Радио и Связь, которая у меня всегда на столе.
| |
1.188, Аноним (157), 17:21, 07/09/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +2 +/– |
Перестал собираться после обновления. Держите патч.
diff --git a/c.texi b/c.texi
index e9e763c..0761568 100644
--- a/c.texi
+++ b/c.texi
@@ -62,7 +62,7 @@ WILL BE Published by the Free Software Foundation @*
51 Franklin Street, Fifth Floor @*
Boston, MA 02110-1301 USA @*
ISBN ?-??????-??-?
-@ignore
+@end ignore
| |
1.190, Ан (??), 17:33, 07/09/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +2 +/– |
В gcc есть очень хорошее расширение cleanup, аналог RAII. Надеюсь, когда-нибудь, войдёт в стандарт.
| |
|
2.425, . (?), 08:25, 13/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
но зачем? можно чистить за собой на выходе из функции. делаешь вызов static fun_() в fun()
| |
|
1.191, Аноним (191), 17:36, 07/09/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +3 +/– |
Видимо кто-то не умеет пользоваться LaTeXом и hyperrefом, чтобы в PDF было нормальное оглавление.
| |
|
2.261, Anto (?), 06:04, 08/09/2022 [^] [^^] [^^^] [ответить]
| +2 +/– |
Старый анекдот:
Попадая в дикую среду домашний котик вынужден сам защищаться, сам находить еду - опасно, трудно, мокро, холодно.
Почувствуйте ./configure && make && make install, котаны.
| |
|
3.366, Аноним (-), 13:29, 10/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
> Попадая в дикую среду домашний котик вынужден сам защищаться, сам находить еду
> - опасно, трудно, мокро, холодно.
Ага, блин, благодетели сваливаются на бошку и...
- Запирают в 4 стенах.
- Площадь владений издевательская.
- За ссач под тапки норовят оттыкать носом.
- Ссать где попало не дают, изволь в лоток.
- Половина еще и кастрировать норовит.
- Кормежка только когда двуногий расчехлится. И даже если желудок к спине прилип, хрен мышь поймаешь.
- И поохотиться для спортивного интереса, кстати, вон там тоже не на что.
В общем такое себе довольно интересное благодеяние, так то. Если бы у домашнего котика был бы мозг чуть побольше - большой вопрос что бы он вообще сказал на эту тему.
| |
|
|
1.208, Аноним (208), 18:52, 07/09/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Вот если я делаю scanf из stdin в буфер char*, он мне туда положит \0 или мне самому надо этим заниматься?
| |
|
2.209, Аноним (208), 18:57, 07/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Читаю много раз, надо ли чистить буфер и самому забивать его \0, чтобы не багануло?
| |
2.230, snmp agent (?), 21:21, 07/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Положит, man scanf:
s Matches a sequence of non-white-space characters; the next pointer must be a pointer to the initial element of a character array that is long enough to hold the input sequence and the terminating null byte ('\0'), which is added automatically. The input string stops at white space or at the maximum field width, whichever occurs first.
| |
|
|
|
3.262, Anto (?), 06:10, 08/09/2022 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Зачем конвертировать техническую литературу в форматы, предназначенные для _fiction_ book?
Зачем в новости постить техническую литературу в форматах предназначенных для бумаги или не пригодных для чтения в оффлане?
FB2 с EPUB, предназначенные для книг просто, тогда удобнее.
| |
|
4.267, Аноним (-), 08:24, 08/09/2022 [^] [^^] [^^^] [ответить]
| –1 +/– |
Конкретно формат FB2 не нужен. Человек просящий книгу в формате FB2 занимается глупостью.
| |
|
5.293, n00by (ok), 14:32, 08/09/2022 [^] [^^] [^^^] [ответить]
| –1 +/– |
Он хочет вернуть былую славу маргинальному дистрибутиву и стать новым Мишей два процента.
«Как видно по составленным CNews диаграммам ... Разработчики РОСА сократили долю с 3% до 1%»
| |
|
|
3.266, mikhailnov (ok), 08:23, 08/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
> Зачем конвертировать техническую литературу в форматы, предназначенные для _fiction_
> book?
Чтобы было удобно читать на маленьком экране (на помещающемся в карман смартфоне) или на электронночернильной читалке
| |
|
4.268, Аноним (-), 08:26, 08/09/2022 [^] [^^] [^^^] [ответить]
| –2 +/– |
>Чтобы было удобно читать на маленьком экране (на помещающемся в карман смартфоне) или на электронночернильной читалке
Формат FB2 это мусорный формат он не нужен.
| |
|
5.343, mikhailnov (ok), 13:54, 09/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Это максимально простой формат, оставляющий форматирование текста на откуп программе для чтения книги. Мне нравится.
| |
|
|
|
|
1.282, Lex20 (ok), 10:35, 08/09/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Типовые решения зачастую теряются в мусорке из других типовых решений. Ну нету на сегодняшний день такой базы кода, в которой все алгоритмы были бы в исходных кодах и красиво написаны. GNU хочет таким быть, но и ему приходится как-то себя рекламировать. Книгу выпустить самое правильное решение на сегодняшний день, ибо в книгах самая важная и нужная информация. Сам таким занимаюсь, уже 15 страниц написал, да таких что никто не скажет что он это уже знал. Может к 50 годам опубликую.
| |
1.319, Метатель биссера (?), 22:58, 08/09/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +3 +/– |
Столман нормальный мужик, программы и книги пишет интересные и полезные. Не понимаю людей которые его ругают, а ругают его те, у кого своих достижений нет особых и специалистами они никогда не были ни в каких областях. На работе давно заметил, что конфликты и пустые разговоры исходят в основном от людей, которые очень слабы как специалисты.
| |
|
2.352, burjui (ok), 21:28, 09/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Он для СПО сделал больше, чем все опеннетчики, вместе взятые и помноженные на 10.
| |
|
|
|
|
6.404, burjui (ok), 01:41, 12/09/2022 [^] [^^] [^^^] [ответить]
| –3 +/– |
Ааа. Вообще-то, я писал: "...сделал больше, чем...", так что больше нуля. Да и здесь есть несколько человек, которые пилят разные опенсорсные проекты (GIMP, например), но средняя температура по больнице и правда ноль.
| |
|
|
|
|
|
1.348, InuYasha (??), 17:01, 09/09/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Нахрен он после return type херачит новую строку?? Это на случай если там будет this_is_a_80chars_of_type_description_because_i_was_bored_and_i_am_compensating_t ??? Что за дурацкая манера...
| |
|
2.437, mos87 (ok), 17:15, 15/10/2022 [^] [^^] [^^^] [ответить]
| +/– |
ты молодой ещё видать, если первый раз такой стиль видишь.
насколько помню, ГНУтое чудо емакс так код "анализирует". а не так - видимо не анализирует. или что-то такое.
| |
|
1.353, Аноним (353), 11:05, 10/09/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
Спецы по стилистике есть? Почему у ГНУ-стиля тип integer основной функции вынесен на первую (отдельныую) строку?
>int
>main(void) {}
Сначала я думал, что это ошибка наборщика книги. А нет, это ГНУ-стиль.
| |
|
|
3.403, InuYasha (??), 23:47, 11/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Звучит как "Давайте ради тупых алгоритмов ломать живым людям глаза". Только компилятору почему-то покакать на этот \n. Я понимаю ещё {} на отдельных строках слева - это реально удобно читать. Но вот это...
| |
|
4.417, Аноним (-), 20:44, 12/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Не передёргивай, всё там читабельно. Просто стилистические тонкости характерные для GNU.
| |
4.424, n00by (ok), 08:20, 13/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Не только в GNU такое требование. В С++ старого стандарта описание возвращаемого типа вполне могло занять половину строки.
| |
|
|
6.477, Аноним (477), 06:05, 28/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
> Вот поэтому старый стандарт и канул в лету!
Это одна из причин, но не решающая.
Заодно отвечаю на вопрос, который столь сильно Вас беспокоит, что Вы задали его аж 4 раза, но прилично сформулировать не смогли.
В кавычках -- цитата. Рядом дана ссылка на источник. Вы разговаривали с копипастой. Пишите непосредственно автору.
Меня донимать по этому поводу не надо -- я отсюда ушёл как раз утомлённый наблюдением непонимающих столь очевидных вещей.
| |
|
7.478, abrakadabr80 (?), 13:28, 15/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
> Меня донимать по этому поводу не надо -- я отсюда ушёл как
> раз утомлённый наблюдением непонимающих столь очевидных вещей.
как ушли, так и вернулись )) стыдно, товарищ!
"уходя — уходи!" (цыц)
| |
|
|
|
|
|
|
1.377, Аноним (-), 01:36, 11/09/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
Трудных для восприятия формулировках?
Не хочется дедушку расстраивать, но последние генерации не воспринимают богоподобные Си и пилят раст. Сложно им.
| |
1.409, adolfus (ok), 10:49, 12/09/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Makefile кривой -- выходной pdf не имеет структуры. Там цель
c.pdf: c.dvi
dvipdf c.dvi
т.е. сначала генерится dvi, а из него неструктурированный pdf.
Но если сказать
$ makeinfo --pdf c.texi
то на выходе имеем pdf со структурой и вместо картинок страниц в окуляре получаем содержание.
| |
|
2.435, mos87 (ok), 16:50, 15/10/2022 [^] [^^] [^^^] [ответить] | +/– | на Бубунте 22 04 после apt install texlive texinfo makeinfo --pdf c texi ругаесс... большой текст свёрнут, показать | |
2.436, mos87 (ok), 16:55, 15/10/2022 [^] [^^] [^^^] [ответить] | +/– | после получения последних изменений git pull makeinfo --pdf c texi cpp texi fp ... большой текст свёрнут, показать | |
|
|