Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2.fluke 9/24/84; site vax2.fluke.UUCP Path: utzoo!linus!philabs!prls!amdimage!amdcad!decwrl!decvax!harpo!whuxlm!whuxl!houxm!vax135!cornell!uw-beaver!fluke!kurt From: kurt@fluke.UUCP (Kurt Guntheroth) Newsgroups: net.lang Subject: Re: Reading programs left-to-right. Message-ID: <891@vax2.fluke.UUCP> Date: Tue, 13-Aug-85 13:56:13 EDT Article-I.D.: vax2.891 Posted: Tue Aug 13 13:56:13 1985 Date-Received: Tue, 20-Aug-85 03:09:24 EDT References: <6571@boring.UUCP> Organization: John Fluke Mfg. Co., Inc., Everett, WA Lines: 28 I once wrote a language in which assignment went left-to-right. I had also noticed that most constructs go left-to-right and wanted the language to be totally consistent. WHAT A MISTAKE!!!! There were basically two problems. The first was that I had to re-learn how to write assignments. Every time I wrote a program, I had at least one syntax error result from doing my assignments backwards. The second problem was that the targets of the assignments (the interesting part) didn't line up on the page. Look at a = 0 b = Z[i,j,k] + C[i,j,l] c = -b/2ac and now (I change only the assignment operator and direction and) look at 0 -> z Z[i,j,k] + C[i,j,l] -> b -b/2ac -> c See? This is simply a case in which you want to go right-to-left. By the way, code generation wasn't significantly easier, and if you parse to trees, there is no difference at all. -- Kurt Guntheroth John Fluke Mfg. Co., Inc. {uw-beaver,decvax!microsof,ucbvax!lbl-csam,allegra,ssc-vax}!fluke!kurt