C++ дайджест № 4: новинки стандарту і compile-time трюки
Розбір новинок стандарту C++, повна відеопідбірка виступів з Qt World Summit 2015, підбірка статей по хаках в compile-time, 30 років C++ та інше.
Стандарт
Tales of C++: Розбір нового експериментального типу std::experimental::variant.
Simplify C++: New C++ Features: lambdas.
Reddit: Прогрес робочих груп по впровадженню стандарту C++17.
Scott Meyers: Breaking all the Eggs in C++.
Kernel Panic: 5 корисних речей в C++11.
Simon Ninon: Роз’яснення з приводу рефлексії в C++14.
Відео
John Farrier на CppCon 2015: Demystifying Floating Points.
Повна підбірка відео з Qt World Summit 2015.
Frameworks, Tools & Services
Cling: інтерактивний інтерпретатор C++, створений на базі LLVM та Clang.
Visual C++ Team Blog: Debug C++ Code on Linux from Visual Studio.
Resharper C++ Blog: життя з багами та невизначеностями компілятора Microsoft C++.
SLED: A responsive C++ editor that understands your code (Windows).
Компанія Microsoft відкрила код свого набору інструментів для розподіленого машинного навчання — Distributed Machine Learning Toolkit.
AvanceDB — база даних в пам’яті, що підтримує велику підмножину методів CouchDB REST API.
Object-Oriented Design
с++ truths: Коваріантність та контрваріантність в стандартній бібліотеці C++.
Concurrency
Julia Evans: Профілювання багатопотокових програм за допомогою Coz.
Preshing on Programming: Ви можете робити атомарний цикл операцій Читання-Модифікація-Запис будь-яким способом.
Управління пам’яттю
Стаття про об’єкти нульового розміру, malloc, null та наслідки з цього всього.
Нові фішки C++ по управлінню пам’яттю: шаблоновані rvalue-посилання та std::forward.
Pet Monster Projects
IncludeOS — проект, що дозволяє запускати ваш C++ код на віртуальному апаратному забезпеченні.
Zetcore5 — «Серверний фреймворк для C++, що надає вражаючі можливості».
Проста модель центрального процесора в
Проста функція для перетворення восьмибітного числа в рядок в бінарному вигляді.
Libcox — бібліотека крос-платформенних системних викликів та утиліт.
Реалізація SHA-3 на C та асемблері для архітектури x86.
Трошки історії
Скріншоти розробників та юніксоїдів 2002 року.
14 жовтня виповнилось 30 років C++: інтерв’ю з Б’ярном Страуструпом про C++, перший компілятор C++ - Cfront, та трошки інфографіки.
Compile-Time
Bob Nystrom про макроси вищих порядків в С++.
Трюки з генерацією псевдо-випадкових чисел на C++ під час компіляції.
Чисте використання variadic templates.
Ітерація по структурі шляхом зловживання можливостями препроцесора C.
Jean Guegant — Вступ до концепції SFINAE в C++: інтроспекція члена класу під час компіляції.
Інше
Емуляція механізму управління ходом виконання програми «defer» (рідних для Go та Swift) в C за допомогою Clang та GCC + Blocks.
Ian Barland — викладач коледжу інформатики в університеті Редфорда про те, чому C та C++ є жахливими мовами програмування.
Linux TCP Listener — запропонований патч з lockless підходом, що значно прискорює роботу.
← Попередній випуск: C++ дайджест #3