Что нам C++14 готовит...
От: kaa.python Ниоткуда РСДН профессионально мёртв и завален ватой.
Дата: 29.03.13 00:14
Оценка: 114 (12)
Появилась первая подборка нововведений планируемых к включению в C++14.
Вообще, с C++ интересно получается, то чуть ли не самый мало изменяемый язык из активно использующихся, то каак понесет
Re: Что нам C++14 готовит...
От: Cyberax Марс  
Дата: 29.03.13 00:24
Оценка:
Здравствуйте, kaa.python, Вы писали:

KP>Появилась первая подборка нововведений планируемых к включению в C++14.

KP>Вообще, с C++ интересно получается, то чуть ли не самый мало изменяемый язык из активно использующихся, то каак понесет
В основном, там библиотечные изменения (вполне разумные — полиморфные аллокаторы рулят). Языковых почти нет.

Доставляют пайплайны:
(pipeline::from(input_queue) |
  bind(grep, "^Error") |
  bind(vgrep, "test@example.com") |
  bind(sed, "'s/^Error:.*Message: //") |
  output_queue).run(&threadpool);
Sapienti sat!
Re[2]: Что нам C++14 готовит...
От: kaa.python Ниоткуда РСДН профессионально мёртв и завален ватой.
Дата: 29.03.13 00:31
Оценка:
Здравствуйте, Cyberax, Вы писали:

C>В основном, там библиотечные изменения (вполне разумные — полиморфные аллокаторы рулят). Языковых почти нет.


STL — неотъемлимая часть языка. Так что изменения в библиотеке == изменения языка. Ну а в данном конкретном случае это вообще роли не играет
Re: Что нам C++14 готовит...
От: Erop Россия  
Дата: 29.03.13 08:32
Оценка: :)
Здравствуйте, kaa.python, Вы писали:


KP>Вообще, с C++ интересно получается, то чуть ли не самый мало изменяемый язык из активно использующихся, то каак понесет


Это вроде как старая приплюснутая традиция -- стандарты таки парами выходят
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re: Что нам C++14 готовит...
От: denisko http://sdeniskos.blogspot.com/
Дата: 29.03.13 08:50
Оценка:
Здравствуйте, kaa.python, Вы писали:

KP>Появилась первая подборка нововведений планируемых к включению в C++14.

