• Что бы вступить в ряды "Принятый кодер" Вам нужно:
    Написать 10 полезных сообщений или тем и Получить 10 симпатий.
    Для того кто не хочет терять время,может пожертвовать средства для поддержки сервеса, и вступить в ряды VIP на месяц, дополнительная информация в лс.

  • Пользаватели которые будут спамить, уходят в бан без предупреждения. Спам сообщения определяется администрацией и модератором.

  • Гость, Что бы Вы хотели увидеть на нашем Форуме? Изложить свои идеи и пожелания по улучшению форума Вы можете поделиться с нами здесь. ----> Перейдите сюда
  • Все пользователи не прошедшие проверку электронной почты будут заблокированы. Все вопросы с разблокировкой обращайтесь по адресу электронной почте : info@guardianelinks.com . Не пришло сообщение о проверке или о сбросе также сообщите нам.

Bjarne Stroustrup’s paper “Concept-Based Generic Programming in C++”

Sascha Оффлайн

Sascha

Заместитель Администратора
Команда форума
Администратор
Регистрация
9 Май 2015
Сообщения
1,549
Баллы
155
Bjarne Stroustrup posted a note on LinkedIn about his paper “Concept-Based Generic Programming in C++” saying “I wrote a new paper that I suspect might become significant”


Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.



Concept-Based Generic Programming in C++

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.



Note: the technical details covered in the paper can be found in the

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

and

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

!!!

Bjarne’s paper abstract


We present programming techniques to illustrate the facilities and principles of C++ generic programming using concepts. Concepts are C++’s way to express constraints on generic code. As an initial example, we provide a simple type system that eliminates narrowing conversions and provides range checking without unnecessary notational or run-time overheads.

Concepts are used throughout to provide user-defined extensions to the type system. The aim is to show their utility and the fundamental ideas behind them, rather than to provide a detailed or complete explanation of C++’s language support for generic programming or the extensive support provided by the standard library.

Generic programming is an integral part of C++, rather than an isolated sub-language. In particular, key facilities support general programming as well as generic programming (e.g., uniform notation for types, lambdas, variadic templates, and C++26 static reflection).

Finally, we give design rationales and origins for key parts of the concept design, including use patterns, the relationship to Object-Oriented Programming, value arguments, notation, concept type-matching, and definition checking.

My comments after reading the paper


Thank you for this important and timely paper! Here are a few things in the paper that made me smile 🙂 Bjarne mentioned 6 important features of a programming language:

1) Generality
2) Uncompromised efficiency
3) Statically type-safe interfaces
4) Affordable
5) Teachable
6) A living language

I enjoyed reading that we can continue to move beyond Object-Oriented Programming (without leaving it behind) 😀

I always have to laugh when I see a repeating programming language standards committee “Human Nature” pattern: “initially people ask for a LOUD syntax for novel constructs because they are seen as difficult or even dangerous. Later, the same people complain about verbosity.”

“Generic Programming”:

a) is “just” programming
b) is complementary to classical Object-Oriented Programming
c) using concepts is deeply integrated into C++, rather than being an isolated sub-language.
d) using concepts and other compile-time evaluation support enable us to build our own type systems on top of what C++ offers by default

One more thing to add:


This paper is more than just a discussion of the ISO C++ for concept-based generic programming. The paper also includes lots of code examples that you can try with your compiler.



Источник:

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

 
Вверх Снизу