Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 (Tek) 9/28/84 based on 9/17/84; site mako.UUCP Path: utzoo!watmath!clyde!burl!ulysses!mhuxr!mhuxt!houxm!vax135!cornell!uw-beaver!tektronix!orca!mako!jans From: jans@mako.UUCP (Jan Steinman) Newsgroups: net.works Subject: Re: Not again!? Assembler vs High-Level languages Message-ID: <733@mako.UUCP> Date: Thu, 25-Apr-85 16:03:16 EST Article-I.D.: mako.733 Posted: Thu Apr 25 16:03:16 1985 Date-Received: Sat, 27-Apr-85 05:25:19 EST References: <483@terak.UUCP> <2251@wateng.UUCP> <492@terak.UUCP> <543@cadovax.UUCP> <5523@utzoo.UUCP> Reply-To: jans@mako.UUCP (Jan Steinman) Organization: Tektronix, Wilsonville OR Lines: 32 Summary: In article <5523@utzoo.UUCP> henry@utzoo.UUCP (Henry Spencer) writes: >With regard to speed vs. space in optimizing compilers, it is not >unheard-of for optimizing compilers to vary their tradeoffs depending >on the code, e.g. optimizing for speed rather than space inside nested >loops. This is why Ada has: pragma OPTIMIZE (TIME); -- Tell compiler to make it quick. pragma OPTIMIZE (SPACE); -- Tell compiler to make it small. Too bad nobody is wholeheartedly implementing OPTIMIZE yet. (Appologies in advance if your favorite Ada compiler does an adequate job of this!) Most of the people in the "optimizing compiler camp" forget that the basic mechanisms of a particular language are often slow and/or unwieldy. I will readily admit that a good optimizer can do about as good a job on the internals of a procedure as an assembly coder, but it doesn't have much say in the code needed to invoke the procedure. (I don't know anything about th much discussed BLISS, so I can't comment on it.) most languages get in the way of optimizers by having a "deep" structure. If a program is *designed* for a particular architecture, and is *skillfully* coded in assembly, I have to throw my vote to Doug and the "assembly camp". STANDARD "ASSEMBLY CAMP" COWARDLY DISCLAIMER: Of course, the time and expense of assembly code should only be used when it has been determined that the best compilers available simply do not generate the desired code, based on size and time specifications! (Such as a Smalltalk Virtual Machine!) -- :::::: Jan Steinman Box 1000, MS 61-161 (w)503/685-2843 :::::: :::::: tektronix!tekecs!jans Wilsonville, OR 97070 (h)503/657-7703 ::::::