LINUX.ORG.RU

Новое слово в программировании на C: штатное определение количества элементов в массиве

 ,


1

2

Привет, ЛОР!

Тихо и незаметно во всеми нами горячо любимый язык программирования Си решили наконец добавить новый оператор, возвращающий количество элементов в массиве. То есть, аналог вот такого:

#define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0]))

Название нового оператора пока не определено, и по ссылке ниже можно проголосовать за понравившийся вариант.

Ссылка на опрос: https://www.allcounted.com/s?did=qld5u66hixbtj&lang=en_US

Статья от автора предложения: https://thephd.dev/the-big-array-size-survey-for-c

Что скажут эксперты в программировании на C по поводу этого нововведения? Нужно ли оно? Станет ли язык Си ещё лучше?

★★★★★

Последнее исправление: hobbit (всего исправлений: 2)
Ответ на: комментарий от anonymous

unsafe всего лишь инструмент, который появился из-за более агрессивных проверок.

Враньё. Без unsafe принципиально отсутствует возможность работать с реальным железом. На любом уровне растовых проверок согласно их понятиям о «безопасности».

отличный способ ограничить маленький кусок кода и написать вокруг ОСТОРОЖНО ЕСЛИ ТЫ СДЕЛАЕШЬ ЧТО-ТО НЕ ТАК ТЕБЕ ОТОРВЕТ НОГУ.

А потом без unsafe писать лютейшую, зато «безопасную» дичь из-за которой ничего работать не будет. Жидхаб натурально полон подобных творений. Растоэмбед, итичкина магатуха! Обращения к регистрам железки все такие в unsafe а потом, используя этот «ограниченный кусок кода» в регистры безопасно пишут полную ахинею, даже не попытавшись понять даташит. Про алгоритмы вокруг я вообще молчу.

Stanson ★★★★★
()
Ответ на: комментарий от Stanson

Враньё. Без unsafe принципиально отсутствует возможность работать с реальным железом. На любом уровне растовых проверок согласно их понятиям о «безопасности».

Именно это я и написал.

А потом без unsafe писать лютейшую, зато «безопасную» дичь из-за которой ничего работать не будет.

Это уже твои какие-то страхи и комплексы. Зачем ты их проецируешь на остальных программистов? Просто пишешь код, если облажался – тебе это услужливо подскажет компилятор, а не твой клиент, въехавший в дерево из-за бага в сишной прошивке.

anonymous
()
Ответ на: комментарий от Stanson

Я абсолютно такую же шнягу про какой-нибудь брейнфак могу тоннами сочинять без малейших проблем.

То есть ты на серьезных щщах думаешь что PR служба Reno придумала что они пишут код на Rust просто потому что почему бы и нет?

anonymous
()
Ответ на: комментарий от hateyoufeel

Cloudflare - это жулики, воры и конченные ублюдки. Cloudflare должен быть уничтожен любым возможным способом. Ради всего человечества.

А пользователей Redox наверно аж полтора человека.

В общем, когда, наконец, найдётся что-то реально интересное - тогда и приходи.

Stanson ★★★★★
()
Ответ на: комментарий от Stanson

Cloudflare - это жулики, воры и конченные ублюдки. Cloudflare должен быть уничтожен любым возможным способом. Ради всего человечества.

Как это отменяет то, что их софт на Rust (которого не существует, по твоему мнению), обслуживает треть интернет-трафика?

anonymous
()
Ответ на: комментарий от Stanson

Cloudflare - это жулики, воры и конченные ублюдки. Cloudflare должен быть уничтожен любым возможным способом. Ради всего человечества.

Это всё так, но это опровергает твои слова про «на Rust ничего не написано». Как видишь, написано и очень дохрена чего уже.

В общем, когда, наконец, найдётся что-то реально интересное - тогда и приходи.

Интересное кому? Мне вот прокся, заруливающая nginx по скорости, очень интересна.

А пользователей Redox наверно аж полтора человека.

Ичо? Это proof of concept и он получился весьма отличным. Так-то у большинства ОС пользователей нихрена нет, за исключением трёх самых популярных сейчас.

hateyoufeel ★★★★★
() автор топика
Последнее исправление: hateyoufeel (всего исправлений: 1)
Ответ на: комментарий от anonymous

То есть ты на серьезных щщах думаешь что PR служба Reno придумала что они пишут код на Rust просто потому что почему бы и нет?

