From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: 103376,c4cb2c432feebd9d X-Google-Thread: 1094ba,c4cb2c432feebd9d X-Google-Attributes: gid103376,gid1094ba,public X-Google-Language: ENGLISH,ASCII Path: g2news2.google.com!news4.google.com!border1.nntp.dca.giganews.com!nntp.giganews.com!wn14feed!worldnet.att.net!bgtnsc04-news.ops.worldnet.att.net.POSTED!b680011b!not-for-mail From: Dick Hendrickson User-Agent: Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.4) Gecko/20030624 Netscape/7.1 (ax) X-Accept-Language: en-us, en MIME-Version: 1.0 Newsgroups: comp.lang.ada,comp.lang.fortran Subject: Re: Ada vs Fortran for scientific applications References: <4dd87pF18ot14U1@individual.net> <447207D6.3010408@cits1.stanford.edu> <4dg101F17acafU1@individual.net> <44730df4$1@news.meer.net> <4diimsF1b0c25U1@individual.net> In-Reply-To: <4diimsF1b0c25U1@individual.net> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 8bit Message-ID: <8V_cg.155757$eR6.70498@bgtnsc04-news.ops.worldnet.att.net> NNTP-Posting-Host: 5caadabf0185b54d8ee21fa03c8f2954 X-Complaints-To: abuse@worldnet.att.net X-Trace: bgtnsc04-news.ops.worldnet.att.net 1148484292 5caadabf0185b54d8ee21fa03c8f2954 (Wed, 24 May 2006 15:24:52 GMT) NNTP-Posting-Date: Wed, 24 May 2006 15:24:52 GMT Organization: AT&T Worldnet Date: Wed, 24 May 2006 15:24:52 GMT Xref: g2news2.google.com comp.lang.ada:4414 comp.lang.fortran:10199 Date: 2006-05-24T15:24:52+00:00 List-Id: Jan Vorbr�ggen wrote: >>> If I have a native complex type, the language implementor is free to >>> arrange >>> the real and imaginary part in memory as he sees fit, >> >> Although Fortran does restrict the implementation, so the langauge >> implementer is not fully free. > > > Is that through sequence association - i.e., I can assume (conceptually) > an EUIVALENCE of two reals, the real and imaginary part in that order, to > be in place for a complex variable? Yes. COMMON, EQUIVALENCE, and use as an argument usually require a fixed structure for complex variables. However, essentially all of Fortran's rules have an "as if" clause somewhere in them. If the compiler is sufficiently clever (and can see enough of the whole program) it can do anything with complex variables. Keeping temporaries in registers and discarding them when they become dead is common practice and is standard conforming. Dick Hendrickson > > Jan