LINUX.ORG.RU

C++0x: концептов не будет

 ,


0

0

Комитет по стандартизации ISO языка программирования С++ на июльском собрании принял решение отказаться от идеи концептов в новом стандарте. Основных причины две - сомнительная польза от столь существенного нововведения и сырость текущего предложения: за шесть лет разработки авторам так и не удалось определиться с полным и однозначным описанием.

Концепты предполагали дать возможность наложения ограничений на обобщённые типы в шаблонах функций и классов; можно провести аналогию с классами типов из Haskell.

По словам Майкла Вонга, члена комитета по стандартизации C++, пересмотра данного решения стоит ожидать не ранее чем через пять лет. Стоит заметить, что ранее из проекта стандарта была выброшена идея сборщика мусора; причиной была названа излишняя сложность в реализации.

Статья Страуструпа «Simplifying the Use of Concepts»: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2009/n2906.pdf

Статья Вонга (часть 1): http://www-949.ibm.com/software/rational/cafe/blogs/cpp-standard/2009/07/20/the-view-or-trip-report-from-the-july-2009-c-standard-meeting

Статья Вонга (часть 2): http://www-949.ibm.com/software/rational/cafe/blogs/cpp-standard/2009/07/20/the-view-or-trip-report-from-the-july-2009-c-standard-meeting-part-2

>>> Подробности

★★★★★

Проверено: Shaman007 ()

Ответ на: комментарий от lester

Сборщик мусора это конечно слишком, но концепты очень даже вкусно смотрелись.

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

> а отсутствие сборщика мусора?

тоже не критично

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

> Да, ты верно подметил, не в депрессию, в состояние говнокодинга.

а бедный Линус до сих пор на С пишет, и почему он у l5k не проконсультируется

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

> Ололололо, lester, ты слишком долго плавал в океане.

я что-то пропустил? он уже пишет на кошерном Mono?

lester ★★★★
()

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

Ололо, аналитики ЛОРа говорят что gc в прогу на C++ вставляется левой ногой в любой момент. трупстрауса повержен, ему прописано обучение по букварю Александреску

Karapuz ★★★★★
()

>C++0x: концептов не будет

Бляяяяяяяяяяяяяяяя! И че, хаскелисты следующие 5 лет будут безнаказано нас чморить type class-ами?!

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

> Ололо, аналитики ЛОРа говорят что gc в прогу на C++ вставляется левой ногой в любой момент

вероятно не так просто сделать реализацию приемлимую по скорости

lester ★★★★
()

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

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

>вероятно не так просто сделать реализацию приемлимую по скорости

Аналитики ЛОРа говорили "В вашей жабе GC тормозной, вот сделают на C++ и зарулят жабу. Опять" И где?

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

> Аналитики ЛОРа говорили "В вашей жабе GC тормозной, вот сделают на C++ и зарулят жабу. Опять" И где?

это были другие аналитики :) как по мне в С++ сборщик - лишнее

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

Ничего страшного думаю не произойдет. сборщик мусора? не всегда он нужен. тем кому нужен - уже реализовали(Qt4) Главное, чтобы новый стандарт совсем не заглох и не перенесен еще года на два

AVATAR
()

Хорошо. Осталось выкинуть шаблоны, разрешить присваивание this -- и язык вновь станет нормальным, времен второго издания страуструповой книжки. Нефиг было и начинать поганить Си с объедками :)

Rexy-Craxy
()

> По словам Майкла Вонга, члена комитета по стандартизации C++, пересмотра данного решения стоит ожидать не ранее чем через пять лет.

Слабая, бесхарактерная позиция. А ведь Майклу было у кого поучиться! Так, уважаемый американский программист, мистер Джереми Вонг, просто взял ружье, и пошел перестрелял из него всё быдло, что попалось под руку. Разумеется, в лапы полиции живым он не отдался. Ъ. Майкл же только позорит память своего однофамильца...

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

хотя конечно жаль, что не успели концепты окончательно разработать

AVATAR
()
Ответ на: комментарий от Rexy-Craxy

> Осталось выкинуть шаблоны

Лучше будет выкинуть тебя.

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

> а бедный Линус до сих пор на С пишет, и почему он у l5k не проконсультируется

Что характерно, Линус ненавидит кресты. Они для него слишком хитрые.

yk4ever
()

Концепты лишь запутывали и без того непростой язык. Неужели таки взялись за ум и не стали портить и без того несладкую жизнь разработчикам компиляторов. Только раньше бы, лет так на 20.

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

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

Я вообще к тому, что рассуждать о быдлокоде, имея пять каментов за душой, дурной тон. Вежливее надо, тоньше ;)

anonymous4
()

<slowpoke>А аргументы по умолчанию в описании типов шаблона сделали?</slowpoke>

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

> Вежливее надо, тоньше ;)

Не осталось уже троллей нормальных :(

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

Я тут вообще readonly, но извините, такие темы меня провоцируют...

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

IMHO:

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

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

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

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

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

Хотя, современные компиляторы тоже провоцируют разработчика писать быдлокод. Например, gcc 3.x.x и выше вот такой код:

int32_t bydlo_func (int32_t x, int32_t y)
{
    int32_t i;
    int32_t j;
    int32_t rc;

    for (i = 0; i < x; i++)
    {
        for (j = 0; j < y; j++)
        {
            /*
             * something evil here, result stored in 'rc'
             */
        }
    }

    return rc;
}

"превратят" в код, который проканывал, как задуманное в 2.95.хх:

int32_t bydlo_func (int32_t x, int32_t y)
{
    register int32_t i;
    register int32_t j;
    int32_t rc;

    for (i = 0; i < x; i++)
    {
        for (j = 0; j < y; j++)
        {
            /*
             * something evil here, result stored in 'rc'
             */
        }
    }

    return rc;
}

funky_dennis
()

Испугались, что не осилят и придётся переименовываться в C++1x? Сбросили балласт.

const86 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.