Профиль: Аноним (вход | регистрация) неRU opennet.me  
OpenNET

[ новости /+++ | форум | теги |    ]

Национальные комитеты ISO отклонили принятие стандарта C++26

04.11.2026 15:20 (MSK)

Голосование национальных комитетов ISO (NB, National Bodies) завершилось отказом утверждения международного стандарта C++26, финальный вариант спецификации для которого был принят в марте. Это первый подобный случай в истории развития основного стандарта C++. Из возможных путей развития событий отмечается выставление переработанного черновика стандарта на новое голосование национальных комитетов, возвращение черновика на стадию рассмотрения комитетом по стандартизации языка C++, публикация в виде технической спецификации, а не стандарта, или отмена проекта C++26 (возврат к C++23 и перенос всех утверждённых нововведений в C++29 c повторным согласованием всех предложений).

Основной причиной отклонения стандарта стало включение в язык элементов контрактного программирования (Contracts), позволяющих определять формальные спецификации интерфейсов при помощи трёх новых операторов: pre (предусловие), post (постусловие) и contract_assert (проверка утверждения). Представители нескольких национальных комитетов посчитали данную функциональность недостаточно зрелой, несмотря на то, что при утверждении рабочей группой WG21 за неё проголосовали более 2/3 участников. Изначально, поддержку контрактного программирования намеревались включить в стандарт C++20, но отправили на доработку.

