Hi Glynn,
Thank you for your kind comments. I knew that I could count on you to reply
thoughtfully and thoroughly.
I wrote assembly language for an IBM 370 and an IBM PC, so I'm comfortable
with low-level notions. Unfortunately, in college, a professor, IMHO, taought
C in too little detail. The course was about Unix, too.
Since the college catalog said that the course was about operating systems, I
thought that I would learn about, say, mutual exclusion, sempaphors,
scheduling, and reference counting. The course turned out to me mainly about
how to use Unix. Preferring theory to practice, I felt very disappointed.
Now I'm finding out how little C I learned then.
You're right: it's good to learn other programming languages. Although I
don't mean to brag, I already can write in about nine of them. I've been
jumping from language to language, hoping to find one ideal for how I reason.
So far, the finalists are Ada, Oberon, and Eiffel, and Eiffel probably will
win. A computer scientist, whom I admire a lot, Dr. Seth Chaiken, suggested
that I pick one language for all my programing, so that's what I've been
trying to do.
I always avoid the books for "dummies," because for what I want to do, it's
better for me to read textbooks by reputable computer scientists. I'm a
big fan of Aho, Hopcroft, and Ullman, for example. If I want merely to
learn how to use an application program, I can do that with my computer and
a manual.
I've read parts of the book by Kernighan and Ritchie. Unfortunately, they
are in some coding habits that have helped me learn to dislike C. So I'm
hoping to learn a lot from Horspool's book _The Berkeley Unix Environment_
and from Richard Stevens's book _Advanced Programming in a Unix Environment_.
Low-level concepts are no problem for me. I need to read some C programs
written superbly, so I can learn good style. During a course about
Artificial Intelligence, my professor read a Pascal program I wrote. He
told me that I wrote "damn good code." The problem is that I'm still
writing Pascal, even when I'm writing C.
Thanks a again.
Warmest wishes,
Bill