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

Вопрос к людям, которые что-то подозревают о деятельности комитета или

принимают в ней участие или просто сочувствующим: почему в библиотеку концептов не добавили аналоги для всех тайп трейтов, только в виде концептов?

16 ответов

8 просмотров

потому что можно вместо однострочных концептов писать что то типо металямбд местных requires

Danya🔥
Чиво

вместо того чтобы писать концепт на простую штуку типо template<typename T> concept no_throw_X = std::is_nothowX_v<T>; Можно написать что то похожее на то, что происходит когда тебе нужно мелочь, которую ты больше нигде не используешь - в мире значений это лямбда [&x] = { x+=2}, в мире типов это template<typename T> requires std::nothowX_v<T> func(T x){ ... }

Danya🔥- Автор вопроса
Kelbon
вместо того чтобы писать концепт на простую штуку ...

Продержу в курсе: requires std::is_nothrow_*<T> не то же самое, что и requires std::no_throw_*<T> (во втором случае однострочный концепт)

Danya🔥
Продержу в курсе: requires std::is_nothrow_*<T> не...

я не хочу четко указывать что тут как называется, я демонстрирую идею

Подозреваю, дело в том, что не все из них имеют смысл в качестве концептов. Тут, скорее, по каждому трейту думать нужно отдельно

Danya🔥- Автор вопроса
Kelbon
я не хочу четко указывать что тут как называется, ...

Эта идея неправильная Я уже объяснил почему

подозреваю, в [p0872] эта тема поднималась, но это документ не для простых смертных

Vlad
подозреваю, в [p0872] эта тема поднималась, но это...

P0872R0: Discussion Summary: Applying Concepts to the Standard Library (by Beman Dawes) (2017-11-25)

Danya🔥- Автор вопроса
Danya🔥
Эта идея неправильная Я уже объяснил почему

Если интересно ПОЧЕМУ это не одно и то же, советую разузнать почему possible impl именно такой: https://en.cppreference.com/w/cpp/concepts/same_as

Danya🔥
Эта идея неправильная Я уже объяснил почему

нет ну есть конечно нюансы с ограничением и перегрузками, не знаю requires делает ли функцию более ограниченной... Логично было бы, если бы делало. Но все эти концепты несложно нааписать самому в 1 строку, а раздувать стандартную либу наверное не хотели, итак сначала просто, потом добавили везде _v _t, потом концепты, дальше что...

Danya🔥- Автор вопроса
Kelbon
нет ну есть конечно нюансы с ограничением и перегр...

https://stackoverflow.com/questions/52062386/does-constraint-subsumption-only-apply-to-concepts

Danya🔥- Автор вопроса
Vlad
подозреваю, в [p0872] эта тема поднималась, но это...

Под "не для простых смертных" я думал ты имеешь в виду, что он сложный.. Но open-std просит логин и пароль.. Видимо он ещё и для элиты..

Ofee Oficsu
Подозреваю, дело в том, что не все из них имеют см...

Для примера, если взять Type properties, то лишь по нескольким из них есть реальный смысл ограничить или перегрузить функции. Есть ещё, конечно, другие применения – например, ограничения на шаблонные параметры классов... Но могу предположить, что комитет не хочет спешить и сначала есть необходимость понять, что вообще программистам нужно, чтобы не разводить бардак в библиотеке, засоряя её потенциально малоиспользуемыми концептами, затрудняя их поиск и выбор

Kelbon
нет ну есть конечно нюансы с ограничением и перегр...

Концепты не являются синтаксическим сахаром над type traits и попытка написать их в одну строку приведёт к их некорректной реализации зачастую, на что верно указал @unterumarmung. Советую ознакомиться с обсуждаемой темой внимательнее. И желательно, если есть вопросы или недопонимание – продолжить обсуждение в @supapro

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

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

А как старый хаскел с новым стыковать ? потому как тут работает https://play.haskell.org/saved/C3xpMzcd, а вот тут https://stepik.org/lesson/7602/step/9?unit=1473 нет ошибка C...
Fedor
131
Народ, кто шарит в расширенных разделах (EBR/EPR) на дисках с разметками MBR? Везде пишут (в вики рус/англ) в частности + другие источники смотрел, что первый сектор расширенн...
Eugene Krasnikov (ᴊɪɴ x)
1
что насчет пагинга? на осдеве непонятно(
Vi Chapmann 🪙
26
Вопрос я правильно понимаю что в коде newtype ArrowMap k v = ArrowMap { getArrowMap :: k -> Maybe v } getArrowMap есть функция типа k -> Maybe v, если да, то не понимаю задач...
Fedor
64
Ребят, что лучше для реверса: гидра или ида?
En Vind Av Sorg
26
Делаю велосипед логгер. К сообщению хочу прикрутить некоторую информацию, типа, кем отправлено, какой уровень, и всякое такое. И тут подумалось мне, почему бы не хранить весь...
Serjone
24
Как Вы считаете нормально ли в двадцатых годах 21 века в ВУЗах Российской Федерации обучать студентов работе с TASM? Не слишком ли это "архаично"? (Если оффтоп или флейм для э...
Spiker01
52
Комрады, хотел уточнить. Проперть в OnDestroy юнита-хозяина по-прежнему доступна? И еще уточнение: finalization юнита наступает раньше или позже OnDestroy?
Ed Doc
48
Продолжая диалог про свифт в проде – сейчас возник вопрос в активном наборе бекендеров. В основном в нашей компании мы фанаты Java Spring и полностью ей довольны. Однако найм ...
Guseyn
27
Читаю сейчас [нет, уже больше не читаю!] курсовую о Булгакове, написанную, похоже, с помощью ChatGPT. Это удивительный психоделический опыт. Текст в основном написан в стиле б...
✨ Uni [🌊 В отпуске]
1
Карта сайта