KP>Вообще, с C++ интересно получается, то чуть ли не самый мало изменяемый язык из активно использующихся, то каак понесет
Сахар в основном. Аллокаторы -- узаконили традицию . Грустно что опять не договорились по концептам (http://isocpp.org/files/papers/n3580.pdf), это имхо вред — http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2013/n3538.html . OpenMP тоже лишнее.
<Подпись удалена модератором>
Re[2]: Что нам C++14 готовит...
От: niXman Ниоткуда https://github.com/niXman
Дата: 29.03.13 08:58
Оценка:
Здравствуйте, denisko, Вы писали:

D>OpenMP тоже лишнее.

это еще почему? оО


кто-то вообще вкурсе, как обстоят дела с boost.filesystem и с boost.asio? их хоть когда-то уже примут?!
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
Re[3]: Что нам C++14 готовит...
От: kaa.python Ниоткуда РСДН профессионально мёртв и завален ватой.
Дата: 29.03.13 09:35
Оценка:
Здравствуйте, niXman, Вы писали:

X>кто-то вообще вкурсе, как обстоят дела с boost.filesystem и с boost.asio? их хоть когда-то уже примут?!


Я, может быть, несколько старомоден, но мне ACE несравненно больше чем boost.asio нравится
Re[4]: Что нам C++14 готовит...
От: niXman Ниоткуда https://github.com/niXman
Дата: 29.03.13 09:37
Оценка: +2
Здравствуйте, kaa.python, Вы писали:

KP>Я, может быть, несколько старомоден, но мне ACE несравненно больше чем boost.asio нравится

неповоротливый монстр. фреймворк, одним словом.
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
Re[5]: Что нам C++14 готовит...
От: kaa.python Ниоткуда РСДН профессионально мёртв и завален ватой.
Дата: 29.03.13 09:40
Оценка:
Здравствуйте, niXman, Вы писали:

X>неповоротливый монстр. фреймворк, одним словом.


Полностью согласен. Но но оставляет ощущение доскональной продуманности, в отличие от того же ASIO.
Re: Что нам C++14 готовит...
От: nen777w  
Дата: 29.03.13 09:46
Оценка:
KP>Появилась первая подборка нововведений планируемых к включению в C++14.
KP>Вообще, с C++ интересно получается, то чуть ли не самый мало изменяемый язык из активно использующихся, то каак понесет

Мне бы очень хотелось вот такого:

void foo(int n = 0, int k = 1, int m = 2);
foo(1,/*возможности пропускать аргумент по умолчанию*/,3);


И вот такого:

//foo.h
struct foo {
  struct doo {
  };
};

//another.h
// - форвардной декларации вложенных классов
struct foo::doo;

//для этого
class some {
  friend struct foo::doo; //теперь doo из foo друг класса some
}
Re[3]: Что нам C++14 готовит...
От: denisko http://sdeniskos.blogspot.com/
Дата: 29.03.13 09:49
Оценка: +2
Здравствуйте, niXman, Вы писали:

X>Здравствуйте, denisko, Вы писали:


D>>OpenMP тоже лишнее.

X>это еще почему? оО
А нафига оно нужно на уровне языка? Мое мнение -- если что-то включается в язык C++, то в идеале программист должен представлять во что это скомпильнется с точностью до инструкции (пока не берем оптимизированный код, но и его надо уметь читать. В случае с OpenMP это практически невозможно, т.к. она классический черный ящик, который делает под капотом кучу небесплатной работы, и который со временем развивается. Та поддержка ее, которая есть сейчас имхо оптимальна, да и читать прагмы гораздо легче, чем очередной вариант for'a.
<Подпись удалена модератором>
Re[4]: Что нам C++14 готовит...
От: niXman Ниоткуда https://github.com/niXman
Дата: 29.03.13 09:53
Оценка:
Здравствуйте, denisko, Вы писали:

D>А нафига оно нужно на уровне языка? Мое мнение -- если что-то включается в язык C++, то в идеале программист должен представлять во что это скомпильнется с точностью до инструкции (пока не берем оптимизированный код, но и его надо уметь читать. В случае с OpenMP это практически невозможно, т.к. она классический черный ящик, который делает под капотом кучу небесплатной работы, и который со временем развивается. Та поддержка ее, которая есть сейчас имхо оптимальна, да и читать прагмы гораздо легче, чем очередной вариант for'a.

а я хотел бы, чтоб у плюсов был пайтоновский синтаксис
так и с OMP и с Cilk+(который войдет в gcc-4.9.x). они упрощают достижение цели.
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
Re[6]: Что нам C++14 готовит...
От: Abyx Россия  
Дата: 29.03.13 11:14
Оценка:
Здравствуйте, kaa.python, Вы писали:

KP>Полностью согласен. Но но оставляет ощущение доскональной продуманности, в отличие от того же ASIO.


а что в ASIO не продумано?
In Zen We Trust
Re[7]: Что нам C++14 готовит...
От: niXman Ниоткуда https://github.com/niXman
Дата: 29.03.13 11:16
Оценка:
Здравствуйте, Abyx, Вы писали:

A>а что в ASIO не продумано?

не искаропки =)
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
Re: Что нам C++14 готовит...
От: Abyx Россия  
Дата: 29.03.13 11:26
Оценка:
Здравствуйте, kaa.python, Вы писали:

KP>Появилась первая подборка нововведений планируемых к включению в C++14.

KP>Вообще, с C++ интересно получается, то чуть ли не самый мало изменяемый язык из активно использующихся, то каак понесет

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

void foo(A, B, C)
{
    std::tuple<__arg_types__...> args{__arg_values__...};
}

как если бы это была
template<typename... __arg_types__> void foo(__arg_types__... __arg_values__);


и еще бы хорошо иметь decltype(return) для получения возвращаемого типа функции как в D

-----

и еще конструктор/деструктор переименовать в this и ~this
эх, мечты, мечты...
In Zen We Trust
Re[8]: Что нам C++14 готовит...
От: Abyx Россия  
Дата: 29.03.13 11:27
Оценка:
Здравствуйте, niXman, Вы писали:

X>Здравствуйте, Abyx, Вы писали:


A>>а что в ASIO не продумано?

X>не искаропки =)
зато header-only.
#include <asio.hpp>
и готово
In Zen We Trust
Re[2]: Что нам C++14 готовит...
От: Erop Россия  
Дата: 29.03.13 11:30
Оценка: +1
Здравствуйте, Abyx, Вы писали:

A>и еще конструктор/деструктор переименовать в this и ~this

A>эх, мечты, мечты...

Вот что на самом деле было бы круто, так это возможность иметь именованные конструкторы.
Что бы конструктор можно было выьирать не только перегрузкой, но и явным именем.
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[7]: Что нам C++14 готовит...
От: kaa.python Ниоткуда РСДН профессионально мёртв и завален ватой.
Дата: 29.03.13 11:30
Оценка: -1
Здравствуйте, Abyx, Вы писали:

A>а что в ASIO не продумано?


ASIO — это не более чем часть BOOST. ACE, как было верно подмечено выше, это полноценный фрэймворк, который по ряду функций превосходит BOOST. Так, к примеру, при работе с ACE у тебя сразу решены такие мелочи как логирование, TLS (этот вопрос вроде отпал с C++11), межпроцессное взаимодействие (в виде TAO, т.е. CORBA), пул потоков, нормальный Proactor (тут не могу утверждать на все сто, но год-два назад ASIO лишь эмулировал Proactor на синхронном I/O).
Re[3]: Что нам C++14 готовит...
От: Abyx Россия  
Дата: 29.03.13 11:34
Оценка:
Здравствуйте, Erop, Вы писали:

E>Вот что на самом деле было бы круто, так это возможность иметь именованные конструкторы.

E>Что бы конструктор можно было выьирать не только перегрузкой, но и явным именем.

для этого есть теги

разница между
Foo(Tag);
FooTag();

не велика,
те же самые символы, только в другом порядке
In Zen We Trust
Re[2]: Что нам C++14 готовит...
От: denisko http://sdeniskos.blogspot.com/
Дата: 29.03.13 11:43
Оценка: :)
Здравствуйте, Abyx, Вы писали:

A>и еще бы хорошо иметь decltype(return) для получения возвращаемого типа функции как в D

В каких ситуациях используется? вообще в ++11 уже есть такая порнография

auto func(arg1 val, arg2 val2)->decltype(val)
auto func(arg1 val, arg2 val2)->Traitor<decltype(arg1)>::value_type
<Подпись удалена модератором>
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.