Задача PR службы - врать о продукции предприятия, чтобы убедить лохов покупать её вместо точно такой же продукции конкурентов. Или об успешности предприятия чтобы лохов-инвесторов привлекать.

Так что запросто может быть 100% враньём. Потому что кто-то где-то прочитал PR высер написанный таким же лжецом про то, что раст - это модно и «безопасно». Пофиг что ничего на расте не написано, главное не отставать от моды.

Ну натурально - сколько маркетингового говна про ИИ. Наверняка PR служба Renault хоть что-то про использование ИИ да наврала.

Дело в том, что ИИ не существует в принципе. То, что маркетологи выдают за ИИ не более чем системы уравнений. У них по определению никакого интеллекта быть не может.

Раз врут про ИИ, значит и про раст могут врать как нефиг делать.

А если потратили 100500 денег на найм дивёрсити раст тим, то уж тем более. Пофиг что эти невежды ничего так и не написали, зато «безопасно»!

Stanson ★★★★★
()
Ответ на: комментарий от Stanson

Задача PR службы - врать о продукции предприятия, чтобы убедить лохов покупать её вместо точно такой же продукции конкурентов. Или об успешности предприятия чтобы лохов-инвесторов привлекать.

И те и другие знают что rust это ржавчина, а это в машинке плохо. Ну да ладно.

Так что запросто может быть 100% враньём. Потому что кто-то где-то прочитал PR высер написанный таким же лжецом про то, что раст - это модно и «безопасно». Пофиг что ничего на расте не написано, главное не отставать от моды.

У них есть растовые вакансии. Тоже для отвода глаз?

Раз врут про ИИ, значит и про раст могут врать как нефиг делать.

А могут и не врать. Давай представим, что не соврали. Как ты будешь жить в мире, где на Rust таки написали что-то, от чего зависит человеческая жизнь… и стало только лучше?

anonymous
()
Ответ на: комментарий от hateyoufeel

Как видишь, написано и очень дохрена чего уже.

Я и не спорю что написано дофига. Да весь жидхаб этим дерьмом завален. Речь о том, что оно не взлетает. Когда этот растовый прокси взлетит так же как nginx например, когда его реально будет хотеть использовать масса народу, тогда и приходи. А cloudflare может заявлять всё что угодно про то, что он там использует. Проверить возможности нет.

Мне вот прокся, заруливающая nginx по скорости, очень интересна.

Вот когда эта прокся по количеству использующих сравнится с nginx’ом, тогда и поговорим. Nginx вообще начинался как хобби-проект (да, я внезапно некоторым образом пересекался с Сысоевым в самом начале этой эпопеи, когда ещё никто ни про какой nginx вообще не знал, и естественно я вообще не подозревал с чем столкнулся в то время :) ). И вполне себе составил конкуренцию опачу. Так что если софтина стоящая, то взлетит по-любому. Если туфта - так и останется только в бложике корпорации, сколько ни трать на PR.

Stanson ★★★★★
()
Ответ на: комментарий от Stanson

Речь о том, что оно не взлетает.

CDN, обслуживающая 30% всего интернет-трафика – это не взлетает?

Когда этот растовый прокси взлетит так же как nginx например, когда его реально будет хотеть использовать масса народу, тогда и приходи.

охлол.. может тебе ещё и люникс растом полностью заменить? И небо? И даже Аллаха?

Nginx вообще начинался как хобби-проект (да, я внезапно некоторым образом пересекался с Сысоевым в самом начале этой эпопеи, когда ещё никто ни про какой nginx вообще не знал, и естественно я вообще не подозревал с чем столкнулся в то время :) ). И вполне себе составил конкуренцию опачу.

Да-да, и Linux начинался как хоббит-проект. Что сказать-то хотел?

hateyoufeel ★★★★★
() автор топика
Ответ на: комментарий от Stanson

Вот когда эта прокся по количеству использующих сравнится с nginx’ом, тогда и поговорим

Ты помрешь уже. NGINX вышел в 2004. Больше инсталяций, чем у Apache, у него стало только к концу десятых.

anonymous
()
Ответ на: комментарий от anonymous

У них есть растовые вакансии. Тоже для отвода глаз?

