[comp.edu] Textbook for Intro. Comp. Theory course

C.Eagle@massey.ac.nz (Colin Eagle) (08/28/90)

I  have been asked  to  survey netters  on textbooks  for  a course on
introductory computer  theory.

This   course  is  non-programming,  and   looks   at files,  computer
organisation and computer science theory.

I would  appreciate people who teach  this type  of  course mailing me
with the details of the textbook(s) they use.

Thanks in advance,
Colin

--
			    Colin G. Eagle
		    Internet: C.Eagle@massey.ac.nz
	   Voice: +64 63 69099 x 7523   Fax: +64 63 505611
	  School of Information Sciences, Massey University,
		    Palmerston North, New Zealand.

C.Eagle@massey.ac.nz (Colin Eagle) (09/05/90)

This is a repeat  of a query  I sent out  last week, but  got only one
response (from someone asking for a copy of the responses I received!)
Our  mailserver  has  been out for  a few days, so   if you sent  me a
response, could you please resend it.


I  have been asked  to  survey netters  on textbooks  for  a course on
introductory computer  theory.

This course complements a programming paper,  is for majoring Computer
Science   students  and    covers   computer  applications,   computer
architecture, logic, computer theory, file organisation, etc.

I would  appreciate people who teach  this type  of  course mailing me
with the details of the textbook(s) they use.

Thanks in advance,
Colin

--
			    Colin G. Eagle
		    Internet: C.Eagle@massey.ac.nz
	   Voice: +64 63 69099 x 7523   Fax: +64 63 505611
	  School of Information Sciences, Massey University,
		    Palmerston North, New Zealand.

wilber@aludra.usc.edu (John Wilber) (09/18/90)

In article <392sis-a@massey.ac.nz> C.Eagle@massey.ac.nz writes:

>I  have been asked  to  survey netters  on textbooks  for  a course on
>introductory computer  theory.

As far as I have been able to tell, the concept of a "good" textbook on 
"computer theory" is an oxymoron.  Since such books are invariably
written by computer science theoreticians and computer science theoreticians 
invariably know almost nothing about computers (as one would expect 
from mathematicians) the textbooks I have seen have all been dismally
uninformed about the realities of computer technology (and even good
theory for that matter).

manis@cs.ubc.ca (Vincent Manis) (09/19/90)

In article <12007@chaph.usc.edu> wilber@aludra.usc.edu (John Wilber) writes:
>As far as I have been able to tell, the concept of a "good" textbook on 
>"computer theory" is an oxymoron.  Since such books are invariably
>written by computer science theoreticians and computer science theoreticians 
>invariably know almost nothing about computers (as one would expect 
>from mathematicians) the textbooks I have seen have all been dismally
>uninformed about the realities of computer technology (and even good
>theory for that matter).

In article <4343343@vorpal.blade> glump@snicker.snee (Omar Glump) writes:
>Is there a good book on quantum mechanics?

As far as I have been able to tell, the concept of a "good" textbook on
"quantum mechanics" is an oxymoron.  Since such books are invariably
written by physics theoreticians and computer science theoreticians
invariably know almost nothing about car repair (as one would expect
from mathematicians) the textbooks I have seen have all been dismally
uninformed about the realities of automotive mechanics (and even good
theory for that matter).

Perhaps we should periodically post an article which reminds people that
computer science isn't `the science of computers', or even the study of
computer technology (an important and interesting field in its own
right, of course). 

--
\    Vincent Manis <manis@cs.ubc.ca>      "There is no law that vulgarity and
 \   Department of Computer Science      literary excellence cannot coexist."
 /\  University of British Columbia                        -- A. Trevor Hodge
/  \ Vancouver, BC, Canada V6T 1W5 (604) 228-2394

brnstnd@kramden.acf.nyu.edu (Dan Bernstein) (09/19/90)

In article <12007@chaph.usc.edu> wilber@aludra.usc.edu (John Wilber) writes:
> In article <392sis-a@massey.ac.nz> C.Eagle@massey.ac.nz writes:
> >I  have been asked  to  survey netters  on textbooks  for  a course on
> >introductory computer  theory.
> As far as I have been able to tell, the concept of a "good" textbook on 
> "computer theory" is an oxymoron.  Since such books are invariably
> written by computer science theoreticians and computer science theoreticians 
> invariably know almost nothing about computers (as one would expect 
> from mathematicians) the textbooks I have seen have all been dismally
> uninformed about the realities of computer technology (and even good
> theory for that matter).

