# Bjarne Stroustrup—C++ at Forty Years: Where It's Come and Where It's Going

**URL:** <https://scanalyst.fourmilab.ch/t/bjarne-stroustrup-c-at-forty-years-where-its-come-and-where-its-going/641>\
**Category:** Continuity\
**Tags:** computing, programming-languages, bjarne-stroustrup\
**Created:** [28 December 2021 15:39 UTC](https://scanalyst.fourmilab.ch/t/bjarne-stroustrup-c-at-forty-years-where-its-come-and-where-its-going/641 "2021-12-28T15:39:57Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![johnwalker](https://scanalyst.fourmilab.ch/user_avatar/scanalyst.fourmilab.ch/johnwalker/32/17415_2.png) [@johnwalker](https://scanalyst.fourmilab.ch/u/johnwalker)\
**Post date:** [28 December 2021 15:39 UTC](https://scanalyst.fourmilab.ch/t/bjarne-stroustrup-c-at-forty-years-where-its-come-and-where-its-going/641/1 "2021-12-28T15:39:57Z")

</div>

[![](https://scanalyst.fourmilab.ch/uploads/default/original/2X/e/e24ad09b4f4013ca66c859a7ba591c3117a0b755.jpeg "C++20: Reaching for the Aims of C++ - Bjarne Stroustrup - CppCon 2021") ](https://www.youtube.com/watch?v=15QF2q66NhU)

Bjarne Stroustrup, creator of C++, discusses its origins, goals, evolution over time, and plans for the future at the Cppcon meeting in October, 2021.

I was a fan of C++ in the 1990s, but ended up repelled by incessant instabilities in code caused by scholasticism among the developers of the G++ compiler, whose 75 line error messages when you mistyped a character in a template declaration or invocation became iconic of the hidden complexity of what was, after all, a hack erected on top of C. Stroustrup believes that with single-threaded performance of processors having reached a plateau due to the [Dennard scaling theorem](https://en.wikipedia.org/wiki/Dennard_scaling) hitting its limits in the mid-2000s, demand for high-performance languages that let you “get close to the hardware” will remain strong. Maybe, but in my opinion that need is more likely to be met by modern languages such as [Rust](https://en.wikipedia.org/wiki/Rust_(programming_language)) and [Go](https://en.wikipedia.org/wiki/Go_(programming_language)), which can run just as fast as C++ and do not require programmers to upload tens of thousands of lines of libraries into their brains, cope with arcane syntax, or worry about dangling pointers, buffer overflows, memory leaks, and all of the rest of the sorry legacy of C which remains in C++, lurking beneath the dull and pitted surface.

Where would I like to see C++ go? _Away!_

---

<div class="post-metadata">

**Author:** ![civilwestman](https://scanalyst.fourmilab.ch/user_avatar/scanalyst.fourmilab.ch/civilwestman/32/25_2.png) [@civilwestman](https://scanalyst.fourmilab.ch/u/civilwestman)\
**Post date:** [28 December 2021 17:08 UTC](https://scanalyst.fourmilab.ch/t/bjarne-stroustrup-c-at-forty-years-where-its-come-and-where-its-going/641/2 "2021-12-28T17:08:15Z")

</div>

Though I am motivated, I haven’t been able to find the time to learn the basics of programming. My motivation stems from my sense that writing effective code is one of the most important historical events of my lifetime and the whole exercise has passed me by; the post, with numerous terms of art and principles of processing, is thus a mystery to me. I had also tentatively planned to watch the entire series of videos on the vacuum tube computer, posted on Scanalyst. I thought it would be a way of getting a handle on understanding computer hardware. The combination of these, I still think, would offer a broad overview of the data processing revolution which has clearly changed the course of history. When I was working full-time, I was always tired. Now that I am doing that no longer, I can only say I am so busy with mundane tasks that I am now re-tired!

---

<div class="post-metadata">

**Author:** ![pturmel](https://scanalyst.fourmilab.ch/user_avatar/scanalyst.fourmilab.ch/pturmel/32/111_2.png) [@pturmel](https://scanalyst.fourmilab.ch/u/pturmel)\
**Post date:** [29 December 2021 01:34 UTC](https://scanalyst.fourmilab.ch/t/bjarne-stroustrup-c-at-forty-years-where-its-come-and-where-its-going/641/3 "2021-12-29T01:34:15Z")

</div>

I have to admit that when I want to go _ **fast** _, I still use C.

Most of my professional programming is Java, not chosen by me. But I’m not sure I wouldn’t make the same choice.

I rather like python for casual programming, with a dash of more complicated stuff mixed in.

---

<div class="post-metadata">

**Author:** ![Mettelus](https://scanalyst.fourmilab.ch/letter_avatar_proxy/v4/letter/m/a587f6/32.png) [@Mettelus](https://scanalyst.fourmilab.ch/u/Mettelus)\
**Post date:** [29 December 2021 04:43 UTC](https://scanalyst.fourmilab.ch/t/bjarne-stroustrup-c-at-forty-years-where-its-come-and-where-its-going/641/4 "2021-12-29T04:43:13Z")

</div>

> [@civilwestman](#):
>
> I thought it would be a way of getting a handle on understanding computer hardware

I think [this YouTube series by Ben Eater](https://youtu.be/kRlSFm519Bo) is very good with regard to understanding computer hardware. Each video is about 15 minutes. Through the series he builds an 8 bit computer on a breadboard. He typically builds one component in each video.

The video linked is an example of his method. He builds a 555 timer (computer clock). In this case he shows the breadboard build and then gets down to how the circuit works.

What I like is that he starts with a functional piece that does something. It has a chip. He explains the circuit within the chip. Within the circuit is another abstraction of a circuit. He will almost always have a video explaining how the abstracted circuit works. In this first video the circuit has a comparator and a transistor. He has a video on the transistor and probably the comparator.

He eventually will get to the arithmetic logic unit, how ram works, the program counter, how the cpu is given “instructions”, assembly language, etc.
