Meeting 25 April 2019
- ACCU 2019 Slides and Trip Report by Anthony Williams
- Trip report by Ori Ben-Shir (a Rust developer)
C++17/20 Features and Fixes in Visual Studio 2019
Bjarne Stroustrup 2008 interview for Embedded Systems Conference keynote
How have you seen the embedded systems industry change over the last 20 years?
The ubiquity of embedded systems (in 2008!)
What would you say is the most difficult aspect of your work with C++?
Combining flexibility with performance is hard, especially when you have to remain backward compatible.
C++ had $5000 over 3 years of advertisement budget.
If you were starting off in the industry today, what would you want to invent, and why?
Better support for hard realtime constraints, reliability, concurrency. A combination of language and tools, compilation and execution techniques. Perhaps a subset of a general-purpose language, or a subset of C++ (1/10 in size).
Are there any aspects of C++ that you wish you could change?
- C++ syntax is baroque (some decisions were made because the C compiler had to fit in 48K memory)
- Inside C++ there is a smaller language (1/10 in size)
- Scope, RAII
- Classes, templates would still be there
Did you ever imagine that C++ would become so important?
Performance still matters.
Is there any reason for a competent programmer to use C when a C++ compiler of comparable quality is available for a target platform?
What's your opinion on the embedded C++ subset?
- A bad idea. No templates (?!)
- Need rules specific for the area.
- Start with a superset (language + libraries), then cut off unnecessary things.
- JSF was mentioned!
- In a hard realtime environment
- Don't rely on a general-purpose free store manager
- Be very careful with C pointers
What's next after C++?
C++ will be around as a major factor for another 20 years at least. Next generation (C++0x) will be finished in a couple of years. It will be a significant improvement.
Teaching, writing a book for beginners. Researching tools and techniques.
Work on C++0x will wind down over the next few years. (!!)
Which programming techniques and language features are the most important?
With C++ you combine different techniques and features to solve the problem. This will improve with C++0x.
With hard realtime constraints we shouldn't use free store or exceptions ("I'm very sad"), given the tools we have today.
Interactive C++: Meet Jupyter / Cling - Neil Horlock [ACCU 2019]
So, what's exactly wrong with C++?
Why is std::move not [[nodiscard]] in C++20?
An engineer who works remotely should be called an 'engifar'