The “unsigned” Conundrum--Tony “Bulldozer00” DaSilva

Are you clear with unsigned?

The “unsigned” Conundrum

by Tony “Bulldozer00” DaSilva

From the article:

A few weeks ago, CppCon16 conference organizer Jon Kalb gave a great little lightning talk titled “unsigned: A Guideline For Better Code“. Right up front, he asked the audience what they thought this code would print out to the standard console:

Even though -1 is obviously less 1, the program prints out “a is not less than b“. WTF?

Overload 135 is now available

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

Overload 135 is now available

From the journal:

Determinism: Requirements vs Features
A program can easily be non-deterministic. Sergey Ignatchenko considers how to define determinism. by Sergey Ignatchenko

Eight Rooty Pieces
Finding a square root is a common interview question. Patrick Martin demonstrates eight different ways to find a root. by Patrick Martin

Polymorphic Comparisons
Polymorphic comparisons require much boilerplate. Robert Mill and Jonathan Coe introduce a template utility for such comparisons. by Robert Mill and Jonathan Coe

C++ Synchronous Continuation Passing Style
Direct and continuation passing styles differ. Nick Weatherhead explains a continuation passing style for synchronous data flow. by Nick Weatherhead

Attacking Licensing Problems with C++
Software licenses are often crackable. Deák Ferenc presents a technique for tackling this problem. by Deák Ferenc

CppCast Episode 74: C++/WinRT with Kenny Kerr

Episode 74 of CppCast the only podcast for C++ developers by C++ developers. In this episode Rob and Jason are joined by Kenny Kerr from Microsoft to discuss the C++/WinRT library, previously known as ModernCpp, a standard C++ projection for the Windows Runtime.

CppCast Episode 74: C++/WinRT with Kenny Kerr

by Rob Irving and Jason Turner

About the interviewee:

Kenny Kerr is an engineer on the Windows team at Microsoft, an MSDN Magazine contributing editor, Pluralsight author, and creator of moderncpp.com (C++/WinRT). He writes at kennykerr.ca and you can find him on Twitter at @kennykerr.

C++ Core Check code analysis is included with VS “15”--Andrew Pardoe

Following the core guidelines is becoming easier.

C++ Core Check code analysis is included with VS “15”

by Andrew Pardoe

From the article:

Visual Studio “15” Preview 5 now includes the C++ Core Guidelines Checkers. This means you no longer have to install the C++ Core Check package from NuGet to check your code against rules and profiles in the C++ Core Guidelines. Just configure Code Analysis to include the C++ Core Check extensions.

camomilla: C++ error simplification script - - Vittorio Romeo

Article covering "camomilla", a Python script designed to post-process heavily-template-based C++ errors in order to make them easier to read.

camomilla: C++ error simplification script

by Vittorio Romeo

From the article:

camomilla uses simple text transformations to make gcc and clang errors smaller and easier to read. [...] The main text transformation used by camomilla to prevent full expansion of templates is "template typename collapsing", which hides nested typenames up to a user-specified depth. [...] The two other current transformations offered by camomilla are simple regex replacements that can act on namespaces or generic symbols. They can be defined in .json configuration files (which can recursively include each other!) [...] camomilla helps with [continuously transforming the same error] by automatically caching the last processed original error, so that the user can play around with different transformations and options.

rest_rpc released the first official version

The C++ open source community released (purecpp.org) released theit first official version.

rest_rpc website

by purecpp,org

From the website:

rest_rpc is developed using modern c++. The first version was released after several iterations and refactoring. rest_rpc is an easy to use, flexible, high-performance, cross-platform RPC framework.

Features of rest_rpc

  • RPC call just like local function call
  • Easy to use: developers only need to focus on business
  • Flexible: the serialization method can be freely customized, default support json,msgpack
  • Supports synchronous and asynchronous calls