Path: csiph.com!v102.xanadu-bbs.net!xanadu-bbs.net!news.glorb.com!news-out.readnews.com!news-xxxfer.readnews.com!news.misty.com!news.iecc.com!nerds-end From: "robin" Newsgroups: comp.compilers Subject: Re: Have we reached the asymptotic plateau of innovation in programming languages Date: Mon, 11 Jun 2012 20:21:09 +1000 Organization: Compilers Central Lines: 40 Sender: news@iecc.com Approved: comp.compilers@iecc.com Message-ID: <12-06-030@comp.compilers> References: <12-03-012@comp.compilers> <12-03-014@comp.compilers> <12-06-008@comp.compilers> <12-06-010@comp.compilers> <12-06-013@comp.compilers> <12-06-014@comp.compilers> <12-06-029@comp.compilers> NNTP-Posting-Host: news.iecc.com Mime-Version: 1.0 Content-Type: text/plain; format=flowed; charset="iso-8859-1"; reply-type=original Content-Transfer-Encoding: 7bit X-Trace: leila.iecc.com 1339421806 51771 64.57.183.58 (11 Jun 2012 13:36:46 GMT) X-Complaints-To: abuse@iecc.com NNTP-Posting-Date: Mon, 11 Jun 2012 13:36:46 +0000 (UTC) Keywords: syntax, history Posted-Date: 11 Jun 2012 09:36:46 EDT X-submission-address: compilers@iecc.com X-moderator-address: compilers-request@iecc.com X-FAQ-and-archives: http://compilers.iecc.com Xref: csiph.com comp.compilers:691 From: "Alex McDonald" > On Jun 7, 1:21 pm, Johann 'Myrkraverk' Oskarsson > wrote: >> Another point to make. Why do we assign from right to left? Is it in >> any way natural? What's wrong with >> >> a + b --> c "a plus b assigned to c" >> >> instead of >> >> c <-- a + b "c becomes a + b?" >> >> The more I think about it, I believe the former construct is a bit more >> natural since we read from left to right. However, I'd want to see or >> work on a non-trivial project in such a language to make up my mind. And what about languages that read from the top of the page to the bottom? > But we already have languages that support > > a b + c ! ( stack based, for bang read store ) Indeed, the earliest was Hamblin's GEORGE of 1957, the above written as a b + (c) where the parentheses indicated a store operation. And his loop: 0 1, 10 rep (j) read (a) + ] print the meaning of which should be fairly clear as to sum 10 values and to print that sum. The square bracket is for end-of-loop.