Be serious. The classic example of a computer text written by a
mathematician is Knuth's Art of Computer Programming, which is arguably
the best set of books in either mathematics or computer science. Do you
seriously believe that ACP is ``uninformed about the realities of
computer technology''?

I don't want to start a flame war on the merits of mathematics versus
computer science, the irrelevance of computer science to computer
programming, or the common belief that the half of math degrees that
migrated to CS represent the bottom half. I just want to point out that
your snubs will be resented by mathematicians around the world. You may
be right that computer science theoreticians invariably know almost
nothing about computers, but you shouldn't imply that theoretical CS has
anything more to do with mathematics than linguistics does.

---Dan

wilber@aludra.usc.edu (John Wilber) (09/19/90)

In article <9627@ubc-cs.UUCP> manis@cs.ubc.ca (Vincent Manis) writes:

>Perhaps we should periodically post an article which reminds people that
>computer science isn't `the science of computers', or even the study of
>computer technology (an important and interesting field in its own
>right, of course). 

Written like a true computer science theoretician. ;-)

If "Computer Science" isn't the "science of computers" then pray tell what 
is it?  Also if computer science has nothing to do with computers why should
anyone bother wasting time studying it (aside from being viewed as an
esoteric branch of mathematics)?  You can study turing machines for your 
whole life without generating any results of any particular value to
the world (though you can certainly fill up a lot of technical journals
with the stuff, perhaps to be read by other "computer science theoreticians").

Why are those students in the class anyway?  Will spending six weeks studying
chomsky grammars be of more value than studying bus design or data migration
strategies?  Certainly all three of these are "theoretical" in that they
are not specific to a particular application, but understanding the latter
two is important on a day-to-day basis for computer professionals.  Don't
get me wrong.  I don't think that studying that kind of stuff (grammars,
turing machines, etc.) is COMPLETELY worthless.  I just think it's a minor
marginal area of computer science and not worthy of being pressed into 
center stage by mathematicians posing as computer scientists.

I have joined the ACM off and on over the years and always end up letting
my membership expire when I get tired to the intellectual posturing of
mathemeticians posing as computer scientists.  Reading through a hundred
papers full of superficial mathematical trivia is not worth the occasional 
one paper of real interest.

martin@oahu.cs.ucla.edu (david l. martin) (09/21/90)

In article <12037@chaph.usc.edu> you write:
>
>...  You can study turing machines for your 
>whole life without generating any results of any particular value to
>the world (though you can certainly fill up a lot of technical journals
>with the stuff, perhaps to be read by other "computer science theoreticians").
>
>Why are those students in the class anyway?  Will spending six weeks studying
>chomsky grammars be of more value than studying bus design or data migration
>strategies?  Certainly all three of these are "theoretical" in that they
>are not specific to a particular application, but understanding the latter
>two is important on a day-to-day basis for computer professionals.  Don't
>get me wrong.  I don't think that studying that kind of stuff (grammars,
>turing machines, etc.) is COMPLETELY worthless.  I just think it's a minor
>marginal area of computer science and not worthy of being pressed into 
>center stage by mathematicians posing as computer scientists.
>
>I have joined the ACM off and on over the years and always end up letting
>my membership expire when I get tired to the intellectual posturing of
>mathemeticians posing as computer scientists.  Reading through a hundred
>papers full of superficial mathematical trivia is not worth the occasional 
>one paper of real interest.

You really seem to be mixing several issues up together.  As to the assertion
that computational mathematics is really of minor value or of minor
practical importance, if you really think that, you're just reflecting
the perspective of your own narrow niche of the computer world.  As one
or 2 others have pointed out, mathematical models and analyses have had
a lot of immensely important applications, including applications in
language design, compiler design, system and network design, and
design of software applications as well.

