C++Now 2016 program is online

The C++Now 2016 program is online.

Sean Parent

C++Now 2016 program

From the program:

The this years C++Now keynote will be held by the conference's first ever keynote speaker, Sean Parent. He is returning for the tenth annual conference to deliver this year's keynote, "Better Code."

STL Algorithms in Action -- Haitham Gad

Use of STL Algorithm as building block to implement various high level algorithms.

STL Algorithms in Action

by Haitham Gad

From the article:

We saw variations of three common sorting algorithms implemented generically and compactly using STL algorithms. In general, STL algorithms are more applicable than they look. The key to utilizing them is to always ask whether the raw loop I’m about to write (or the one I’m reading) can be replaced by a packaged STL algorithm. You’d be surprised how many times this question can be answered affirmatively.

CppCast Episode 50: Stream Processing with Jonathan Beard

Episode 50 of CppCast the only podcast for C++ developers by C++ developers. In this episode Rob and Jason are joined by Jonathan Beard to discuss Stream Processing with his Raft Library.

CppCast Episode 50: Stream Processing with Jonathan Beard

by Rob Irving and Jason Turner

About the interviewee:

Jonathan Beard received a BS (Biology) and BA (International Studies) in 2005 from the Louisiana State University, MS (Bioinformatics) in 2010 from The Johns Hopkins University, and a PhD in Computer Science from Washington University in St. Louis in 2015. Jonathan served as a U.S. Army Officer through 2010 where he served in roles ranging from medical administrator to acting director of the medical informatics department for the U.S. Army in Europe. Jonathan's research interests include online modeling, stream parallel systems, streaming architectures, compute near data, and massively parallel processing. He is currently a Senior Research Engineer with ARM Research in Austin, Texas.

Trip Report: C++ Standards Meeting in Jacksonville, February 2016--Botond Ballo

ANother trip report:

Trip Report: C++ Standards Meeting in Jacksonville, February 2016

by Botond Ballo

From the article:

Last week I attended a meeting of the ISO C++ Standards Committee in Jacksonville, Florida. This was the first committee meeting in 2016; you can find my reports on the 2015 meetings here (May 2015, Lenexa) and here (October 2015, Kona). These reports, particularly the Kona one, provide useful context for this post...

Concepts without Concepts--Andrzej Krzemieński

Concetps are good, but how can we get them?

Concepts without Concepts

by Andrzej Krzemieński

From the article:

“Concept” can mean two things in the context of C++ generic libraries:

  1. Something informal: something we know about template parameters, and can tell to other human programmers, e.g. in documentation.
  2. A language feature.

This post is about concepts in the first sense. It claims that we had concepts for quite a while already, and shows how we can use them to make generic libraries easier to use...

Guidelines Support Library Review: string_span--Marius Bancila

What is a string_span?

Guidelines Support Library Review: string_span<T>

by Marius Bancila

From the article:

In a previous post I have introduced the span<T> type from the Guidelines Support Library. This is a non-owning range of contiguous memory recommended to be used instead of pointers (and size counter) or standard containers (such as vector or array). span<T> can be used with strings, but the Guidelines Support Library provides a different span implementation for various types of strings. These string span types are available in the string_span.h header.

P0141R0: Modules, Componentization, and Transition by Gabriel Dos Reis and Pavel Curtis

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: P0141R0

Date: 2015-10-05

Modules, Componentization, and Transition

by Gabriel Dos Reis and Pavel Curtis

Excerpt:

We provide an analysis of constraints for a good, acceptable, and scalable module system for modern C++. This analysis is based on decades of practical experience with precompiled headers, and 40+ years of the include-file model, which has shown its limits. The paper also discusses several migration strategies. The end goal is to stimulate a technical discussion about the difficult choices we face in bringing C++’s compilation model into the era of semantics-aware developer tools, and of smart distributed and cloud build systems.

Modern generic programming using the Tick and Fit libraries

Paul Fultz II talked at C++Now 2015 about generic programming.

Modern generic programming using the Tick and Fit libraries

By Paul Fultz II

From the abstract:

C++ templates provide a very powerful abstraction for generic programming. Even so, they still suffer from long and confusing compile errors and this puts an extra burden of complexity on library writers who want to provide flexibility in their interfaces. In this talk, we will first discuss the importance of concept-based type requirements in code in order to produce clear compile errors, and how the Tick library can be used to specify and check those type requirements.

Later, we will discuss how the Fit library can further enhance generic programming. The Fit library provides many abstractions over functions including a way to do sophisticated overloading in a simple and concise manner. We will discuss in this talk how we can leverage these abstractions with overloading to provide simple and flexible interfaces. We will also look at comparison of these solutions with the Concepts Lite proposal and Boost.ConceptCheck.

slides: here