C Books and algorithm books

I

istillshine

Questions for the major contributors to comp.lang.c.

What C books do you have?

What C books have you read?

Which algorithm book is your favorite?

What resources that you find particularly useful, beside comp.lang.c
and its FAQ?

I ask the above questions mainly to see what I lack. And the answer
may help other newbies as well by letting people know what "weapons"
have been proved to be useful. I might have asked too many questions
these days, but I promise I will reduce them to less than 2 daily from
now on.
 
I

istillshine

"The Art of Computer Programming," Knuth

My head ached when I read this book in a library. I quit after
reading several pages, feeling I was so intelligently inferior. I
could not understand why the author uses an assembly-like language to
describe algorithms. C would have been a much better choice.

I heard the author himself is a good programmer. I believe he must
have good reasons to do it. But I really cannot comprehend the
reasons outlined in the preface of his book.

What supported you to continue reading his book? I am thinking of
buying a copy of it though.
 
B

Bartc

My head ached when I read this book in a library. I quit after
reading several pages, feeling I was so intelligently inferior. I
could not understand why the author uses an assembly-like language to
describe algorithms. C would have been a much better choice.

According to the author, the current language of choice changes every few
years, and he didn't want to have to keep revising all his examples. And at
the time it wouldn't have been C, probably some Algol-class language. There
were a few other reasons too.

But I agree, any proper language would have been a considerable improvement
on MIX or MIXAL.
 
A

Anand Hariharan

Do you know of any other programmer who gives away code and
then pays money to people who find bugs in it? (I suppose that
in his case the financial hardship may not be severe; I've got
one of his checks in a frame on my wall,

That is impressive!

and I bet many others
go similarly uncashed.)

I'll bet there aren't *many* others. But of those that are, I would
very much doubt if any would be cashed at all.
 
A

Albert Nick

Questions for the major contributors to comp.lang.c.

What C books do you have?

What C books have you read?

Which algorithm book is your favorite?

What resources that you find particularly useful, beside comp.lang.c
and its FAQ?

I ask the above questions mainly to see what I lack. And the answer
may help other newbies as well by letting people know what "weapons"
have been proved to be useful. I might have asked too many questions
these days, but I promise I will reduce them to less than 2 daily from
now on.

I think the best algorithm book is "Introduction to Algorithms" by MIT
Press. It is my first algorithm book and it describe algorithms by
pseudo-code. It is easy to understand.

C book -- The C Programming Language, of cource.
 
I

istillshine

I have been reading and re-reading and re-re-reading TAOCP
for more than thirty years

Is it really a good idea to do so: reading a book for more than 30
years?
 
I

istillshine

(e-mail address removed) said:



Any old book? No. This book? Yes, absolutely. Given the quality of the
reader, it shows just how much meat there is in TAOCP.

I don't think any book is worth of reading for 30 years. Truth is
hidden in simplicity. Anything too complex is superfluous.

"$B8c@8LiM-36!$<)CNLiL536!(0JM-36n.L536!$KXbc!#(B", as Zhuangzi said.

http://en.wikipedia.org/wiki/Zhuangzi
 
A

Anand Hariharan

Anand Hariharan said:


You are half-right.

Knowing that you are one of the recipients of a cheque from Knuth and did
not cash it, I will ask you Richard: Are you saying there are a lot of
people who got cheques from Knuth?

How many are there? Surely not many more than say 27 people. I guess we
are debating the meaning of "many"?
 
A

Anand Hariharan

Anand Hariharan said:


According to Knuth, over 2,000 such cheques have been written.

I stand corrected. Until a few moments ago, I held the opinion that
the amount on the cheque doubled for every new error that was
detected. I thought the last advertised amount was $2.56, and the
next cheque would be $5.12 and so on (hence my estimate of 27
above).
 
C

Coos Haak

Op Sun, 13 Apr 2008 17:09:24 -0400 schreef Eric Sosman:
He issues different categories of checks for different
circumstances. The doubling series are (if I understand
correctly) for bugs in the published programs TEX and
Metafont, and I think they began at $2.56 ("one million
cents, base two").

One million cents, base two would be $0.64
A hunderd million cents, base two would be $2,56

<VERY OT>
2 BASE ! 1000000 DECIMAL . 64 ok
</OT>
 
I

I

Questions for the major contributors to comp.lang.c.

What C books do you have?
What C books have you read?

i like "c: the complete reference" a lot . it is very well written and
easy to understand and i totally learned a whole lot from reading it b/c
it explanes what goes on behind the scenes . very good revues on amazone
 
N

Nick Keighley

(e-mail address removed) wrote:


     "The C Programming Language," Kernighan and Ritchie (original)
great book
     "C: A Reference Manual," Harbison and Steele
great book. I think it is better for the standard library
than K&R and I've heard the latest edition a good reference for
C99 (if you are interested in it).
     "C Traps and Pitfalls," Koenig
never got on with this.

     "The Standard C Library," Plauger
great book! Not only does it document the library and
provide you with an implementation but it also guides
you through the design of a C library.

Lots of stuff on writing portable C.
     As above.


     "The Art of Computer Programming," Knuth

If you want more of a recipe book (less theory)
try Sedgewick
http://www.dinkumware.com/manuals/


     The wide world and all therein.  (Really, the question
is too broad to admit of a useful answer.)


     Learn Lisp.  You may not use it much, but it will improve
your use of other programming languages.


--
Nick Keighley

"There are two ways of constructing a software design: One way is to
make it so simple that there are obviously no deficiencies, and the
other way is to make it so complicated that there are no obvious
deficiencies. The first method is far more difficult."
-- C.A.R. Hoare
 
R

Richard Bos

Eric Sosman said:
"The devil can cite Scripture for his purpose."
-- from a writing whose age is intermediate between
the abovementioned pair, also many times re-read

"For every thing, turn, turn, turn,
there is a season, turn, turn, turn"
-- almost from one of those books

Richard
 
K

Keith Thompson

Richard Heathfield said:
A subscriber describing himself as "I" said:


Both true. Unfortunately, it contains a vast number of technical errors.
Being very well written and easy to understand is *not* sufficient to
qualify a book as a good C tutorial.

Ah, yes, I didn't recognize the title at first glance (I confused it
with the excellent "C: A Reference Manual" by Harbison & Steele*).

