Hacker News new | comments | show | ask | jobs | submit login

It's available everywhere now - superceded, yes, but this book is probably older than it looks. That page links to HAKMEM (1972)!

From a scan of the TOC it looks like a great introduction to C programming from a machine point of view. Although, as DJB has pointed out, there can be a big gap between "what all sane compilers do on this architecture" vs "what the C standard actually guarantees".

Edit: thinking about this, it's a bit Intel-centric. The people more likely to be writing low-level code these days would be targeting ARM or even AVR/PIC.

> this book is probably older than it looks

Yes, from the copyright notice it looks like it was originally started in 2008. Though HAKMEM was already ancient in 2008, too.

> From a scan of the TOC it looks like a great introduction to C programming from a machine point of view.

Maybe, but from the actual contents it's hard to tell what it's trying to do. The C part starts out with a section on C types, with the first sentence being "This section doesn’t attempt to be a primer on C types; instead, I cover aspects I consider to be of importance for low-level programming."

So it's not a primer on C, fair enough. But then it goes on to explain the const and extern keywords, and how to declare structs. It's hard to tell what audience this is aimed at. People who already know enough C not to need an actual primer on C, but who do still need an explanation of const and a very partial explanation of structs?

Other parts, like the malloc implementation at the end, look better, though.

hey there & thanks for the feedback! :)

as it was called nicely, you should consider this book a set of musings and notes. one of the driving ideas behind the c part was to introduce the readers to things new in c99. :P

that malloc, whereas kinda okay, has already been rewritten and the new version is under construction. it sports thread-local magazine caches and all kinds of hacks i've found interesting to mess around with. :)



Applications are open for YC Summer 2018

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact