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: Re- HLLs vs. Assembly Message-ID: <13391@ucrmath.ucr.edu> Date: 6 Apr 91 05:12:52 GMT References: <9104051936.AA16687@apple.com> <15734@smoke.brl.mil> Organization: University of California, Riverside Lines: 56 >>>>>> That's commendable, but that's not what RHyde was saying. He was maintaining that applications generally SHOULD be developed in assembler. If somebody applied for a programming job here and indicated that he planned to use assembler to accomplish most of his assigned tasks, I can assure you he would not get the job. <<<<<< Clearly you're missing an important point here. Let me define the term "Application" from my perspective. A *commercial application* is a high volume piece of software which I can walk into some place like Egghead and purchase over the counter. One which sells in the tens of thousands (or more). A good sized subset of these applications *should* be developed in assembly language for reasons I will shortly get to. If somebody applied for a job where I worked and announced that they intended to do the job in a way which was generally incompatibly with the way everyone else did it, they would not get the job. I have hired people in the past to work on various projects and had they announced their intention to use assembly language, I wouldn't have hired them either; I needed them to work in Pascal or C for various reasons. They were not, however, working on application programs that fell into the above category. Concerning you're not hiring such a person, that is very commendable. You (I assume "U.S. Army Ballistic Research Laboratory, APG, MD." implies that you work at the ABRL) haven't developed any commercial quality software products recently (that I've seen anyway) so ABRL is not under the same performance pressures as, say Electronic Arts. The Army can afford machines that run 10x faster, a typical PC user cannot. Furthermore, the Army often needs to purchase computers of various archetectures, the average PC user does not (they get locked into a Mac, PC, or [as you can tell by reading posts in this newsgroup] an Apple IIgs). Therefore, portability is a much bigger concern to the DoD (hence Ada) than it is to a typical PC user. Could you imagine Appleworks running on an Apple IIe had it been written in C? Of course, Appleworks GS running on a machine equipped with a TWGS (or comparable device) might be bearable (were it written in C), but imagine how much better it is written in assembly. Someday machines will be so fast that a 10x performance difference between assembly and C won't make much of a difference to the average end user. When the assembly language program completes the task in .001 sec and the C program completes it in .01 sec, performance will no longer be a good reason to write commercial applications in assembly rather than in C. Then we'll be left with using assembly only for those applications to which assembly is most appropriate because it is easier to express the alogrithm in assembly rather than C (or some other HLL). Be ye forewarned, however, when that day arrives, all you C jockeys are going to be on the defensive. By then, people will be arguing for the use of LISP, Prolog, ICON, APL, SETL, 4GLs, and other languages not in existence yet for the same reasons you're claiming everyone should be using C (or Ada, or Pascal). *** Randy Hyde