6 ms·
> no C++ build hell > no C++ syntax hell! > no C++ at all!!! The author of this book has some strong feelings about C++.
by benstrumental 6y ago
> no C++ build hell
> no C++ syntax hell!
> no C++ at all!!!
The author of this book has some strong feelings about C++.
- abjKT26nO8 6y agoI sympathize. Yours truly, C++ dev at work PS. HN formatting is a devil.
- orange3xchicken 6y agoThe two classic graduate texts for numerical linear algebra are Matrix Computations by Golub and Van Loan and Numerical Linear Algebra by Trefethen and Bau. The reference you are looking for (includes executable C++) is Numerical Recipes by William Press et al. There are a couple other good ones as well that are more broad - e.g. Quarteroni, Sacco, & Saleri Numerical Mathematics also covers numerical diffeq, convex geometry, & approximation theory. I can't comment on how OP's book fits in.
- jlebar 6y ago> The reference you are looking for (includes executable C++) is Numerical Recipes by William Press et al. I bought this book hoping it would be to floating point what Hacker's Delight is to integers. It is not that. I'm not really sure what it is. Most of the numerical algorithms I wanted weren't included at all. Those that were, like random number generation, were out of date and covered with much less rigor than you can find online with some Googling. IIRC their algorithm for generating a random float in the range [0,1] is just wrong. The book does indeed include executable C++. But the C++ it includes is a travesty. It's C++ written by someone who sort of understood C. Anyway I did not like it. :)
- scottlocklin 6y agoTrefethen&Bau, Golub & Van Loan and Demmel's "Applied Numerical Linear Algebra" make up the holy trinity. I don't know what audience the OP book is supposed to serve, but it's evident on inspection; it ain't me.
- orange3xchicken 6y agoThe best thing I remember from Demmel's book is that i'm pretty sure the spooky possessed baby on the cover is his kid.
- dragandj 6y agoAuthor here. I personally don't have any strong feelings against C++ (it's just a language/platform I don't prefer), but my target audience is delighted that they don't have to mess with C++. It's one of the main selling points of the book!
- CamperBob2 6y agoInteresting. Why not just use C? I can understand why C++ isn't appropriate for this. Object-oriented programming has little to do with linear algebra, and a nightmarishly-complex language that's desperately trying to reinvent itself also isn't appropriate for pedagogy. But you still need a lingua franca, a language you can use to express the relevant principles without trying to evangelize one arcane functional language or another at the same time like so many authors try to do these days. Being a relatively straightforward procedural language, C works well for this purpose. Everybody doing numerical computing is at least familiar with the fundamentals of C programming, or should be. Is there some institutional resistance to plain old C, or is it just a matter of widespread personal prejudice among both students and teachers?
- dragandj 6y agoYou can easily see the answer to this question when you try to write (and copmpile, and package, and use as a library in another software) in C any of the examples written in higher-level dynamic languages (Clojure, in my case, or Python, Julia, etc. if you prefer that). Compare the number of LOC or any other metric. Once you have high-level access to underlying algorithms (implemented in whatever native technology, but hidden), it is much, much, simpler to work at high-level.
- CamperBob2 6y agoSo, are you teaching people to optimize their LoC count, or are you teaching people linear algebra? I don't see how you can effectively do both.
- 6y ago