Path: utzoo!utgpu!jarvis.csri.toronto.edu!rutgers!tut.cis.ohio-state.edu!ucbvax!hplabs!hpfcdc!hpislx!hplvli!boyne From: boyne@hplvli.HP.COM (Art Boyne) Newsgroups: comp.sys.ibm.pc Subject: Re: High- vs. low-level languages (Was: Re: Why unix doesn't catch on) Message-ID: <360014@hplvli.HP.COM> Date: 17 May 89 15:25:34 GMT References: <664@tukki.jyu.fi> Organization: Loveland Inst. Div Lines: 43 phil@ux1.cso.uiuc.edu writes: > (uncredited) >> portable C compilers!), not efficiency. FORTRAN is one of a very >> few languages with truly excellent optimizing compilers. Years ago, the guy at Purdue University who supported all the compilers and assembler (all written in assembler!) for the main computer center told me that the CDC 6000 series FTN compiler with maximum optimization would produce only about 10-20% more code than a GOOD assembly language programmer - this was considered excellent. I have yet to see a C compiler match this. >> A good optimizing compiler can beat assembly programming, and it >> has been shown in several challenges between programmers -- one >> of which was written up several years back regarding a challenge ^^^^^^^^^^^^^ About the time when certain companies had TV ads claiming to train you as a programmer in 60 days ?? :-) >> sponsored by some folks at IBM. Numerous experienced FORTRAN and >> assembly programmers were given the same problem to solve. The >> FORTRAN programmers beat the assembly programmers every time in >> terms of execution speed. However, given the code generated by >> the FORTRAN compiler, the assembly programmers were able to >> improve upon the code by about 10%. > >This sounds like a case of bad assembler programmers. There are lots of >them around. In fact MOST programmers are probably bad assembler programmers. I have to agree: most programmers *are* bad assembler programmers, probably, especially these days, due to lack of experience - when was the last time *you* wrote more than a couple hundred lines of assembler. Also, it seems to take a different mind set to efficiently program in assembler compared to high level languages. Looking at the code produced by students, professors, and colleagues over the last 19 years leaves me convinced that few people can really think well in assembler. One thing in defense of the compilers though: we humans tend to miss some tricks from time to time. Compilers, once programmed to look for them, do them *every* time. Art Boyne, boyne@hplvla.hp.com