Не обязательно. Если ты не в курсе, то современные корпорации - это наихудший вариант совка. Так вот, если какое нибудь подразделение, например отвечающее за диверсити не обеспечит полное расходование выделенного бюджета, то в следуюшем годовом плане бюджет будет урезан, а то и вовсе поувольнять могут. Вот тебе и вакансии.

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

Чтобы ответить на этот вопрос, для начала нужно чтобы на расте что-то написали, а во-вторых чтобы стало лучше не только в PR материалах.

Сегодня, учитывая всё что я знаю о расте и особенно о его коммьюнити, я вообще не рискну пользоваться чем-то написанным на расте если от этого может зависеть моя жизнь.

Stanson ★★★★★
()
Ответ на: комментарий от Stanson

Не обязательно. Если ты не в курсе, то современные корпорации - это наихудший вариант совка. Так вот, если какое нибудь подразделение, например отвечающее за диверсити не обеспечит полное расходование выделенного бюджета, то в следуюшем годовом плане бюджет будет урезан, а то и вовсе поувольнять могут. Вот тебе и вакансии.

Растовых программистов нанимают коварные трахающиеся геи из DEI отделов чтобы их сократить?

Чтобы ответить на этот вопрос, для начала нужно чтобы на расте что-то написали, а во-вторых чтобы стало лучше не только в PR материалах.

Ну то что оно ТОЛЬКО в PR материалах, это твоя больная фантазия. В реальности-то оно уже в машине.

Сегодня, учитывая всё что я знаю о расте и особенно о его коммьюнити, я вообще не рискну пользоваться чем-то написанным на расте если от этого может зависеть моя жизнь.

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

anonymous
()
Ответ на: комментарий от anonymous

Ты помрешь уже.

Я собираюсь жить вечно. Как видишь - пока что прекрасно получается.

NGINX вышел в 2004.

Это было где-то на год-два раньше.

Больше инсталяций, чем у Apache, у него стало только к концу десятых.

Всего за 15 лет из ничего в дамки.

Раст пытаются использовать для чего-то кроме забавы где-то с 2009. Те же 15 лет, вот только на расте так ничего и не сотворили стоящего, не говоря уже о каком-то сравнении с лидерами.

Stanson ★★★★★
()
Ответ на: комментарий от Stanson

Раст пытаются использовать для чего-то кроме забавы где-то с 2009. Те же 15 лет, вот только на расте так ничего и не сотворили стоящего, не говоря уже о каком-то сравнении с лидерами.

Прокси-сервер, который почти обогнал NGINX за четыре года. Ну кажется неплохо, NGINX’у потребовалось в пять раз больше времени. Значит ли это, что софт на Rust в пять раз лучше? Возможно!

anonymous
()
Ответ на: комментарий от anonymous

Растовых программистов нанимают коварные трахающиеся геи из DEI отделов чтобы их сократить?

Нет, чтобы освоить бюджет. Им пофиг кого нанимать, главное чтобы добавились рабочие места. Просто если нанять каких-нибудь хаскелистов, то вышестоящий менеджмент может не понять. А про раст они слышали что это Safe and Effective.

Ну то что оно ТОЛЬКО в PR материалах, это твоя больная фантазия. В реальности-то оно уже в машине.

И как это проверить?

А ты уверен что что-то знаешь?

Да. Я, в отличии от некоторых, периодически захаживаю во всякие злачные растовые места и наблюдаю как там сектанты придумывают очередной способ евангелизма. На моей памяти много новых языков появилось - какие-то взлетели, какие-то нет, но нигде и никогда я не видел ничего подобного тому что творится в среде растаманов.

Я также слежу за всякими прогрессивными повесточками типа climate change, дивёрситями с инклюзивностями и пр. дрянью чтобы быть в курсе. Ну ведь эта вся дрянь даже на ЛОРе в общем-то онтопик, ибо они лезут везде и всё портят, даже линукс с опенсорсом в частности и программизм с IT в общем. Так что разумно знать где соломки подстелить и что у них на уме.

Так вот, поведенческие паттерны в этих сообществах абсолютно идентичны оным в сообществе раста.

Stanson ★★★★★
()
Ответ на: комментарий от anonymous

Прокси-сервер, который почти обогнал NGINX за четыре года.

Количество пользователей установивших его вместо nginx по своей воле сравнялось с коичеством пользователей nginx?

Врать-то не надо.

Stanson ★★★★★
()
Ответ на: комментарий от Stanson

