
The annotated C++ reference manual
by Margaret A. Ellis · first published 1990
13mentions
2recommended by
9HN commenters
2013–2026first – last mentioned
22% recommend67% neutral11% critical
Affiliate links. As an Amazon Associate I earn from qualifying purchases.

![Cover of The design and evolution of C[plus plus]](https://covers.hackerbooks.org/c/135125.webp)






Another good read are The Annotated C++ Reference Manual[1] and The Design and Evolution of C++[1]. They help understand all design compromises that were done to keep compatibility with C, which is was part of what brought C++ into the mainstream, but also…
on “Instance Model Programming in C” ↗…couple of other books similar to this one. But, if you want to know how myriad HPC applications make use of parallel programming models such as MPI and OpenMP, this provides a good introduction. 3. The Annotated C++ Reference Manual April 1995 hardbound edition (Ellis/Stroustrup) -- What a fantastic little book, also got it for $4.95 at Powell's bookstore in Portland :) IMO this books provides a gentle introduction to C++, you can…
on “Ask HN: What books do you keep on your desk?” ↗Yes, you can read "The Design and Evolution of C++" and the "The Annotated C++ Reference Manual" aka C++ ARM. There you will understand why C++ is the way it is, when you are trying to sell a safer language with higher level abstractions to hardcore C developers at AT&T, with zero friction with…
on “Scalable C – Writing Large-Scale Distributed C” ↗…graph-based descriptions in that book; (3) TAOCP: selected readings only, too huge; (4) Design Patterns: cover to cover, when OOP was fashionable in the 90's; (5) nope, but I read the Stroustrup and Ellis Annotated C++ Reference Manual cover to cover (weekend before starting first C++ gig). That counts as a 1:1 substitute, more or less.
on “Books Programmers Don't Really Read (2008)” ↗You can easily obtain convenient fat pointers with like the the 1990 dialect of C++ described here: https://www.amazon.ca/Annotated-C-Reference-Manual/dp/020151...
on “Go Slices Are Fat Pointers” ↗That smaller language is basically the C++ described in the Annotated C++ Reference Manual (a.k.a. Brown Book) by B. Stroustrup and M. Ellis, published in 1990. I landed into my first C++ job not knowing C++. Friday was my last day on the previous job. I helped myself to a stack of paper and…
on “"Within C++, there is a much smaller and cleaner language struggling to get out"” ↗…things. "C programmers think memory management is too important to be left to the computer. Lisp programmers think memory management is too important to be left to the user." Ellis and Stroustrup, The Annotated C++ Reference Manual.
on “Garbage Collection Without Unsafe Code” ↗> Another good read are The Annotated C++ Reference Manual[1] and The Design and Evolution of C++[1]. Annotated C++ Reference Manual as well as D&E is severely dated. Quite a while back there was some talk of stroustrup co-authoring a revision of the reference-manual…
on “Instance Model Programming in C” ↗Exceptions were added after CFront 2.0[1] but before/concurrent to the Annotated C++ Reference Manual[2] release which served as the de facto standard until the ISO[3]. The Annotated C++ Reference Manual itself references "Andrew Koenig and Bjarne Stroustrup: Exception Handling for C+ (revised), Proc.…
on “How to Use Exceptions Correctly” ↗These are his books on "Programming Languages" and "Programming" (in the bottom right corner of the image): * APL: The Language and its Usage * The Design an Evolution of C++ * The annotated C++ Reference Manual * The Joy of Clojure * Eiffel the Language * Programming Erlang * Forth (Salman et al.) * Thinking Forth * Introduction to Fortran * The Little Schemer * The Seasoned Schemer * The Reasoned Schemer…
on “Bret Victor's Bookshelf (2015)” ↗…console SDKs, HFT, HPC, OS SDKs, embedded OSes, High Integrity Computing certifications, and plenty more stuff deployed into production since C++ ARM [0] was published in 1990, 33 years ago. [0] - The Annotated C++ Reference Manual
on “Neverflow: Set of C macros that guard against buffer overflows” ↗…mangling scheme leads to the completely predictable result that different implementations use different name mangling schemes. The ABI mess predates the standard by years and if we look that far back the Annotated C++ Reference Manual included a scheme in its description of the language. Many compiler writers back then made the intentional choice to ignore it. The modern day ISO standard would not fare any better at pushing that onto…
on “Jank is C++” ↗…came from the C++ group at AT&T, so whatever Cfront did had to be correct. For a time, this led to other compiler vendors adhering so closely to Cfront behavior, they reproduced its bugs, too. When the Annotated C++ Reference Manual (ARM) was published, Cfront’s role as a reference implementation gradually diminished, especially when it became clear that adding exception-handling support to Cfront called for Herculean effort. The…
on “The Most Important C++ Software Ever – Opinion by Scott Meyers” ↗