Path: utzoo!attcan!uunet!husc6!bloom-beacon!gatech!udel!burdvax!ubbpc!wgh
From: wgh@ubbpc.UUCP (William G. Hutchison)
Newsgroups: comp.lang.misc
Subject: Re: Assembly or ....
Summary: somebody has to know what the machine does (you?)
Message-ID: <407@ubbpc.UUCP>
Date: 28 Nov 88 14:27:46 GMT
References: <1388@aucs.UUCP>
Organization: UNISYS CS, Blue Bell, PA
Lines: 24

In article <1388@aucs.UUCP>, 861087p@aucs.UUCP (A N D R E A S) writes:
> ... if it really worth it to spend time to learn assembly language.

 (1) most high level languages are so badly documented that you cannot tell
     PRECISELY what they will do without examining the assembly language
     version of the code.
 (2) how else can you diagnose compiler bugs? (unless you have a complete
     denotational semantics description of the language)
 (3) on those few occasions when you need the utmost in performance, you must
     examine the assembly language listing from the compiler to see how to
     write the tightest loops, etc.  It is virtually unknown to see a compiler
     document that describes exactly the transformations of the "optimizer".
 
 Thus, in the present state of affairs, a high-level language programmer
MUST know some assembly language to be effective.
 This might change if computer companies (or FSF?) produced high-quality,
documented software tools like compilers and linkers.  Don't hold your breath!
 If that were to happen, the only people who would have to learn assembly
language would be compiler writers and possibly microcode engineers.
-- 
Bill Hutchison, DP Consultant	rutgers!liberty!burdvax!ubbpc!wgh
Unisys UNIX Portation Center	"What one fool can do, another can!"
P.O. Box 500, M.S. B121		Ancient Simian Proverb, quoted by
Blue Bell, PA 19424		Sylvanus P. Thompson, in _Calculus Made Easy_