As to all this business about intellectual posturing and posing as computer
scientists, what makes you think the field isn't big enough for the
mathematicians AND the real-world-system types?  Why does it have to
be one or the other?  Finally,  why have you forced yourself to read through 
hundreds of mathematical papers that don't interest you?  Can't you just accept
that they are of interest to others?

Dave Martin
C.S. Dept. (grad student)
U.C.L.A.

rks@cs.Princeton.EDU (Ramesh Sitaraman) (09/23/90)

In article <12037@chaph.usc.edu> wilber@aludra.usc.edu (John Wilber) writes:
>In article <9627@ubc-cs.UUCP> manis@cs.ubc.ca (Vincent Manis) writes:
>
>If "Computer Science" isn't the "science of computers" then pray tell what 
>is it?  

It is the science of computation and computers. Specifically theoretical
computer science studies computation abstractly and has applications
to a wide number of things ranging from the foundations of mathematics 
to engineering aspects of computers. Also note that Theory of
computation predates computers even though a lot of modern 
interest to study the nature of computation stems from the
practical benefits it may have.

>Also if computer science has nothing to do with computers why should
>anyone bother wasting time studying it (aside from being viewed as an
>esoteric branch of mathematics)?  You can study turing machines for your 
>whole life without generating any results of any particular value to
>the world (though you can certainly fill up a lot of technical journals
>with the stuff, perhaps to be read by other "computer science theoreticians").

Why dont you say that to a theoretical physicists who worked on 
Quantum mechanics for the sole purpose of knowing. Where would
the semiconductor industry be without QM. Usually science
and engineering go hand in hand abstract results feeding 
more concrete applications. (IMHO, some of the programming oriented
people dont understand this because what they do is usually not
tied in with either science or engineering. )


>Why are those students in the class anyway?  Will spending six weeks studying
>chomsky grammars be of more value than studying bus design or data migration
>strategies?  Certainly all three of these are "theoretical" in that they
>are not specific to a particular application, but understanding the latter
>two is important on a day-to-day basis for computer professionals.  Don't
>get me wrong.  I don't think that studying that kind of stuff (grammars,
>turing machines, etc.) is COMPLETELY worthless.  I just think it's a minor
>marginal area of computer science and not worthy of being pressed into 
>center stage by mathematicians posing as computer scientists.

You may be in right that a computer professional may not have to care
much for theory (except may be the most basic stuff). Much of
what they do (as I said earlier) is  just a sophisticated form of
book keeping or accounting. They dont usually use many 
scientific/mathematical principles (as in Engineering which requires 
the use of physics or chemistry or biology) in their work. But academic
Computer *science* is a different thing altogether. 


			Ramesh Sitaraman


--
ARPA:  rks@cs.princeton.edu  | When you make the two one, inside
SPRINT:(609) 683 1979 (Home) | like outside, and outside like inside
       (609) 258 1794 (Off)  | .....then thou shall enter the Kingdom 
                             | of God.   -Christ, Gospel of Thomas 37.20-35

wilber@aludra.usc.edu (John Wilber) (09/28/90)

In article <29541:Sep1820:32:0790@kramden.acf.nyu.edu> brnstnd@kramden.acf.nyu.edu (Dan Bernstein) writes:
>In article <12007@chaph.usc.edu> wilber@aludra.usc.edu (John Wilber) writes:
>> In article <392sis-a@massey.ac.nz> C.Eagle@massey.ac.nz writes:
>> >I  have been asked  to  survey netters  on textbooks  for  a course on
>> >introductory computer  theory.
>> As far as I have been able to tell, the concept of a "good" textbook on 
>> "computer theory" is an oxymoron.  Since such books are invariably
>> written by computer science theoreticians and computer science theoreticians 
>> invariably know almost nothing about computers (as one would expect 
>> from mathematicians) the textbooks I have seen have all been dismally
>> uninformed about the realities of computer technology (and even good
>> theory for that matter).

>Be serious. The classic example of a computer text written by a
>mathematician is Knuth's Art of Computer Programming, which is arguably
>the best set of books in either mathematics or computer science. Do you
>seriously believe that ACP is ``uninformed about the realities of
>computer technology''?

