Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!seismo!husc6!mit-eddie!genrad!decvax!mcnc!unc!rentsch From: rentsch@unc.UUCP (Tim Rentsch) Newsgroups: comp.lang.misc Subject: Re: assembler v. HLL Message-ID: <468@unc.unc.UUCP> Date: Sun, 28-Dec-86 18:08:29 EST Article-I.D.: unc.468 Posted: Sun Dec 28 18:08:29 1986 Date-Received: Mon, 29-Dec-86 03:36:20 EST References: <483@l.cc.purdue.edu> Reply-To: rentsch@unc.UUCP (Tim Rentsch) Organization: CS Dept, U. of N. Carolina, Chapel Hill Lines: 36 In article <483@l.cc.purdue.edu> cik@l.cc.purdue.edu (Herman Rubin) writes: > Also, one should realize that, as opposed to 30 years ago, transfers > and subroutine calls have become expensive. Now, wait a minute. That statement is misleading if not downright false. In the first place, subroutine calls (and transfers) have gotten faster over the years. So if they have become expensive, they are only *relatively* expensive, compared to other operations which may have gotten faster at a larger rate. So even if this is the only consideration (it isn't, see the following), subroutine calls have not "become expensive", they have instead gotten *cheaper*, only at a (perhaps) slower rate than some other things. In the second place, work done on pipelining and instruction look-ahead (yes, done in the last 30 years) has given a great deal of attention of subroutine calls and branches, precisely because they were expensive to begin with. (There are some very clever schemes for branching -- inlcuding one machine where an unconditional branch takes ZERO time. Zero anythings is never "expensive".) Since they were expensive to begin with, and since they had more attention paid to them, one would think they are cheaper now. (Studies comparing machines of thirty years ago to machines of today are welcome.) And, in the third place, subroutine calls do *more* now than they did thirty years ago. (Early machines did not even have subroutine call instructions, remember.) Comparing a Pascal subroutine call with a Fortran subroutine call is like comparing apples and oranges. The increased semantic power of the call must be considered before such a call can be said to be "more expensive". cheers, txr