September 19 – Bjarne Stroustrup Presents – C++11 Style – A Touch of Class

Sign-Up: https://meetings.vtools.ieee.org/meeting_view/list_meeting/13647

Abstract:

We know how to write bad code: Litter our programs with casts, macros, pointers, naked new and deletes, and complicated control structures. Alternatively (or in addition), obscure every design decision in a mess of deeply nested abstractions using the latest object-oriented programming and generic programming tricks. For good measure, complicate our algorithms with interesting special cases. Such code is incomprehensible, unmaintainable, usually inefficient, and not uncommon.

But how do we write good code? What principles, techniques, and idioms can we exploit to make it easier to produce quality code? I will make an argument for type-rich interfaces, compact data structures, integrated resource management and error handling, and highly-structured algorithmic code. I will illustrate my ideas and motivate my guidelines with a few idiomatic code examples.

I will use C++11 freely. Examples include auto, general constant expressions, uniform initialization, type aliases, type safe threading, and user-defined literals. C++ features are only just starting to appear in production compilers, so some of my suggestions have the nature of conjecture. However, developing a “modern style” is essential if we don’t want to maintain newly-written 1970s and 1980s style code in 2020.

This presentation reflects my thoughts on what “Modern C++” should mean in the 2010s: a language for programming based on light-weight abstraction with a direct and efficient mapping to hardware, suitable for infrastructure code.

Speaker:

Bjarne Stroustrup is the designer and original implementer of C++ and the author of several books (incl. “Programming — Principles and Practice using C++” and “The C++ Programming Language”) and many popular and academic publications. His research interests include distributed systems, design, programming techniques, software development tools, and programming languages. He is actively involved in the ISO standardization of C++. Dr. Stroustrup is a Distinguished Professor at Texas A&M University and the holder of the College of Engineering Chair in Computer Science. He is a member of the US National Academy of Engineering, an IEEE Fellow, and an ACM fellow. Born in Aarhus Denmark. Cand.Scient. (Mathematics and Computer Science), University of Aarhus Denmark. Ph.D. (Computer Science) Cambridge University, England.www.stroustrup.com

Location:

NATIONAL INSTRUMENTS BUILDING C
Cafe 1 and Cafe 2
11500 North Mopac
Austin, TX 78759

Meeting Agenda:

6:30 p.m. Networking and Gathering
7:00 p.m. Call to Order, Announcement
7:15 p.m. Presentation, with Q/A
8:45 p.m. Meeting Evaluation, Adjourn