Ситуация усугубляется нарушением устоявшейся практики голосования, в соответствии с которой представители национальных комитетов ISO соглашались с компромиссами, ранее согласованными в рабочих группах, и голосовали против стандарта только при обнаружении до этого не замеченных недостатков или при выявлении процедурных ошибок. На этот раз, по мнению члена комитета по стандартизации C++ из Германии, при голосовании против использовались аргументы, которые уже были рассмотрены и отвергнуты рабочей группой WG21 на предыдущих этапах подготовки спецификации.

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

  1. Главная ссылка к новости (https://news.ycombinator.com/i...)
  2. OpenNews: Утверждён стандарт C++26
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/66614-cpp
Ключевые слова: cpp, standard
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (210) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Ваня фанат СПО из подмосковья (?), 15:54, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +12 +/–
    > а сторонники не хотят обесценивать многолетнюю работу.

    применимо ко всему C++ в целом

     
     
  • 2.80, Аноним (80), 18:17, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +3 +/–
    Растерманам на заметку: у них это впереди.
     
     
  • 3.96, Аноним (96), 18:39, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +6 +/–
    Нет спецификации - нет проблем, поэтому не надо драматизировать.
     
     
  • 4.157, Dzen Python (ok), 20:26, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Ждём удивительный по накалу жабогадюкинг: ISO Rust vs. Corp.Rust?
     
     
  • 5.166, Аноним (166), 20:48, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Ты, наивный, не в курсе, что комитет C++ полностью состоит из корпов?
     
  • 3.189, Сергей Макаров (?), 22:46, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/–
    В расте контракты есть в Найтли.
     
  • 3.190, Анонимус_xxx (?), 22:46, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/–
    есть мнение, что, видимо, лоббисты будут продвигать rust, как убийцу свободного софта в целом, так и gcc в частности, и навязывание расту статуса "языка спасителя от проблем" будет навязываться в массы, в том числе через СМИ.

    некоторые власти не любят такие неподконтрольные оплоты свободы, как gcc, некогда linux, gnu и gpl.

    они же, почему-то, не поддерживают rust-фронтэнд gcc.. так что, очевидно, что дело не в языке.

     
     
  • 4.193, Аноним (80), 23:12, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    > они же, почему-то, не поддерживают rust-фронтэнд gcc

    Потому что его делают неправильные пчёлы.

     

  • 1.3, Аноним (3), 16:00, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +7 +/–
    Contract violation handler позволяет:

    1. std::terminate

    2. std::abort

    3. Terminate execution immediately.

    Зачем оно надо в таком виде? В частности, при невозможости в рантайме залогировать и проигнорировать нарушение контракта?

     
     
  • 2.20, fidoman (ok), 16:37, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • –3 +/–
    Плюсану, при наличии эксепшнов нафига эта сишная хмарь?
     
  • 2.29, Вадим Жуков (?), 16:47, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/–
    Есть evaluation semantic: ignore, observe, enforce, quick-enforce.
     
     
  • 3.51, Аноним (3), 17:29, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    это ж всё compile-time? А исходно про рантайм-решения решение спрашивали
     
  • 2.72, Инопланетянин (?), 17:59, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    > Зачем оно надо в таком виде? В частности, при невозможости в рантайме залогировать и проигнорировать нарушение контракта?

    Какой смысл? Это считай у тебя assert (который не в debug) нарушен. Что ОЧЕНЬ пошло не так.

     
     
  • 3.84, Аноним (84), 18:21, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • –2 +/–
    Для этих кейсов не надо "просто завершать программу аварийно" (как предлагается), а как раз сделать "что надо". Варианты:

    1. залогировать и завершиться

    2. проигнорировать

    3. свериться с переменной окружения 'DISABLE_FETURE_CHECK' и прогнорировать контракт

    4. куда-то заслать метрики

    Вместо этих вариантов предлагают всегда безусловно завершаться. Зачем мне такая штука, есл и множно делать кастомные ассерты и там делать всё что угодно?

    А для безусловного завершения всегда есть std::assert

     
     
  • 4.87, Инопланетянин (?), 18:28, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Вместо этих вариантов предлагают всегда безусловно завершаться. Зачем мне такая штука,
    > есл и множно делать кастомные ассерты и там делать всё что
    > угодно?

    Тем что они КАСТОМНЫЕ и будут работать только в твоем проекте.

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

    > The observe semantic will invoke the contract-violation handler; if the contract-violation

    handler returns normally, program execution will continue from the point of evaluation of the
    contract assertion

     
     
  • 5.97, Аноним (84), 18:40, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    > -fcontract-evaluation-semantic=observe  

    Эта штука, как я понял, включается "глобально", а не точечно.

    Чем принципиально-то от assert'а отличается-то?

     
     
  • 6.103, Инопланетянин (?), 18:51, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    >> -fcontract-evaluation-semantic=observe
    > Эта штука, как я понял, включается "глобально", а не точечно.
    > Чем принципиально-то от assert'а отличается-то?

    Я не смотрел. Первое что приходит:

    1. Они универсальны вместо asserta, который молча в release будет вырезан.
    2. Определение заголовке функции.
    3. Могут использоваться для анализа сторонними утилитами для верификации? Как в Ада или AСSL.

     
  • 2.178, Аноним (178), 22:02, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    > при невозможости в рантайме залогировать и проигнорировать нарушение контракта?

    Ценность контракта именно в том, что его невозможно проигнорировать. Для того, что ты хочешь -- "залогировать и проигнорировать" --  уже есть исключения.

     

  • 1.4, Аноним (4), 16:02, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +36 +/–
    Язык слишком простой и понятный, нужно его ещё больше раздуть, так держать комитерасты :)
     
     
  • 2.105, penetrator (?), 18:56, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    здравый комент

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

    налепили в него стероидов, и в плюсы сча напихают

     
  • 2.217, Старый Анонимус (?), 01:25, 05/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Очень грустный, но очень верный комментарий. И такая перегруженность языка с егоразношерстным поведением компиляторов, с учетом развития ИИ-инструментов будет приводить к повальному вайбкодингу на этом языке. Ибо вручную такой перегруженный перекрестными фичами язык проверять станет слишком уж муторно, особенно если нет возможности держать в голове все нюансы компиляторов.
     

  • 1.6, Страуснетруп (?), 16:11, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +11 +/–
    Хоть кто-то в комитете осмелился остановить это безумие в виде современных плюсов, молодцы!
     
     
  • 2.59, Аноним (59), 17:46, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +4 +/–
    Ты хоть новость читал? Национальные коммитеты запороли по причине того что стандарте он представлен примитивно. Они хотели большей сложности.
     
     
  • 3.197, Аноним (197), 23:30, 04/11/2026 Скрыто ботом-модератором     [к модератору]
  • +/–
     

  • 1.7, Аноним (7), 16:16, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/–
    > Национальные комитеты ISO отклонили принятие стандарта C++26

    может наконец-то раст стандартизируют.

     
     
  • 2.11, Аноним (11), 16:20, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +18 +/–
    Растики не то что отклонить стандарт не смогут они даже коммитет собарть не смогут. Потому что этому прищемили права, у того месячные хотя он мужик на самом деле, третий ненавидит коммитеты и вообще за анархию. И всё решения принмает какой-то вася который фичи клепает по KPI 10 фич в неделю иначе лишат донатов и финансирования.
     
     
  • 3.15, Пишу с толчка (?), 16:31, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +9 +/–
    Точно подмечено!
    Проблема раста не в самом языке, а в его сообществе.
     
     
  • 4.22, Аноним (22), 16:39, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • –6 +/–
    > Точно подмечено!

    Молодец, отлично подлизнул!

    > Проблема раста не в самом языке, а в его сообществе.

    А у раста есть проблемы?

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

    У раста проблем нет.


     
     
  • 5.26, Вечный странник (?), 16:42, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +6 +/–
    Вы - доказательство проблем раста)
     
     
  • 6.41, Аноним (41), 17:11, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    Но я не пишу на расте, мне плюсов хватает ¯\_(ツ)_/¯
    А вот СИшников не люблю за их узколобость.

    Хотя немного приятно, что ГЦЦ они без с++ собрать не смогут))

     
  • 6.93, laindono (ok), 18:35, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • –3 +/–
    Нет я. Ещё я доказательство нужности Arch Linux в домохозяйстве.
     
     
  • 7.113, Аноним (113), 19:13, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    CachyOS ван лав.
     
  • 7.116, Bottle (?), 19:15, 04/11/2026 Скрыто ботом-модератором     [к модератору]
  • +2 +/–
     
  • 5.36, Аноним (36), 16:58, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    >Используется как крупнейшими разработчиками софта (гугл, майкрософт, амазон) и железа (нвидия и амд), так и крупными компаниями (клоудфларя, каноникл).

    Увы, но раст не нужен. Это становится очевидно по спискам популярности языков.

    >Миллионы строк когда работающие у сотен миллионов пользователей.

    У раста миллионы строк работающие у миллионов пользователей, это правда. Однако у С и С++ миллиарды строк работающие у миллиардов пользователей.

    >У раста проблем нет.

    Больного никак стабилизировать не могут.

     
     
  • 6.47, Аноним (47), 17:19, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Увы.. (хотя нет, не увы, а "к счастью") ты не разработчик гугла, майкрософта, MESA или ядра линукс.
    А они сами выбирают раст и добавляют в свои проекты.

    > У раста миллионы строк работающие у миллионов пользователей, это правда. Однако у С и С++ миллиарды строк работающие у миллиардов пользователей.

    Работающих все хуже и хуже.
    Поток дыреней найденных в ядре, как-то не прекращается.
    А исправлять по 1-2 тысячи CVE - занятие, думаю, не очень приятное.

     
     
  • 7.63, Аноним (63), 17:48, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    >разработчик гугла, майкрософта, MESA или ядра линукс.
    >А они сами выбирают раст и добавляют в свои проекты.

    В какие проекты они добавляют раст и какая его доля в процентах в этих проектах?

    >Работающих все хуже и хуже.
    >Поток дыреней найденных в ядре, как-то не прекращается.

    То ли дело раст, сейчас они всем покажут как надо. Ой, нет, не покажут, у них у самих сотня дыр в uutils, а паритет с coreutils кажется все менее достижимым.

    Пока раст в широких массах запомнился как язык для нейрослопа, а еще главной причиной неисправности интернета и онлайн игр.

     
     
  • 8.114, Аноним (114), 19:14, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/–
    В некоторый 100 Microsoft перевела Rust в число языков первого уровня по прич... большой текст свёрнут, показать
     
     
  • 9.165, Аноним (165), 20:41, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Ага, списочек из нескольких программ написанных корпорациями для самих же себя ... большой текст свёрнут, показать
     
     
  • 10.179, Аноним (179), 22:07, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Конечно для самих себя Они что будут для васянов писать Ты о чем Весь Rusticl... большой текст свёрнут, показать
     
  • 9.212, Ivan_83 (ok), 00:47, 05/11/2026 Скрыто ботом-модератором     [к модератору]
  • +/–
     
  • 8.156, Дмитрий (??), 20:23, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    coreutils убегает и гладит, ломая поведение с новыми версиями формат вывода и п... текст свёрнут, показать
     
  • 5.45, vibecoder (?), 17:14, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    > У раста проблем нет.

    Есть у его комьюнити. Из-за токсичности и вы тому пример.

     
     
  • 6.141, Аноним (141), 19:51, 04/11/2026 Скрыто ботом-модератором     [к модератору]
  • –1 +/–
     
  • 5.95, aname (ok), 18:39, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Крупнейшие разработчики софта имеют нейросети, следовательно, твоей логики, нейросети не имеют проблем.
     
  • 5.107, Аноним (107), 19:01, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • –2 +/–
    Есть, конечно Если бы проблем не было, любой топик в котором хоть как 8211 то ... большой текст свёрнут, показать
     
     
  • 6.194, Аноним (178), 23:15, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    А как мне комфортную работу -- как с карго -- организовать в... Да вот хоть в сабже. Мне интернет и лефтпады не жмут вообще никак, даже нравится, хочу попробовать это ваше удобство. Что качать?
     
     
  • 7.210, cnik (-), 00:33, 05/11/2026 Скрыто ботом-модератором     [к модератору]
  • +/–
     
  • 6.205, Ivan_83 (ok), 00:06, 05/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    > — Компилятор. Ублюдочно–тормозной и жрущий несметные гигабайты памяти.

    На крестах тоже тормозной и жручий если что. Периодически вижу как компелятор крестов сожрал 1гб озу. И там в памяти таких процессов 2-3 десятка.

    Но у раста идеологическая проблема: они стадию анализа кода запихали в этап компеляции.

    Если у С/С++ workflow выглядит: пилю код абы заработал, тестирую + вылизываю, публикую релиз. Потом приходит меинтейнер и только собирает.
    То у раста програмист становится жертвой преждевременного вылизывания на этапе запила прототипа, а ничего не подозревающей меинтейнер делает 100% ненужно работу которую проделал разраб.

    Истина про вред преждевременной оптимизации похоже не посетила "светлые" умы создателей раста.

    Ни один долбанный адепт раста не может внятно объяснить: зачем мне дома при сборке растоподелий (хрома, фф, uv и прочего) сдалась проверка боровчекером и прочий треш.
    Я просто скачал и собираю, ничего я там не правил.
    Не уже ли нельзя было сделать хотя бы какой то флаг для отключения этого чтобы оно просто компеляло.

     
     
  • 7.218, Аноним (166), 01:58, 05/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    > Ни один долбанный адепт раста не может внятно объяснить: зачем мне дома при сборке растоподелий (хрома, фф, uv и прочего) сдалась проверка боровчекером и прочий треш.

    А что тут объяснять? Всем плевать на твои домашние сношания-коньпеляния - вот и весь ответ.

     
  • 4.25, Ivan_83 (ok), 16:42, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Там и язык и сообщество стоят друг друга.
     
  • 3.19, Аноним (19), 16:35, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +3 +/–
    А зачем им комитет?
    Что бы было как в плюсах "мы три года утверждали какую-ту фигню и будем обсуждать еще 3 года, если не получится - то еще 3... Ули нам торопиться".

    > И всё решения принмает какой-то вася который фичи клепает по KPI 10 фич в неделю иначе лишат донатов и финансирования.

    О господи, да что ты такое несешь?! (с)

    Кажется, про то как в расте утверждают RFC, ты знаешь по рассказам пацанов за гаражами.

     
     
  • 4.35, Аноним (11), 16:58, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • –2 +/–
    Например чтобы раст можно было использовать в реально полезных задачах, а не в ripgrep.
     
     
  • 5.44, Аноним (41), 17:13, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    Например андроид.
    Или клаудфларя.
    Или Rusticl который заменил Clover.
    И таких важных программ десятки.

    ps а чем тебе "ripgrep" не угодил?

     
     
  • 6.112, Аноним (113), 19:11, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Везде микропрограмки на 100 строк.
     
     
  • 7.132, Аноним (166), 19:39, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Пришло время копиума.
     
  • 2.61, Инопланетянин (?), 17:48, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    > может наконец-то раст стандартизируют.

    Им же переадали страндарт языка, который написали ferocenne для себя. Куда они его дели не знаю. Да и не нужно им это.

     
  • 2.62, Аноним (59), 17:48, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    >может наконец-то раст стандартизируют.

    Прежде чем писать глупости надо задать 1 простой вопрос. Сообществу разработчиков самого Раста международная стандартизация нужна? Ответ очевиден: "Нет".

     
  • 2.91, Аноним (47), 18:33, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    > может наконец-то раст стандартизируют.

    Зачем?! Чтобы сидели вот такие клованы-дармоеды по три года на зп коммитета, а потом не смогли ничего из себя выдавить? Разработка должна быть гибкая.
    Тем более что на надежность наличие "стандрта" никак ни влияет - что для плюсов, что для сишки они есть, но написаны так, что код разными компиляторами не компиляется.

     
     
  • 3.101, Аноним (101), 18:45, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    >Тем более что на надежность наличие "стандрта" никак ни влияет - что для плюсов, что для сишки они есть, но написаны так, что код разными компиляторами не компиляется.

    Пример в студию.

     
     
  • 4.195, Аноним (178), 23:16, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Собери ядро msvc.
     
  • 2.104, Аноним (104), 18:56, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/–
    А может не надо? Иначе получится как в плюсах, профессора кислых щей пытались в течении в течении 30 лет сделать из си с классами мультипарадигменного монстра, в итоге все пришло к тому, что из самого простого языка получился наиболее сложный язык, где надо учиться на конкретный стандарт, а 3 человека учивших его в разные года не смогут договориться как надо программировать. При том, что программы получаются ну точно такие же как на остальных языках, непонятно зачем эти игры в бисер.
     
     
  • 3.123, Аноним (123), 19:26, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    >профессора кислых щей пытались в течении в течении 30 лет сделать из си с классами мультипарадигменного монстра

    Читал и слушал интервью самого Страуструпа. На сколько я понял он сам хотел язык, который может всё из коробки. Разработчики C++ сами этого хотели, и хотят до сих пор. Ничего не изменилось. Что хотели то и получили. Не нравится? Ищи другой язык, другой инструмент.

     
     
  • 4.129, Аноним (166), 19:36, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    > На сколько я понял он сам хотел язык, который может всё из коробки.

    Неужто уважаемый Страуструп за десятки лет так и не понял, что с подходом "designed by committee" так не получится?

    > Разработчики C++ сами этого хотели, и хотят до сих пор

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

     

  • 1.8, Аноним (8), 16:17, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/–
    Контракты та ещё шляпа. В чём проблема исключить их из стандарта и перенести в TR?
    В целом, в cpp многовато не слишком нужных вещей, которые явно добавлены т.к. "надо же развивать язык".
     
     
  • 2.23, Вечный странник (?), 16:40, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    Контракты - довольно логичный ход для увеличения безопасности C++.
     
     
  • 3.55, Аноним (55), 17:42, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +4 +/–
    Контракты - довольно логичный ход для увеличения C++.
     
     
  • 4.159, Дмитрий (??), 20:28, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    Контракты - довольно логичный ход для замедления й C++.
     
  • 4.160, Dzen Python (ok), 20:30, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/–
    Контракты - довольно логичный ход для C++.
     

  • 1.9, Аноним (11), 16:17, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/–
    Кому надо это контрактное ненужно пусть используют другие языки.
     
  • 1.10, Аноним (8), 16:20, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/–
    Последняя существенная фишка добавленная в cpp - это лямбды в cpp11. Остальные нововведения такое себе.
     
     
  • 2.12, Medved (??), 16:26, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +3 +/–
    Рефлексия в с++26, модули в с++20
     
     
  • 3.48, Инопланетянин (?), 17:24, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    > модули в с++20

    В открытых проектах модулей не встречал. Кто ими пользуется?

     
     
  • 4.64, БоссАнонимов (?), 17:50, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • –2 +/–
    Новых открытых проектов на С++ не встречал
     
  • 4.128, Аноним (128), 19:35, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/–
    >В открытых проектах модулей не встречал.

    А ты поищи бывщих паскальщиков и сегодняшних плюсовиков.

    >Кто ими пользуется?

    Паскальщики.

     
     
  • 5.172, Аноним (172), 21:33, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    >Паскальщики

    Так это вынужденно

     
  • 3.94, localhostadmin (ok), 18:39, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    > модули в с++20

    недавно пробовал их тыкать. идея вроде хорошая, но реализация такая себе. мои эксперементы закончились на попытке работы с файлами, как бы я не пытался подключить fstream или cstdio у меня просто валилась сборка. вытоге я пару часов с этим повозился и забросил

     
     
  • 4.125, Аноним (125), 19:30, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    >идея вроде хорошая

    Нет, плохая. Для чего вообще нужны модули?
    1. Инкапсуляция кода.
      В C++ файл исходного текста с пространством имён и спецификатором доступа static прекрасно справляются с этой задачей.
    2. Абстрактные типы данных.
      В C++ АТД прекрасно программируются при помощи классов.
    3. Generic программирование.
      В C++ есть шаблоны классов и функций.

     
     
  • 5.131, Аноним (131), 19:38, 04/11/2026 Скрыто ботом-модератором     [к модератору]
  • –1 +/–
     
  • 5.143, Аноним (166), 19:52, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    >>идея вроде хорошая
    > Нет, плохая. Для чего вообще нужны модули?

    Очевидно, чтобы хоть как-то улучшить ситуацию с неадекватным временем компиляции.

     
     
  • 6.158, Аноним (158), 20:27, 04/11/2026 Скрыто ботом-модератором     [к модератору]
  • +1 +/–
     
  • 6.175, Аноним (172), 21:37, 04/11/2026 Скрыто ботом-модератором     [к модератору]
  • +/–
     
     
  • 7.201, Аноним (158), 23:56, 04/11/2026 Скрыто ботом-модератором     [к модератору]
  • +/–
     
  • 7.219, Аноним (166), 02:00, 05/11/2026 Скрыто ботом-модератором     [к модератору]
  • +/–
     
  • 5.186, localhostadmin (ok), 22:30, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    мне понравилось, что они нормально работают с шаблонами
     
  • 4.133, Аноним (131), 19:39, 04/11/2026 Скрыто ботом-модератором     [к модератору]
  • +/–
     
  • 2.13, Аноним (13), 16:26, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    ну ващето, constexpr и consteval тоже полезно. а ещё variadic template удобно использовать.
     
  • 2.27, Ivan_83 (ok), 16:43, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Забавно как тут народ расписался в том что пишет на диалектах С :)
    Одни одно подмножество юзают а другие другое...
     
     
  • 3.31, Вадим Жуков (?), 16:49, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/–
    Забавно когда с умным видом говорят про C, имея в виду C++. (нет)
     
  • 3.32, Аноним (32), 16:52, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    > Забавно как тут народ расписался в том что пишет на диалектах С

    "Диалект" это твои фантазии.

    > Одни одно подмножество юзают а другие другое...

    Люди используют разные версии стандарт и разные фичи.
    Но о чем говорить с человеком, который ставит в пример убогий недо-язык, в который bool добавляли 50+ лет, а строкового типа до сих пор нет 🤣?


     
     
  • 4.42, Аноним (42), 17:11, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    А зачем на Си строки обрабатывать?
     
     
  • 5.46, Аноним (46), 17:16, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    Действительно, зачем в софте обрабатывать строки 🤔
    Ну разве что хеллоуворлд.. хотя нет, там тоже строка есть.

    А вот в стд строковый тип нужен чтобы не писать одни и те же велосипеды кадый раз.
    Чтобы была поддержка Unicode (не самая лучшая, но лучше чем в СИшке).

     
     
  • 6.70, Аноним (70), 17:57, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • –3 +/–
    Заканчивай свой старый боян. В языке уровня чистого Си строковый тип не нужен. Работая со строками сишники юзают готовые библиотеки, или сами пишут идиомы. буквально десять строк. Пойми со строками в сишке пролблем нет.

    Твоя проблема в том, что ты не умеешь программировать на уровне Си. И если ты требуешь строковый тип то ты скорей всего паскальщик.

    >Чтобы была поддержка Unicode (не самая лучшая, но лучше чем в СИшке).

    Ты хоть сам то понял о чём написал. В Стандартной библиотеке есть функции по работе с любыми типами символов, в том числе и Юникода.

     
     
  • 7.73, Аноним (73), 18:05, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Что значит уровня СИ Это типа такой же дырявый В С по какой-то причине так... большой текст свёрнут, показать
     
     
  • 8.89, Аноним (89), 18:29, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • –2 +/–
    Да А что Для чего существует Юникод Прежде чем работать со строками ты должен... текст свёрнут, показать
     
  • 7.76, Аноним (166), 18:14, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    > Пойми со строками в сишке пролблем нет.

    Ну да: нет строк - нет проблем, бгг. 👍

    Только чего то уже более полувека за пределы буферов вылазят. 🤔 То самое знаменитое "программирование уровня Си", лол.

     
  • 6.214, Аноним (42), 00:58, 05/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Ну и как там, в "Hello, World!"? Сложно без строкового типа и без bool?
     
  • 4.57, Ivan_83 (ok), 17:43, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/–
    Ни bool ни строк нет в процессоре, это абстракция, в случае С её в язык не тянут и не отращивают.
    Никто тебе не запрещает сделать свои собственные строки по мотивам любого языка или концепции которые тебе нравятся.
     
     
  • 5.71, Аноним (73), 17:57, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    > Ни bool ни строк нет в процессоре, это абстракция, в случае С её в язык не тянут и не отращивают.

    Твоя экспертность поражает насмерть!
    В C23, в тот самый стандарт, добавили Boolean type and values <stdbool.h>
    Правда до этого доходили десятки лет.

    А ты говоришь "не тянут и не отращивают"))

    > Никто тебе не запрещает сделать свои собственные строки по мотивам любого языка или концепции которые тебе нравятся.

    И получим парад кривых велосипедов.

    ps вангую отмазки вида "мне хватает с89"

     
     
  • 6.185, Ivan_83 (ok), 22:30, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Да плевать мне на те булы, ни холодно ни жарко.
    Я вон в шелл скрипте до сих пор без булов обхожусь, и с числами и строками в одном непонятном типе - ничего, жить можно.
    Как можно быть таким упоротым на вот таких несущественных мелочах.

    Из полезного в С11 завезли наконец то атомики, которые в венде были уже давно, вот этого реально не хватало.


    > И получим парад кривых велосипедов.

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

     
  • 5.78, Аноним (166), 18:17, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    > Ни bool ни строк нет в процессоре, это абстракция, в случае С её в язык не тянут и не отращивают.

    Вау, а int и char в процессоре есть, оказывается!

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

     
     
  • 6.102, localhostadmin (ok), 18:49, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/–
    ну да. например int отлично входит в eax, а char в ah или al. если нужно отрицательное число, есть команда neg
     
     
  • 7.117, Аноним (166), 19:15, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    > ну да

    Ну нет. На уровне CPU в принципе отсутствуют какие-либо типы.

    > int отлично входит в eax

    При чем тут кто куда входит, если речь шла о наличии типов на уровне CPU?

     
     
  • 8.124, Аноним (114), 19:27, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Что значит причем У чела анимешная аватарка горничной с ушами, но он пишет... текст свёрнут, показать
     
  • 8.184, Аныным (?), 22:27, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Там есть типизация на уровне команд для работы с числами со знаком и без знака ... текст свёрнут, показать
     
  • 8.187, Ivan_83 (ok), 22:32, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Ухху, и мат процессора там нет считать числа с плавающей запятой Просто показал... текст свёрнут, показать
     
  • 7.176, Bottle (?), 21:43, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    А может и не входит, Си не специфицирует поведение в соответствии с машиной. Я тебе даже больше скажу: открой стандарт и прочти, что тип int обязан иметь ЛИШЬ минимальную длину, равную 16 бит.
    На машине соседа он может быть и 32, и 64.
    Если тебе нужны аппаратно фиксированные типы, то используй int16_t, и даже там поведение при переполнении не определено.
     
     
  • 8.206, Ivan_83 (ok), 00:17, 05/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    А какой регистр входит bool Как называется регистр для строки Речь то шла про ... текст свёрнут, показать
     
  • 6.162, _ (??), 20:32, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    >> Ни bool ни строк нет в процессоре, это абстракция, в случае С её в язык не тянут и не отращивают.
    > Вау, а int и char в процессоре есть, оказывается!

    Вот такие поцЫ и добились введения булль в Си :~-(
    Прямо эталон "рассуждающих о деряшке" :-\

     
  • 6.188, Ivan_83 (ok), 22:36, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    В процессоре есть на что эти абстракции можно наложить один-в-один.
     
  • 4.99, Аноним (99), 18:42, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    >убогий недо-язык

    Не осилил язык уровня Си, поэтому обзываешся.

    >в который bool добавляли 50+ лет

    В чистом Си цифра ноль обозначает логическую Ложь, а любое не нулевое значение обозначает Истину. Для человека который пишет реальные программы на Си это очень удобно и понятно. Само введение булевого типа для языка уровня Си является сахарной абстракцией. Ну ввели и ввели, от этого язык ничего не выиграл, но и ничего не потерял.

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

     
     
  • 5.119, Аноним (166), 19:23, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    > Для человека который пишет реальные программы на Си это очень удобно и понятно

    Ну да, использовать int в контекстах, подразумевающих да/нет, типа параметров и возвращаемых значений - это очень "понятно".

    Сори, но у тебя уже ментальная деформация и стокгольмский синдром после десятилетий использования каличного недоязыка.

     
     
  • 6.208, Ivan_83 (ok), 00:24, 05/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Это у вас какая то деформация: вы фиксируетесь на таких несущественных деталях.
     
  • 5.149, Аноним (141), 20:05, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    bool в Си23 - 1 байт, int - 4 байта. Ты цены на память видел?
     
     
  • 6.163, _ (??), 20:36, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    булевы массивы хранить собрался пытощег-пыхыпышник :-))))))
    А не смущает что boolean - это вообще то 1 _бит_ ?! :)
     
     
  • 7.164, _ (??), 20:39, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Независимо от железа, гру гря. По математике.
    А вот в доступном железе - его _нет_, зачев хоть и в высокоуровневом, но ассемблере - такое нужно?!
    Впрочем поздняк метаццо, там и не такого притащили :(

    Впрочем не важно, всё равно на ЯП последние уже годы пишут, всЁ! Ы-ке и вашего русско-ангельского достаточно.

     
     
  • 8.209, Ivan_83 (ok), 00:30, 05/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Сомнительно что последние годы, даже про последние десятилетия совсем не факт Д... текст свёрнут, показать
     
  • 6.174, Аноним (41), 21:35, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/–
    >bool в Си23 - 1 байт, int - 4 байта.

    Когда компилируется исходник на GCC, исходный текст подвергается дроблению на лексические единицы. Затем он переводится в представление ассемблера с синтаксисом AT&T. В ассемблере есть специальный флаг для булевых операций имеющий размер в 1 байт.

    >Ты цены на память видел?

    Пока что я видел жирного толля.

    ++i; // Компилятор сделает вшитую в процессор инструкцию инкремента.
    i = i + 1; // Компилятор сделает вшитую в процессор инструкцию инкремента.

    Этот сдулся. Несите нового. Я же говорил, что нагибаю технично.

     
     
  • 7.215, Аноним (141), 00:59, 05/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Ощущение, что это сообщение нейронка написала.
     
  • 2.53, Инопланетянин (?), 17:37, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    11 move semantic, constexpr, auto, smart pointers, range-based for, lambdas, threads
    17 variadic templates, variant, optional, structured bindings, filesystem
    20 concepts, ranges, span, print/format, coroutines, location
    23 consteval, expected, stacktrace

    + в последних версиях можно писать атрибуты [[likely]]/[[unlikely]], [[ununsed]], [[fallthrough]] и др не прибегая к макросам и интринсикам.  

     
     
  • 3.86, Аноним (86), 18:28, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    корутины потенциально полезная штука, но пока же до ума не довели.
     

     ....большая нить свёрнута, показать (50)

  • 1.14, Пишу с толчка (?), 16:28, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +10 +/–
    Будучи студентом, так и не понял смысла в плюсах. Какой-то Си переделанный с кучей всего ненужного!
     
     
  • 2.18, Аноним (18), 16:34, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • –2 +/–
    Ну поэтому ты и пишешь, откуда пишешь)

    С учетом того что значительная часть ПО написано как раз на нем - от браузеров до ОС, игровых движков и сред разработки.

     
     
  • 3.24, Ivan_83 (ok), 16:40, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Длмя меня значительная (по колличеству) часть ПО написана на С.
    На крестах только монструозные проекты типа компеляторов, браузеров и игор.
     
     
  • 4.38, Аноним (38), 17:00, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    > Длмя меня значительная (по колличеству) часть ПО написана на С.

    Твое мнение никого не волнует. Условный тумба-юмба живущий в джунглях тоже не использует ПО ни на С, ни на С++)
    Есть статистика использования и распространенность ПО.

    > На крестах только монструозные проекты типа компеляторов, браузеров и игор.

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


     
     
  • 5.60, Ivan_83 (ok), 17:46, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/–
    Так вот статистика на моём личном компе не в пользу крестов :)
    Я посчитал и date, ls, echo всякие :)


    > И что бы ты делал без компиляторов?

    Странный вопрос.
    Технически без компиляторов на крестах можно обойтись более примитивными компиляторами на С.

     
     
  • 6.69, Аноним (69), 17:53, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    > Так вот статистика на моём личном компе не в пользу крестов :)

    Ну что ты там делаешь на своем компе под одеялом - мало кого интересует..

    > Я посчитал и date, ls, echo всякие :)

    Ну т.е мелкие СИшные утилитки. Молодец, можешь взять пирожок на полочке.

    > Технически без компиляторов на крестах можно обойтись более примитивными компиляторами на С.

    Ага, а дрова рубить каменным топором.
    Но примитивными компиляторами пользоваться грустно. Они ни в оптимизацию, ни в скорость не умеют.

    А вот нормальные компиляторы без С++ невозможны. Доказано GCC и Clangʼом.

     
     
  • 7.140, Аноним (140), 19:48, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • –2 +/–
    >А вот нормальные компиляторы без С++ невозможны.

    Возможны.

    >Доказано GCC и Clangʼом.

    В какой-то момент в GCC сменилось поколение, появились люди не знающие чистый Си и знающие C++. А шланг изначально начали пилить на плюсах. Что сказать-то хотел?

     
     
  • 8.144, Аноним (166), 19:55, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    О примерах таких нормальных компиляторов ты, конечно же, тактично умолчал Сло... текст свёрнут, показать
     
     
  • 9.183, Ivan_83 (ok), 22:23, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Всё проще те извраты что в стандартах крестов только на крестах и можно писать ... текст свёрнут, показать
     
  • 7.182, Ivan_83 (ok), 22:22, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Даже в начале 2000х компиляторы не очень в оптимизацию умели и дизасемблированный код читался примено как код на С.
    Железо тогда было на порядке слабее, но всё равно этого было достаточно.

    И сейчас на -O0 производительность драмматически не падает в сравнении с -O3.

     
  • 4.82, Аноним (166), 18:20, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    > Длмя меня значительная (по колличеству) часть ПО написана на С.

    До? Кроме ядра и юниксовых корутилиток а-ля 70е что перечислишь?

    > На крестах только монструозные проекты типа компеляторов, браузеров

    Вот именно: потому что писать большой серьезный софт на сишочке - это ад и мазохизм.

     
     
  • 5.181, Ivan_83 (ok), 22:16, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/–
    > До? Кроме ядра и юниксовых корутилиток а-ля 70е что перечислишь?

    Сходите до гитхуба, там есть поиск, можно выбрать ЯП.


    > Вот именно: потому что писать большой серьезный софт на сишочке - это ад и мазохизм.

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

    Простой пример: есть 100500 либ с С интерфейсом, но с крестовым их мизер, либо кресты приводят к С для взаимодействия с миром либо оно остаётся внутри крестов как буст.

     
  • 2.122, Аноним (166), 19:24, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    > Будучи студентом, так и не понял смысла в плюсах

    А после студенчества тоже так и не понял?

     
     
  • 3.127, Аноним (125), 19:35, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Программисты виноваты в плохом дизайне языка? Это разработчики языка виноваты.
    Был бы дизайн хорошим, не появились бы Java и C#.
     
     
  • 4.137, Аноним (166), 19:44, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    > Программисты виноваты в плохом дизайне языка?

    А я что-то говорил о дизайне языка? С тобой там все в порядке?

     

  • 1.17, Сэм Альтман (?), 16:33, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/–
    Все правильно мы обучаем наши нейросети контентом до 2023 года, иначе получаем коллапс моделей. Нам не выгодно новое...
     
  • 1.28, вах (ok), 16:46, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/–
    Переусложнения ради переусложнений!
     
     
  • 2.34, Вечный странник (?), 16:57, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Правильно, нужно писать на brainfuck!
     
     
  • 3.37, Аноним (11), 17:00, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +4 +/–
    Это уже про упростить чтобы переусложнить.
     

  • 1.33, Вечный странник (?), 16:54, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/–
    Честно, выглядит как попытка уничтожить C++ изнутри, навести раздор в рядах разработчиков для перевода всех на "безопасные" языки по типу Rust. И тут проблема не в таких языках, тот же Rust очень даже хороший язык - проблема в комьюнити Rust.
     
     
  • 2.49, Аноним (49), 17:25, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/–
    Ну вообще-то предложенные contracts c pre post были реализованы в ADA кстати... большой текст свёрнут, показать
     
  • 2.50, Павел (??), 17:28, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    Заговорщики они везде, да, как же иначе
     
  • 2.54, Аноним (158), 17:37, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    > Честно, выглядит как попытка уничтожить C++ изнутри

    так и есть

     
  • 2.56, Инопланетянин (?), 17:42, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/–
    > Честно, выглядит как попытка уничтожить C++ изнутри, навести раздор в рядах разработчиков для перевода всех на "безопасные" языки по типу Rust.

    Скандалы, интриги, расследования...

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

     
     
  • 3.68, Инопланетянин (?), 17:53, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/–
    Полиция провела обыск в доме преступника и обнаружила его увлечение аниме, установленный арч линукс, а также большое кол-во женского белья, хотя по словам соседей девушки у преступника не было.
     
     
  • 4.85, Аноним (158), 18:24, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    давай по классике "отеля К", журнала ксакепа достаточно, на сиди все улики, Никитоз постарался подкинуть подарки :)
     
  • 4.126, Аноним (128), 19:32, 04/11/2026 Скрыто ботом-модератором     [к модератору]
  • –2 +/–
     
     
  • 5.151, Инопланетянин (?), 20:12, 04/11/2026 Скрыто ботом-модератором     [к модератору]
  • +2 +/–
     
  • 2.202, freecoder (ok), 23:57, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    У Rust очень вежливое и отзывчивое комьюнити.
     

  • 1.43, Bottle (?), 17:12, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/–
    А я понимаю, почему нацкомы отклоняют запрос. Комитетчики уже подложили крупную свинью со своей спецификацией модулей, а тут поверх всего этого ещё фич навалили.
    Что это за стандарт такой на 2000 страниц с перекрёстными ссылками, который внедрить не может никто?
     
     
  • 2.52, Аноним (52), 17:34, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    Стандартизация подложила свинью еще в ANSI C, и это стало очевидно к середине нулевых, когда компиляторы стали собирать и оптимизировать код не как написано, а не пойми как.

    И проблема C и C++ не в том, что они небезопасны по памяти, а в том, что они небезопасны по стандартк и компилятору: по факту нельзя ожидать, что код соберется и будет работать как написано или хотя бы логично

     
     
  • 3.65, Аноним (65), 17:50, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/–
    Угу, Деннис Ритчи писал про стандарт The fundamental problem is that it is n... большой текст свёрнут, показать
     
  • 3.66, Аноним (66), 17:50, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • –2 +/–
    За исключением багов компилятора, код всегда собирается как написано. Написано в стандарте. А не как хочется в новолуние левой пятке очередного Васяна. А то, что Васян ленив и не хочет читать стандарт - это проблема Васяна, а не языка.
     
     
  • 4.75, Аноним (41), 18:10, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +3 +/–
    > код всегда собирается как написано.

    А если в коде UB?

    > Написано в стандарте.

    Стандарт прямо говорит "а фиг его знает что произойдет".

    > не как хочется в новолуние левой пятке очередного Васяна.

    Зачем ты так про разработчиков компилятора?

    > А то, что Васян ленив и не хочет читать стандарт - это проблема Васяна, а не языка.

    Не, если в "стандарте" написано "мы не знаем как сложить два числа, пусть будет UB и компилятор сам решит", то это говорит о "качестве" так называемого стандарта))

     
     
  • 5.177, Аноним (177), 21:51, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Если у вас случился UB, то компилятор вместо того чтобы упасть или залогировать ошибку, просто вставит удаления корня и будет прав!
     
  • 4.100, Аноним (100), 18:45, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    Код собирается так, как бы он исполнялся на абстрактной виртуальной машине, существующей только в кошмарных снах авторов стандарта. Т.е. C/C++ де-факто непригодны дня написания современного многопоточного кода с хоть сколько-нибудь приемлемой производительностью
     
     
  • 5.198, Аноним (66), 23:32, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    > Т.е. C/C++ де-факто непригодны дня написания современного многопоточного кода с хоть сколько-нибудь приемлемой производительностью

    Вот оно чо. А мужики-то не знали.

     
     
  • 6.220, Аноним (166), 02:12, 05/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    > Вот оно чо. А мужики-то не знали.

    "Мужики"-то, в отличие от опеннетных экспертов, как раз-то знают, что в силу дидовых требований к memory layout времен PDP-11 код С и С++ не ложится на архитектуру современных CPU примерно никак.

    Будешь ты, эксперт, ручонками restrict прописывать и SIMD операции, чтобы твоя недосишочка приблизилась по производительности к Фортрану, где благодаря отсутствию тез самых дидовых требований и наличию банальных массивов, код элементарно параллелиться на уровне CPU как по маслу.

     
  • 5.207, Ivan_83 (ok), 00:18, 05/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Вот только с наблюдаемой действительность данное утверждение совсем не совпадает.
     
  • 3.92, Ivan_83 (ok), 18:34, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Кто хочет и может тот пишет, остальные жалуются на UB всякие.
     
     
  • 4.171, Павел (??), 21:30, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Ну если человек могун, куда ж нам до него
     

  • 1.58, Ананоним (?), 17:46, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/–
    Неужели там нашёлся кто-то с разумом? Хаха! Если бы приняли, во каша бы получилась, а не язык.
     
  • 1.67, Инопланетянин (?), 17:50, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/–
    Почему нельзя было только контракты отклонить в новой версии стандарта? Просто их перенести, а все остальное релизнуть.  
     
     
  • 2.74, Аноним (41), 18:08, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    Как ты себе это представлешь?
    Стандарт С++29 в котором сказано "а вот отсюда и ближайшие 100 страниц не читайте"?

    Пусть комитет удаляет контракты из текста стандарта и тогда его утвердят.
    Собственно от них это и хотят)

     
     
  • 3.191, Сергей Макаров (?), 22:52, 04/11/2026 Скрыто ботом-модератором     [к модератору]
  • +/–
     

  • 1.77, Аноним (77), 18:17, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/–
    Вброшу конспирологию: стандарт тормознуло функциональное лобби. Контракты это легкий способ написать надежные и верефецируемые программы без изучения функциональщины и всей связанной с ней математической зауми. Заучкам в свитерах просто обидно, что есть более практичный способ достичь цели которую декларируют фп-языки. Популяризацию контрактов нельзя терпеть ни в каком виде,  поэтому дернули стоп-кран.

    Кстати, западные вузы производят именно фп-программистов, а в реальной работе почти всегда используются ОО-подход. У этих челов случается нехилая фрустрация, когда они понимают, что их учили бесполезному вышиванию байтов крестиком.

     
     
  • 2.81, маняним2 (?), 18:19, 04/11/2026 Скрыто ботом-модератором     [к модератору]
  • –1 +/–
     
  • 2.83, Аноним (83), 18:21, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Контрактное программирование в С++26 в предложенном варианте это больше assert, чем contract и на контрактное программирование только названием.
     
     
  • 3.88, Аноним (88), 18:28, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/–
    Соглы. Контракты вообще не надо тащить в стандарт языка и оставить на откуп сторонним библиотекам. Как говорили выше: диды развивают язык ради ИБД.
     
     
  • 4.90, Инопланетянин (?), 18:33, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    > Соглы. Контракты вообще не надо тащить в стандарт языка и оставить на
    > откуп сторонним библиотекам. Как говорили выше: диды развивают язык ради ИБД.

    Контракты вещь полезная. В Ada есть. А вот линейную алгербу на кой притащили - вопрос.

     
     
  • 5.115, Аноним (83), 19:15, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    В Аде много чего другого есть, а С++ даже стека нет :-(
     
     
  • 6.138, Аноним (138), 19:44, 04/11/2026 Скрыто ботом-модератором     [к модератору]
  • +/–
     
  • 6.145, Аноним (166), 20:01, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    > а С++ даже стека нет :-(

    Вот это новости! Как же люди юзали std::stack еще с 90х?

     
     
  • 7.167, _ (??), 20:54, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    А ты точно понимаешь что это "std::stack" такое? :-)
     
  • 2.109, Аноним (125), 19:05, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    >Вброшу конспирологию: стандарт тормознуло функциональное лобби.

    Разовью мысль: для чего вообще применяется функциональное программирование?
    Правильно, для задач искусственного интеллекта. Эти всякие Лиспы, Скимы, Наскели, Окамлы. Это сейчас как раз модно, А С++ - как кость в горле для любителей AI-культуры.

     
     
  • 3.120, Инопланетянин (?), 19:24, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    >>Вброшу конспирологию: стандарт тормознуло функциональное лобби.
    > Разовью мысль: для чего вообще применяется функциональное программирование?
    > Правильно, для задач искусственного интеллекта. Эти всякие Лиспы, Скимы, Наскели, Окамлы.

    То символьный ИИ. Не путай с вычислительным. Основное примененеие функциональных языков и в частности семейства ML (не путать с machine learning) - это доказательство корректности: Rocq, Lean.

     
     
  • 4.135, Аноним (125), 19:42, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    >Основное примененеие функциональных языков  ... доказательство корректности

    Так вот, ФП не в свою область и полезло. Автоматическое доказательство теорем, моделей - это задача логического программирования, основанного на теории предикатов первого порядка.
    А ФП - это про обработку функций, когда функции используются в качестве данных.

     
     
  • 5.148, Аноним10084 и 1008465039 (?), 20:04, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    > Так вот, ФП не в свою область и полезло

    У ФП в этом плане есть свой козырь в рукаве: изоморфизм Карри-Ховарда. Доказательства эквивалентны программам. Так что вполне себе в свою

     
  • 2.139, Аноним (166), 19:46, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    > Вброшу конспирологию: стандарт тормознуло функциональное лобби

    О да, ведь до этого якобы "торможения" С++ развивался с бешеной скоростью, ага.

    Нет, просто процесс каличный by design.

     

  • 1.79, маняним2 (?), 18:17, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/–
    Контракты в полностью перекрываются более гибкими аннотациями и последующими профилями. Контракты легко эмулируются ассертами или рукопашным кодом. Кроме того у контрактов куча неустранённых условностей и ограничений. После сабельного наскока с модулями, которые до сих пор исправляют, совершенно правильно отклонили сырые и ненужные контракты.
     
     
  • 2.146, Аноним (146), 20:04, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    >>> Контракты легко эмулируются ассертами <<<

    Засада в том что assert это макроc! Нужен assert? - подключай заголовок, - забудь про import std; - это просто не сработает! В итоге, так или иначе придется вводить что-то на замену assert если хотите использовать только модули.

     
  • 2.154, Аноним (154), 20:20, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    > Контракты в полностью перекрываются более гибкими аннотациями и последующими профилями.

    Слишком категоричное утверждение)

    > Контракты легко эмулируются ассертами или рукопашным кодом.

    Ну, т.е придется прдолить рукопашный код.
    Спасибо именно об этом плюсовики мечтали!

    > Кроме того у контрактов куча неустранённых условностей и ограничений.

    В ADA как-то справились, а тут не смогли?
    Что ж это за комитет такой?

     

  • 1.98, Аноним (98), 18:40, 04/11/2026 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +/–
     
  • 1.106, Аноним (125), 18:56, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/–
    Концепты предлагали внедрить ещё в C++11, но не приняли, потому что недоработаны. Приняли только в C++20, вон сколько времени пришлось дорабатывать, фактически 20 лет.

    Дизайн языка - дело сложное, надо очень осторожно добавлять новые фичи, и только такие, без которых не обойтись.

    Например, когда начали разрабатывать Ada, то уже тогда хотели сделать её объектно-ориентированным, однако Жан Ишбиа отклонил, так как непонятно было как бороться с недостатками ООП.
    Потребовалось 15 лет исследований чтобы появился первый стандартный объектно-ориентированный язык - Ada 95.

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

     
     
  • 2.111, Аноним (111), 19:10, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Там же Саттер уже предлагает cpp2
     
  • 2.118, Аноним (118), 19:17, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/–
    В то время айтишкой занимались единицы людей, совершенно от неё далёких. Собственно, некоторые из нас ещё застали времена тех совершенно помойных программ.
     

  • 1.108, Аноним (104), 19:02, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/–
    Язык скоро будет настолько сложный, что разберется только нейронка. А нормального единого менеджера пакетов или нормальной системы сборки до сих пор не видно.
     
     
  • 2.110, Аноним (110), 19:07, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    >Язык скоро будет настолько сложный, что разберется только нейронка.

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

    А вот этого даже близко не надо.

     
     
  • 3.130, Аноним (104), 19:37, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    >А вот использовать устаревшие функции на основе того, что ей скормили всё подряд, запросто может.

    Так и люди используют устаревшие функции и подходы, даже в великом гугле смесь из С98 и С++20 в одном файле. Следовательно обучаться ей не на чем, но если ее попросить писать только С++23, она и будет так писать.

    >А вот этого даже близко не надо.

    Конечно, лучше бояться обновлений либ и обвешаться питонобашепортянками, тут так принято.

     
     
  • 4.134, Аноним (114), 19:40, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    > Конечно, лучше бояться обновлений либ и обвешаться питонобашепортянками, тут так принято.

    Желательно чтобы XZ библиотека обновлялась просто раскатыванием тарболов, как диды в прошлом тысячелетии.
    А заведовать этим будет ЖинТян - он анон, поэтому мы ему доверяем!


     

  • 1.142, Аноним (146), 19:52, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/–
    А развивать Carbon или Cpp2 религия не позволяет? С++ должен быть deprecated by design!
     
     
  • 2.147, Аноним (166), 20:04, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    > А развивать Carbon или Cpp2 религия не позволяет?

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

    Ты хоть посмотри, кто в комитет-то входит. Там почти все - наймиты корпов.

     
     
  • 3.152, Аноним (146), 20:13, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Там практически все это какие-то ноунеймы! Самый авторитетный чел в комитете (кроме Бьярне) это Герб Саттер и он реально предлагает решение проблемы в виде Сpp2!!! ПС: Смотрел недавнее интервью где Бьярне сам сказал, что когда к нему пришли корпы и попросили его участвовать в ISO это был тот момент когда он облажался и потерял контроль над языком!!! Он признал что в том виде в котором существует комитет это тупик, что изначально должно было быть условно небольшая авторитетная группа которая принимает окончательное решение, а все остальные сотни человек могут только предлагать что-то, но не более того!!!  
     
     
  • 4.161, GNU changed the world for the better (?), 20:32, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Ничего, и у них тоже получится как на картинке где программист начинает строить дом в очередной раз.
     
  • 2.168, Аноним (168), 21:11, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Ээээ Т е ты предлагаешь комитету WG21 просто сказать нам не хочется развивать ... большой текст свёрнут, показать
     

  • 1.150, Аноним10084 и 1008465039 (?), 20:08, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/–
    Не знаю даже, кто эти сверхлюди, которые шарят за все самые новые фичи C++ и все их применяют
     
     
  • 2.155, Аноним (146), 20:23, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Думаю жизнь этих людей лучше всего описывает фильм День курка (Boss Level)
     

  • 1.153, Аноним (153), 20:15, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/–
    Недавно убил пару дней пытаясь закомпилировать что-то на С++.
    Ну это треш товарищи. Мало того что GCC C++ и MSVC это два разных ортогональных мира, так ещё и С++ 20 не компилит то, что должен был компилить С++ 17. А поправить код я не могу, хотя и изучал С++ в школе и универе, потому что сейчас это совсем другой язык.
     
  • 1.169, Аноним (172), 21:21, 04/11/2026 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • –1 +/–
     
  • 1.173, Аноним (173), 21:34, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/–
    Вернулись бы уже к C++98, что ли...
     
  • 1.180, Аноним (178), 22:07, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/–
    > противники контрактного программирования

    Противники ООП программирования. Противники возвращения значений из функций. Противники функционального программирования. Противники салатов из овощей. Противники того, чтобы люди сдвигали очки на кончик носа и с укоризной смотрели поверх.

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

    Противники компиляции проектов по четвергам. Противники выполнения кода на процессорах с нечётным серийным номером.

     
     
  • 2.203, Аноним (197), 00:03, 05/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Противники здравого смысла. Противники трезвого размышления и адекватной оценки. Противники отделения нужного от излишнего
    Как же иногда противно от аутистов в айти, которых хлебом не корми, дай только умереть на каком-нибудь максимально странном холме вроде этого или что-нибудь кому-нибудь пропихнуть.
    Противники деплоя по вторникам. Противники выполнения кода на процессорах с чётным серийным номером.
     
  • 2.211, Ivan_83 (ok), 00:40, 05/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    А вы то что предлагаете?

    Есть же и обратная сторона: "всегда говори да!".

    Вот вам любой студент и/или шизойд завтра принёсёт: "а дафайте дабавим в Ы плас плас чтобы когда маю фамилию камплилятрар выдит то обязан был вывадить сообщение что я самый великый в мире!"
    И ваши эти самые кивалы: "да, давайте, утверждено! срочно в печать!"


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

     

  • 1.192, Аноним (192), 23:09, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/–
    пора в рехаб
     
  • 1.196, Аныным (?), 23:24, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/–
    А контракты плюсовые предполагались работать в compile time или runtime?
    Когда читал про обсуждения этой фишки пару лет назад, показалось что они идут куда-то в сторону dependent types из ФП, а-ля Idris, что на типы можно будет накладывать предикаты и этим задавать конкретный контекст использования. Типа невалидное состояние с точки зрения предметной области невыразимо синтаксически.
     
     
  • 2.200, 0xd34df00d (??), 23:49, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/–
    Рантайм, конечно. В компилтайме в общем случае для не разработанного для этого изначально языка прикрутить такие проверки невозможно.

    Dependent Haskell никак запилить не могут, хотя обычный хаскель куда ближе к идеалу, чем плюсы.

     
     
  • 3.213, Аныным (?), 00:52, 05/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Какая-то шляпа. Чем тогда эти pre/post отличаются от обычных if проверок с бросанием исключения в случае срабатывания.
     
     
  • 4.216, 0xd34df00d (??), 01:06, 05/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    По большому счёту ничем, и это компиляторный сахарок, да.

    Есть мелочи в пользу контрактов (контракты можно вешать на объявления, тогда как 'if', понятно, должен быть в определении; пост-условия проверяются после завершения функции и клинапа всех локальных переменных, включая параметры; всякое такое вот), но есть и мелочи в пользу обычных 'if' — их можно использовать в виртуальных функциях, например, и когда я крайний раз читал пропозал, то некоторые нормальные и естественные конструкции в контрактах были UB (лол).

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

    Так что по большому счёту профит в том, что блумберг Джону Лакосу оплачивает работу над этой «фичей» уже второй десяток лет.

     
  • 2.204, Аноним (172), 00:03, 05/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    >на типы можно будет накладывать предикаты и этим задавать конкретный контекст использования

    В предложении в C++26 отсутствуют инварианты класса (class invariants), которые бы вызывались при вызове любого public-метода класса. Там только для проверки утверждений в начале и в конце работы функций, и то только невиртуальных.

     

  • 1.199, Аноним (197), 23:38, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/–
    > при голосовании против использовались аргументы, которые уже были рассмотрены и отвергнуты рабочей группой WG21

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

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    XSQUARE
    Inferno Solutions
    Hosting by Hoster.ru
    Хоcтинг: