Quantifiers, metaprogramming and concepts -- Nikos Athanasiou

Quantification expresses the extent to which a predicate is true over a set of elements. This installment describes the use of predicate logic in metaprogramming.

Quantifiers, metaprogramming and concepts

by Nikos Athanasiou

From the article:

Metaprograms often use predicate logic in creative ways. For example, type queries in generic code are used to constrain, dispatch, specialize, activate or deactivate code at compile time.

Flip, a new data model C++ framework focused on real time collaboration

Irisate has made available a demo package of Flip, a C++ Framework allowing for a fast, efficient and reliable implementation of concurrent editing by multiple users.

Flip, a new data model C++ framework focused on real time collaboration

by Gregory Makles

From the article:

Flip is a data model library designed as a framework. It is real-time, collaboration-oriented, transactional, portable, compact and can handle complex data structures.

Essential Features

  • Single author applications can be adapted to support simultaneous co-authoring with no extra work
  • Undo/Redo and history are automatically handled (no action classes)
  • Copy/Paste can be done automatically, or refined to your needs and your data structure
  • Allows for offline mode and three-ways merge
  • Multi-threaded/multi-process architecture
  • Transactional
  • Server side is limited to data model code, making it less prone to bugs
  • High stability
  • Performance oriented, extensible, and future-proof document formats
  • At the core of Ohm Studio's unrivaled collaboration solution
  • Designed for easy integration with all kind of data structure, including decade(s) old ones

Registration is necessary to download Flip.

Overload 136 is now available

ACCU’s Overload journal of December 2016 is out. It contains the following C++ related articles.

Overload 136 is now available

From the journal:

The MirAL Story
Description : The X-Windows system is all-pervasive but struggles with security and performance graphics. Alan Griffiths introduces Mir Abstraction Layer to deal with these issues. by Alan Griffiths

Overloading with Concepts
Description : Concepts can play a role in function overloading. Andrew Sutton shows us how. by Andrew Sutton

Ultra-fast Serialization of C++ Objects
Description : Serialising and de-serialising is a common problem. Sergey Ignatchenko and Dmytro Ivanchykhin demonstrate one way to do this quickly. by Sergey Ignatchenko and Dmytro Ivanchykhin

Modern C++ Features: User-Defined Literals
Description : User-defined literals were introduced in C++11. Arne Mertz walks us through their use. by Arne Mertz

Python Streams vs Unix Pipes
Description : Dealing with an infinite sequence requires some thought. Thomas Guest presents various ways to approach such a problem. by Thomas Guest

Letter
Description : Silas S. Brown comments on Steve Love's recent article. by Silas S. Brown

Hello World in Go
Description : Go provides a way to write efficient concurrent programs in a C-like language. Eleanor McHugh shares a "Hello, world!" tutorial. by Eleanor McHugh

More Meeting C++ 2016 videos are online!

A week full of video editing brings the first batch of Meeting C++ 2016 videos online:

More videos are online!

by Jens Weller

Meeting C++ 2016 Playlist

From the article:

With today, almost all videos from the A and all videos of the D Track are online. There is a recording issue with one talk in the A track, which might get resolved in 2017. Also since today, the Meeting C++ YouTube channel has more then 400k views!

The full video set you can find in the Meeting C++ 2016 Playlist, the newest videos are easily found by visiting the Meeting C++ YouTube channel or subscribing to this RSS feed.

CppCast Episode 82: Catch 2 and C++ the Community with Phil Nash

Episode 81 of CppCast the only podcast for C++ developers by C++ developers. In this episode Rob and Jason are joined by Phil Nash, Developer Advocate at JetBrains, to talk about updates to the Catch Unit test library and new features coming to CLion and ReSharper for C++.

CppCast Episode 82: Catch 2 and C++ the Community with Phil Nash

by Rob Irving and Jason Turner

About the interviewee:

Phil started coding back in the early 80s, on 8-bit home computers: from the ZX-81 to the Commodore 64, in BASIC and assembler. He later moved on to PCs and C++ in the early 90s and, despite forays into other languages, keeps coming back to C++. His career has taken him through domains such as anti-virus, mobile, finance and developer tools - among others. He's the original author of the C++ test framework, Catch and is now Developer Advocate at JetBrains for CLion, AppCode and ReSharper C++. His hobbies include writing podcast bios and trolling the podcast hosts.

Path Exploration -- Adi Shavit

A short stroll along filesystem::path.

Path Exploration

by Adi Shavit

From the article:

The “experimental” Filesystem TS has been with us for a few years living in the std::experiment namespace. With C++17 it will finally be merged into std.

When noexcept?--Edouard of quasardb

A good question with a good answer.

When noexcept?

by Edouard of quasardb

From the article:

In a previous post, we had a look at the new constexpr keyword that has been introduced in C++ 11. Today we'll study another new fancy specifier: noexcept...

N4632: Draft agenda for Kona

A new WG21 paper is available. If you are not a committee member, please use the comments section below or the std-proposals forum for public discussion.

Document number: N4632

Date: 2016-12-13

PL22.16/WG21 draft agenda: 27 Feb - 4 Mar 2017, Kona, HI, US

by Clark Nelson

Excerpt:

The primary goals of this meeting will be:

  • Finish processing ballot comments (P0488R0) on the C++17 CD (N4604)
  • Advance C++17 (prospective WD N4618) to DIS

Additional, lower-priority goals include:

  • Try to advance Modules (WD N4610) to PDTS
  • Try to advance Parallelism v2 (WD N4578) to PDTS
  • Try to advance Coroutines (prospective WD N4628) to PDTS
  • Try to advance Concurrency v2 to NP