170 похожих чатов

Кстати об атрибутах. Они ведь в C++ имеют весьма комплексную

синтаксическую поддержку - даже "вызываемые" атрибуты и собственные пространства имен под них завезли. С самими же атрибутами все очень печально пока что. Это такой tease (да-да, когда-нибудь это все будет использоваться, но ты до этого момента не доживешь)? Потому что для реализации кастомных атрибутов потребуется мощная рефлексия и программирование компиляторов далеко за рамками классических шаблонов (в сторону пользовательских атрибутов кивают пространства имен, хотя на данном этапе они скорее для компиляторов). А сам стандарт что-то не особо торопится этим всем функционалом пользоваться. Зачем нужно было заморачиваться теряя и так (как можно видеть) драгоценное время на функционал, который даже близко в полной мере не используется и использоваться не может, по сути?

9 ответов

23 просмотра

>> Зачем нужно было заморачиваться теряя и так (как можно видеть) драгоценное время на функционал? Вы ошибочно считаете, что сэкономив человеко-часы на одной фиче, удастся быстрее закончить другую, более важную Кроме того, эта фича так или иначе будет востребована в будущем и если под неё сейчас есть юзкейсы (пусть, и не частые), то нет смысла изобретать для них костыли

Sergey-Anisimov Автор вопроса
Ofee Oficsu
>> Зачем нужно было заморачиваться теряя и так (ка...

Вы обладаете каким-то подробным знанием того, как именно в стандарт въезжали атрибуты, какие группы в этом процессе были задействованы и чем бы они занимались в противном случае?

Sergey Anisimov
Вы обладаете каким-то подробным знанием того, как ...

Проблема в том, что ответ на последний вопрос никто не знает, именно поэтому ни у вас, ни у меня нет оснований полагать, что участники разработки стандарта, занимавшиеся аттрибутами, потребуй мы ими не заниматься, пошли бы разрабатывать более полезные фичи, а не играть в компьютерные игры или пить алкоголь Более того, я склонен ценить полезный вклад каждого из участников и было бы глупо требовать от сообщества (а это именно сообщество, а не организация, чем либо обязанная нам) уделять время вещам, ценным именно для меня, не вкладывая в это собственное время и силы

Sergey-Anisimov Автор вопроса
Ofee Oficsu
Проблема в том, что ответ на последний вопрос никт...

Вы абсолютно правы по поводу отсутствия оснований полагать. Именно поэтому я не начал свои сообщения с фразы "Вы ошибочно полагаете". И да, стандарт - это обалдеть какое несообщество. Там тонны коммерческих подвязок и корпоративных интересов (хватит одного того, что они вообще-то продукт за деньги выпускают, с этой ТЗ к дистрибьютеру (коим является сама ISO, емнип) даже ЗоЗПП применим). Да и не требовал я от них ничего вроде как нигде, а лишь полюбопытствовал насчет соображений о стоящих за теми или иными их действиями решениях.

Sergey Anisimov
Вы абсолютно правы по поводу отсутствия оснований ...

Собственно, я пытался донести, что зачастую за теми или иными решениями стоит не строгий план по реализацию конкретных фич, написанный на столетие вперёд, а желание сообщества/вендоров заниматься той или иной фичей и принципиальная возможность её добавления Просто учитывайте, что для некоторых это альтернативный способ расслабиться и решить собственные проблемы, а не прямая обязанность В случае с атрибутами — их возможно было реализовать, а также, после их реализации в стандарте они, во-первых, смогут быть основой для будущих частных механизмов интроспекции, во-вторых, они могут быть использованы для некоторых компиляторо-зависимых вещей (noreturn, deprecated, fallthrough, nodiscard...), в которых, очевидно, сообщество было заинтересовано и которые бы в противном случае потребовали ad-hoc решений О мотивации тех или иных решений можно почитать в мейлинг-листе, а также, некоторые подробности на GitHub, где иногда можно встретить результаты опросов по отдельным идеям или предложениям

Sergey-Anisimov Автор вопроса
Sergey Anisimov
Я Вас понял, благодарю за ответ.

Собственно, обоснования многих принятых в стандарт решений можно поискать на этой странице, там есть ссылки на соответствующие предложения, обычно сопровождающиеся мотивацией. Например, вот бумага по атрибутам: In the pre-Oxford mailing, n2224 [n2224] makes a case for extensible syntax without overloading the keyword space. It references a large number of existing C++0x proposals that would benefit from such a proposal. This paper will examine the extensible syntax mechanism through the authors’ experience with its implementation in an existing C++ compiler. Если проследовать по ссылке, то можно увидеть мотивацию необходимости такого механизма: The evolution of C++ faces a serious problem selecting new keywords. This problem is confronted directly in Beman Dawes paper N2105, where the risk of collision with existing users' names clearly restricts our ability to select clear, descriptive keywords in the future

Ofee Oficsu
Собственно, обоснования многих принятых в стандарт...

N2224: Seeking a Syntax for Attributes in C++09 (by Alisdair Meredith) (2007-03-12)

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Гайс, вопрос для разносторонее развитых: читаю стрим с юарта, нада выделять с него фреймы с определенной структурой, если ли чо готовое, или долбаться с ринг буффером? нада у...
Vitaly
9
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
длина пакета фиксированная, или меняется?
Okhsunrog
7
Карта сайта