Количество пользователей установивших его вместо nginx по своей воле сравнялось с коичеством пользователей nginx?

А должно? Количество пользователей NGINX уже сравнялось с количеством играющих на толчке в SKIBIDI TOILET THE GAME? Говорит ли это нам что-нибудь о нужности или ненужности NGINX?

anonymous
()
Ответ на: комментарий от Stanson

Нет, чтобы освоить бюджет. Им пофиг кого нанимать, главное чтобы добавились рабочие места. Просто если нанять каких-нибудь хаскелистов, то вышестоящий менеджмент может не понять. А про раст они слышали что это Safe and Effective.

А какие-нибудь, стыдно спросить, доказательства, у тебя имеются? Или тебе достаточно, что в сообщество разнообразное, поэтому там геи трахаются друг с другом и DEI?

И как это проверить?

Послушать рассказы инженеров из Renault о том, как они применяют Rust, с каким проблемами сталкиваются (это публичные выступления) и каой выигрыш. Поискать коммиты, которые они явно контрибутят в апстримные либы. Не, бред какой-то, это все рептилоиды врут. На самом деле там все на COBOL написано.

Да. Я, в отличии от некоторых, периодически захаживаю во всякие злачные растовые места и наблюдаю как там сектанты придумывают очередной способ евангелизма. На моей памяти много новых языков появилось - какие-то взлетели, какие-то нет, но нигде и никогда я не видел ничего подобного тому что творится в среде растаманов.

Погоди… то есть ты специально ищешь места, где люди занимаются PR’ом. Приходишь туда. Смотришь, как они занимаются PR’ом. Приходишь на LOR и истеришь о том, что люди, занимающиеся PR’ом, занимаются PR’ом? А ты пробовал, я не знаю, ходить к людям, которые на Rust код пишут?

Я также слежу за всякими прогрессивными повесточками типа climate change, дивёрситями с инклюзивностями и пр. дрянью чтобы быть в курсе.

Какое все это отношение имеет к Rust?

Так вот, поведенческие паттерны в этих сообществах абсолютно идентичны оным в сообществе раста.

PR-отделы занимаются PR’ом? Это твоя большая новость? Ох лол.

anonymous
()
Ответ на: комментарий от Stanson

Раст пытаются использовать для чего-то кроме забавы где-то с 2009. Те же 15 лет, вот только на расте так ничего и не сотворили стоящего, не говоря уже о каком-то сравнении с лидерами.

Што? Версия 1.0 вышла только в 2015, до этого язык перепиливали по нескольку раз. Например, до 2013 там GC был, и до 2015 кроме экспериментов внутри мозилки его только полтора аутиста тыкали. За 9 лет с нуля до нынешних масштабов – довольно быстро для недоязычка.

hateyoufeel ★★★★★
() автор топика
Последнее исправление: hateyoufeel (всего исправлений: 2)
Ответ на: комментарий от Stanson

Нет, чтобы освоить бюджет. Им пофиг кого нанимать, главное чтобы добавились рабочие места. Просто если нанять каких-нибудь хаскелистов, то вышестоящий менеджмент может не понять. А про раст они слышали что это Safe and Effective.

Я, короче, хочу тебя удивить: хаскеллисты могут и на Rust писать. Это ж не сишники, у которых места в голове хватает только на один язычок.

hateyoufeel ★★★★★
() автор топика
Ответ на: комментарий от anonymous

Показания не сходятся.

Ну так перепроверяйте свои показания чтобы сходились.

Если «естественно», значит об инклудах ты речи не вёл. Если не вёл - не аргументировал бы этими инклудами свой тезис

Я ими опроверг ваш тезис, а не аргументировал свой. О том, что в Си макроязык не нужен вообще, а не о том, чего в нем не хватает.

COKPOWEHEU
()
Ответ на: комментарий от hateyoufeel

Это ж не сишники, у которых места в голове хватает только на один язычок.

Так вот от чего ты бесишься, все просто – ты ничего кроме сишечки не понимаешь, места в мозгах не хватает. Ну штош, бывает.

anonymous
()
Ответ на: комментарий от anonymous

Там их ещё больше. «Carefully chosen undefined behavior. For example, in Zig both signed and unsigned integers have undefined behavior on overflow, contrasted to only signed integers in C. This facilitates optimizations that are not available in C.»

Ну ппц же на ровном месте.

anonymous
()