Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.1 6/24/83; site mcgill-vision.UUCP Path: utzoo!watmath!clyde!bonnie!akgua!whuxlm!harpo!decvax!genrad!panda!talcott!harvard!bbnccv!bbncca!linus!philabs!micomvax!musocs!mcgill-vision!mouse From: mouse@mcgill-vision.UUCP (der Mouse) Newsgroups: net.bizarre Subject: Re: Bizarre Code Message-ID: <137@mcgill-vision.UUCP> Date: Tue, 3-Sep-85 04:41:07 EDT Article-I.D.: mcgill-v.137 Posted: Tue Sep 3 04:41:07 1985 Date-Received: Sun, 8-Sep-85 04:40:40 EDT References: <462@moncol.UUCP> <29712@lanl.ARPA> <554@grkermi.UUCP>, <490@moncol.UUCP> Organization: McGill University, Montreal Lines: 34 >>When writing an overlaid program on HP-2100/RTE, you had to include a statement >>like >> >> IF (2 .EQ. 4) CALL MAIN >Ulp! By any chance did this FORTRAN let you change the value of a constant >by passing it to a subroutine, as in: > > CALL FOO(2) > . > . > . > SUBROUTINE FOO(I) > I=I + 2 > RETURN > END Now imagine if that FORTRAN *did* do constant merging (ie when you use the constant `2' three times, allocate only one 2)! TYPE *,2 CALL foo(2) TYPE *,2 CALL foo(2) TYPE *,2 writes out 2, 4, and 6 ?! Uh....maybe that could lend itself to some neat hacks.... -- der Mouse {ihnp4,decvax,akgua,etc}!utcsri!mcgill-vision!mouse philabs!micomvax!musocs!mcgill-vision!mouse Hacker: One responsible for destroying / Wizard: One responsible for recovering it afterward