Well, though ACP does have some useful stuff in it, it certainly DOES 
display a disregard for the way things really work.  Why are his examples
all in languages nobody really uses?  It's kind of like a sex manual
written by a nun.  Sure, there's some useful information in there, but
it leaves some things to be desired that a non-mathematician would
have put in there.

>I don't want to start a flame war on the merits of mathematics versus
>computer science, the irrelevance of computer science to computer
>programming, or the common belief that the half of math degrees that
>migrated to CS represent the bottom half. I just want to point out that
>your snubs will be resented by mathematicians around the world. 

Do you think that I didn't expect that? ;-)

>You may
>be right that computer science theoreticians invariably know almost
>nothing about computers, 

In fact I *AM* right about it.

>but you shouldn't imply that theoretical CS has
>anything more to do with mathematics than linguistics does.

Why not?  I don't see that there is a stronger link.  Could you explain
why you think this is true?

I would like to clarify my position here again to prevent unnecessary flames.
I don't think that theoretical mathematics is always completely 
useless to the advancement of computer science.  I believe it has a place.
My gripe is that many mathematicians place theoretical mathematics at the
center of the academic study of computer science, a position not warranted
by the practical impact or importance of mathematical theory.  The other
gripe is that these mathematicians have a very limited understanding and
appreciation for the rest of the field (both the electronics end, and the
software engineering end (and any other end you care to mention)).  I believe
this results from the fact that people who can build circuits and write
big programs go out into the world and do those things, while the
theoreticians remain in academia to "define" computer science as they see fit.

wilber@aludra.usc.edu (John Wilber) (09/28/90)

In article <39153@shemp.CS.UCLA.EDU> martin@oahu.cs.ucla.edu (david l. martin) writes:

>You really seem to be mixing several issues up together.  As to the assertion
>that computational mathematics is really of minor value or of minor
>practical importance, if you really think that, you're just reflecting
>the perspective of your own narrow niche of the computer world.  

If you think that theoretical mathematics is of major practical importance
then you muct be in some kind of narrow niche yourself.  I have worked in
the real practical world of computer science of a long time and I have spent
a lot of time in CS classrooms.  I have worked on real-time data acquisition
and control systems, decision support systems, compilers, software tools,
graphics, publishing tools, simulation, and office automation tools.  I am
not burried in a little niche.  I have worked in the areas most directly
affected by CS theory and I am telling you that it is a relatively minor
factor in making things happen.  I don't think it's useless.  I think
it is viewed with a warped perspective by academics in their little niches.

>As one
>or 2 others have pointed out, mathematical models and analyses have had
>a lot of immensely important applications, including applications in
>language design, compiler design, system and network design, and
>design of software applications as well.

No, it have made minor contributions to some applications in some of 
those fields.

>As to all this business about intellectual posturing and posing as computer
>scientists, what makes you think the field isn't big enough for the
>mathematicians AND the real-world-system types?  Why does it have to
>be one or the other?  

I don't think it does.  I think that mathematical theory has it's place.
I just think that that place is not at the center of computer science.
Many of the more mathematically inclined "computer scientists" have been
hear to say that computer science is just a branch of mathematics.  I say
"Bull".  A good computer scientist has a good understanding of electronics,
software engineering and mathematical theory.  I think that academic
"computer science" is completely skewed toward math and away from software
engineering and electronics.  When did you last read anything about electronics
in the ACM journal?  When did you read anything intelligent there about
software engineering?  What percentage of academicians do you think are 
really competent software engineers?  My experience is that it's 10% or
less.

>Finally, why have you forced yourself to read through hundreds of 
>mathematical papers that don't interest you?  

Because I keep hoping to find something useful there.  I know that 
theory has SOME value and occasionally, the universities produce some bits
of useful theory.  The problem is that so many of the math guys don't 
understand the real world, they spend a great deal of time talking about
issues that don't really matter except to other math guys.  I find much 
more useful theoretical and practical information in Dr. Dobb's Journal
and Computer Language than in anything the ACM produces.  That's why 
I don't read the ACM stuff anymore.

>Can't you just accept that they are of interest to others?

I'm not saying "You can't study X.".  I am saying that X isn't very important
in the real world.  Pretending that this is otherwise doesn't help students
and doesn't advance the state of technology.