Developers Club geek daily blog

2 years, 3 months ago
Results of the 2015th year for C ++Perhaps, I will tell a banal thing, but last year was good year for With ++!

Just facts:
  • There was a Visual Studio of 2015 with excellent support of opportunities With ++ 14/17 and even several experimental things
  • There was long-awaited GCC 5.0
  • With ++ gained serious popularity. Somewhere since July — the third place in Tiobe Ranking
  • At the CppCon 2015 conference several important announcements were made


And now about this and another is a little more detailed


The status of support With ++ 11


The compilers Clang, GCC and Intel Compiler have a complete support of C ++ 11.
In the Visual Studio two things are not enough: Expression SFINAE — N2634 and C99 preprocessor — N1653

The status of support With ++ 14


Clang and GCC completely support C ++ 14. And generally the situation is so:
Results of the 2015th year for C ++

Changes from last year are noted by an asterisk (*)

In the Visual Studio of 2015 the compiler C ++ became much closer to complete compliance to the standard, Sized deallocation, attribute [[deprecated]] and support of a single quote as a divider of discharges in numbers were implemented.

Good progress showed also the compiler Intel — they added support generalized a lambda functions, initialization of members of a class (including modular), plus the same attribute [[deprecated]] and support of a single quote as a divider of discharges in numbers.

The status of support With ++ 17


Obviously, the majority of us waits for this grandiose event which has to take place already just about: standardization With ++ 17! Yes, compilers need to work even over support With ++ 11/14, but the majority of features are already implemented or are at the last stages of implementation. Design teams of all main compilers already actively experiment with some new features of future standard C ++ 17.

But what includes With ++ 17?
For complete understanding of a subject it will be best of all to read "Thoughts apropos With ++ 17" from Straustrup. It selected three main priorities:
  1. To improve support of scaling for big projects
  2. To add support of high-level parallelism
  3. It is simpler to make a language kernel, to improve STL


Besides, With ++ 17 is planned to be major release of language, i.e. except small updates we will receive also something larger:



Here the excellent overview of all potentialities With ++ 17.
Those features which will not manage to enter in With ++ 17 will be included into the following standard C ++ 20 which is planned as minor. With ++ 20 will polish With ++ 17 as With ++ 14 polished With ++ 11.

Core Guidelines


At the CppCon conference in the key presentation Byyorn Straustrup made the important announcement: Core Guidelines!

The complete version of guidelines is on GitHub, here excerpt from the introduction:

"With ++ Core Guidelines are result of collaboration of group of authors under the leadership of Byyorn Straustrup as, actually, and language C ++. Many cheloveko-years of work of people from a set of the organizations are enclosed in development of these recommendations. The design of these guidelines assumes their general application and a wide circulation that however, does not exclude your right to copy and change them under needs of your organization.

The purpose of development of these instructions is to help people to use modern With ++ effectively. Under "modern With ++" we mean With ++ 11 and S ++ 14 (and soon and With ++ 17). We will help to provide to you as your code which you will begin to write today will look through 5 (or 10) years."

As language becomes richer, sovremenney (but at the same time more simply) it will be very useful to have such reference book. Some well-known rules are replaced with new approaches — for example, RAII. Transition to them is not so simple, especially, if you support old code base and want to add something modern to the code. Core Guidelines are developed collectively, so, have to become rather practical tool.

Byyorn Straustrup's speech:


Addition to it from Herb Sutter:


Standardization With ++


Last year there took place two meetings of committee on standardization With ++: A game in October and Leneksa in April.

Couple of words about a spring meeting:


And about autumn:


The next meetings of committee on standardization in the 2016th year are scheduled: in Florida in February and in Finland in June (at this meeting vote for the standard C ++ 17 is planned).

News of the world of compilers


Visual Studio



GCC



Clang



Intel compiler



Conferences


Last year there took place two important conferences: CppCon and MettingCpp

CppCon



MeetingCpp



First report:


and the second:


Conclusion


As we see, the committee on standardization With ++ makes serious efforts on work on the standard C ++ 17. By the end of the year we can expect acceptance of a draft copy of this standard. Developers feel the new atmosphere of changes and it is reflected in ratings of popularity of language (in Tiobe Rank C ++ gained 8%). Term "the Renaissance With ++" any more not the myth …

That it is even better — we have a set of experimental features in compilers. We can already experiment with modules, concepts, korutina … It, of course, is not safe yet and cannot be applied in a production-code, but in respect of training and testing it is very interesting. Besides, it gives the chance to receive some fidbek which can influence the final specification of all these things.

The design team of VisualStudio becomes much more open, it is noticeable since VS2015. You not only can create multiplatform applications, but also very quickly receive updates with new interesting features.

All compilers support With ++ 11/14 at rather good level so it is more no, justifications not to pass to use of these standards. By means of Core Guidelines this task becomes even simpler.

Sad news
Just couple of hours ago Scott Myers published article farewell with the world With ++. Discussion on reddit

And what you think?
  • What to you it was remembered from an event near With ++ in the 2015th year?
  • What did I pass?


Well and oprosnichek.
What features you would like to see without fail in With ++ 17

21 persons voted. 20 people refrained.

The users only registered can participate in poll. Enter, please.


This article is a translation of the original post at habrahabr.ru/post/274549/
If you have any questions regarding the material covered in the article above, please, contact the original author of the post.
If you have any complaints about this article or you want this article to be deleted, please, drop an email here: sysmagazine.com@gmail.com.

We believe that the knowledge, which is available at the most popular Russian IT blog habrahabr.ru, should be accessed by everyone, even though it is poorly translated.
Shared knowledge makes the world better.
Best wishes.

comments powered by Disqus