Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.1 6/24/83; site dartvax.UUCP Path: utzoo!watmath!clyde!burl!ulysses!mhuxl!houxm!vax135!cornell!uw-beaver!tektronix!hplabs!hpda!fortune!amd!decwrl!decvax!dartvax!alexc From: alexc@dartvax.UUCP (Alex Colvin) Newsgroups: net.lang.mod2 Subject: one pass compilers; forward references Message-ID: <2359@dartvax.UUCP> Date: Fri, 31-Aug-84 09:44:17 EDT Article-I.D.: dartvax.2359 Posted: Fri Aug 31 09:44:17 1984 Date-Received: Mon, 3-Sep-84 11:54:15 EDT Organization: Dartmouth College Lines: 17 I sympathize with the Volition folks who require forward de- clarations. Note that ADA[1] requires forward declarations for any identifier that is referenced before its time. It makes life considerably simpler for the compiler without im- posing much of a burden on the user. It is important that Modula be convenient to implement as well as to use. This was the reason for PASCAL's success, more than any virtues of the language design. I might even argue that forward declarations can make life easier for the programmer. Don't forget that any work the compiler has to do must be duplicated by someone trying to read the program. This includes, e.g., symbol table lookup and overloading resolution. [1] ADA is a well-known trademark of the Department of War, as well as a fascinating book by Nabokov.