Path: utzoo!attcan!utgpu!news-server.csri.toronto.edu!clyde.concordia.ca!uunet!munnari.oz.au!goanna!ok From: ok@goanna.cs.rmit.oz.au (Richard A. O'Keefe) Newsgroups: comp.arch Subject: Re: He's not the only one at it again! Message-ID: <3478@goanna.cs.rmit.oz.au> Date: 28 Jul 90 13:32:58 GMT References: <25630@cs.yale.edu> <58091@lanl.gov> Organization: Comp Sci, RMIT, Melbourne, Australia Lines: 52 This is really a comp.lang.misc issue; I'd redirect followups but can't remember how. Sorry. In article <58091@lanl.gov>, jlg@lanl.gov (Jim Giles) writes: > In fact, as far as I can tell, the design of ALGOL can be divided into > three distinct groups of features: > 1) Features that it shared with Fortran (so, for these features, > Fortran is the "profound influence"). > 2) Features which are different, but completely irrelevant (like using > ":=" instead of "=" for assignment). > 3) Features which were later found to be a bad idea. (Take a look at > the ALGOL 60 'switch' some time.) The Algol 60 switch belongs in category (1), as it's a straight steal of Fortran's "computed GOTO". It isn't clear what := is supposed to be irrelevant to. Algol imposed no arbitrary limit on the length of variable names. - This falls into none of Giles's categories. F90 relaxes the limit. Algol was the first *well-known* language to use recursion, and this led to the publication of the idea of stack frames and such. - This feature is in F90 but falls into none of Giles's categories. Algol was the first well-known language where the size of an array was not fixed at compile time. - This feature is in F90 but falls into none of Giles's categories. Algol did not require continuation to be indicated by punching anything-other-than-0 in column 6. - This feature is in F90 but doesn't obviously fall into Giles's categories. Algol's "for" statement was obviously based on Fortran's DO statement, but it eliminated many restrictions. The simple fact of being able to write zero-trip loops was one of the things which made Algol 60 nicer than Fortran for many algorithms. - This cleanup is in F77 Algol did not inherit the idea of *requiring* local variables to be typed from Fortran; has this now been found to be a bad idea? Ironically, Giles praises the "while" statement, but Algol 60 *HAS* no "while" statement. (That's in Algol 60.1, which came years later.) (Algol 60 has a while-like variation of "for", but no "while" as such.) -- Science is all about asking the right questions. | ok@goanna.cs.rmit.oz.au I'm afraid you just asked one of the wrong ones. | (quote from Playfair)