In replies to the original question, I suggest posting both the title
*and* the author(s) of each book.

"C: The Complete Reference" is by Herbert Schildt, a prolific author
who, unfortunately, often doesn't know what he's talking about, but
seems to be quite skilled at passing his own ignorance on to his
readers. For a review of this particular book, see
<http://accu.org/index.php/book_reviews?url=view.xqy?review=c002173>.

[snip]
 
U

user923005

My head ached when I read this book in a library.  I quit after
reading several pages, feeling I was so intelligently inferior.  I
could not understand why the author uses an assembly-like language to
describe algorithms.  C would have been a much better choice.

You can learn MIX in one day. You could never do that with C.
I heard the author himself is a good programmer.  I believe he must
have good reasons to do it.  But I really cannot comprehend the
reasons outlined in the preface of his book.

A lot of people have trouble with TAOCP. But it is definitely worth
while to stick to it.
What supported you to continue reading his book?  I am thinking of
buying a copy of it though.

It was easy for me, but I had a lot of math and so the notation of the
book reads naturally for me.
If the math part throws you off (it does for most of the people who
have trouble with it) then just read his descriptions and ignore the
math.
 
U

user923005

My head ached when I read this book in a library.  I quit after
reading several pages, feeling I was so intelligently inferior.  I
could not understand why the author uses an assembly-like language to
describe algorithms.  C would have been a much better choice.

     Then you have failed to grasp his purposes, which include
(among other things) quantitative comparisons of implementations.
You may have heard that Quicksort and Heapsort are both O(N logN)
algorithms (on the average); this much needs only a rather loose
notion of "time."  You may also have heard that Quicksort is
faster than Heapsort (usually), but how could you justify such a
statement by analyzing C implementations of both?  Is ++i faster
than i++?  Is x=a?b:c faster than x=bc[!a]?  You cannot attack
such questions from the standpoint of the C language, but only
from particular implementations of it (and you will get different
answers each time).

     In any case, though, you didn't ask for recommendations of
books that you would find easy to understand; you asked "Which
algorithm book is your favorite?"  And I answered.
I heard the author himself is a good programmer.

     Do you know of any other programmer who gives away code and
then pays money to people who find bugs in it?  (I suppose that
in his case the financial hardship may not be severe; I've got
one of his checks in a frame on my wall, and I bet many others
go similarly uncashed.)

Mine has a frame around it and it sits above my desk. I didn't even
do that with my degree.
     I have been reading and re-reading and re-re-reading TAOCP
for more than thirty years, *because* my head sometimes aches
from the strain.  (I admit, though, that I haven't had the nerve
to pick up "Concrete Mathematics.")

I am going over the preprints of his new book that come in PDF format.
 
U

user923005

I don't think any book is worth of reading for 30 years. Truth is
hidden in simplicity. Anything too complex is superfluous.

"$B8c@8LiM-36!$<)CNLiL536!(0JM-36n.L536!$KXbc!#(B", as Zhuangzi said.

http://en.wikipedia.org/wiki/Zhuangzi

Things should be made as simple as possible -- but no simpler. - A.
Einstein

Maybe that book is not for you.
I have quite a few books I read and re-read.
I guess that there are not a lot of others that enjoy an hour and a
half in:
http://www.iopb.res.in/~somen/abramowitz_and_stegun/toc.htm

I read the Bible once per year (I have also read the Koran as well as
Buddist and Hindu works).
I read Ghandi and Lincoln and Plato, let them sit for a while and then
read them again.
Plato has to be the best debater of all time. He will argue something
that I absolutely, positively know is wrong, but I can't find an easy
way to poke a hole in his arguement.

There is defintely something to be said for simplicity (witness:K&R2).
I like philosophy that is simple (Will Rogers is right up my alley).

I think that sometimes programming requires something beyond the
elementary.
IMO-YMMV.
 
I

I

Richard said:
A subscriber describing himself as "I" said:


Both true. Unfortunately, it contains a vast number of technical errors.
Being very well written and easy to understand is *not* sufficient to
qualify a book as a good C tutorial.

before i bought it i checked all comments from people who bought the same
book and they all said it's very good . How can a book be well written and
still contain a vast number of technical errors ? what errors ? is there
some errata listing ? i checked the author's and publisher's web sites and
found nothing .
Presumably you would also recommend eating horse-manure, on the grounds
that ten trillion flies can't be wrong.

are you like saying this is like not a very good book ?
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,999
Messages
2,570,243
Members
46,835
Latest member
lila30

Latest Threads

Top