Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!pacific.mps.ohio-state.edu!linac!att!pacbell.com!ucsd!ucrmath!rhyde From: rhyde@ucrmath.ucr.edu (randy hyde) Newsgroups: comp.sys.apple2 Subject: Re: HLLs vs. Assembly Message-ID: <13390@ucrmath.ucr.edu> Date: 6 Apr 91 04:55:30 GMT References: <13345@ucrmath.ucr.edu> <15732@smoke.brl.mil> Organization: University of California, Riverside Lines: 35 >>>> Me too. The machine I'm sitting at (a DECstation 3100) uses a RISC architecture that no one in his right mind would want to program in assembly for. The C compiler generates much more efficient code than any human programmer I know, and I know plenty of decent human programmers. <<<< The MIPS R2000 and R3000 archetectures are not that bad. Would decent tools appear (e.g., an asm data flow analyzer) it would be perfectly possible to program it any assembly language with no problem (other than a steep learning curve). Of course, as machines get faster and faster, the point really becomes one of economics. If C programs run between 1/2 and 1/10th the speed of assembly language programs and you can buy a machine that is two to ten times faster, you can easily opt for the faster machine and do all your work in C. My original post did not claim that *everyone* should write *all* their applications in assembly. I simply stated that I spend lots of extra money on high-end machines so that they will execute their applications *fast*, not so those application authors can write their programs in C rather than assembly. Some people around here think that I'm totally against the use of HLLs. Nothing could be farther from the truth. Indeed, I consider languages like C and Pascal low(er) level languages. HLLs encompass things like Prolog, ICON, 4GLs, SETL, and the like. Why don't we write applications in these languages? For many applications I can write a program in SETL ten times faster than you can write it in C. Why don't we write all (applicable) software in SETL? There are two reasons: SETL is dreadfully slow (although I'll counter that by saying "buy a faster machine"); SETL isn't appropriate for all applications. However, you can make both of these statements about *any* programming language *except* assembly. For assembly, only one of the statements might be true (dreadfully slow isn't the correct answer).