From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,d95b511473b3a931 X-Google-Attributes: gid103376,public From: ok@goanna.cs.rmit.EDU.AU (Richard A. O'Keefe) Subject: Re: Language Choice and Coding style Date: 1996/07/01 Message-ID: <4r7pvr$sh6@goanna.cs.rmit.EDU.AU>#1/1 X-Deja-AN: 163055877 references: <4r3c89$com@Starbase.NeoSoft.COM> organization: Comp Sci, RMIT, Melbourne, Australia nntp-posting-user: ok newsgroups: comp.lang.ada Date: 1996-07-01T00:00:00+00:00 List-Id: smize@Starbase.NeoSoft.COM (Samuel Mize) writes: >My best understanding: In The Beginning, all we had was punched cards >and simple teletype interfaces, so everything was all capitals. That's >all there were. Also, compiler table-space was tight, so 6-character >or 8-character identifier limits were common. How soon they forget. (a) COBOL has always allowed hyphens in identifiers, e.g. COMPUTE-WEEKLY-PAYROLL It's one of the oldest surviving programming languages. (b) PL/I had two encodings (the "48-character set" and the "6-character set"). The 60-character coding had the underscore. Where I used it, it was considered good PL/I style to use the underscore. The ANSI PL/I standard is 1976, but the language is older than that. (c) The third oldest computer I have ever seen in operation (the other two were an IBM 650 and an IBM 1620) was an IBM 1130. It had an APL keyboard. APL uses underlines. (d) Flexowriters! I've seen a fair bit of Algol 60 code written on flexowriters. (e) Algol 60 and Algol 68 both allowed identifiers of any length, and both handled multi-word identifiers by allowing embedded spaces. E.g. 'FOR' EMPLOYEE NUMBER := 1 'STEP' 1 'UNTIL' LAST EMPLOYEE 'DO' WEEKLY PAYROLL[EMPLOYEE NUMBER] := 0; >Once lower case and longer identifiers became available, some people >started writing longer identifiers, while others stayed with the older >trs style. This is where IdentifiersLikeThis came from. >I think this was first common in Pascal. I don't think Pascal had >underscores in identifiers, I may be wrong. The old Pascal standard didn't (because the CDC character set lacked 'em). UCSD Pascal allowed underscores but ignored them. The new Pascal standard (10206) allows them. Smalltalk didn't use underscores, because it was developed before the 1967 version of ASCII; the 1963 version of ASCII had a left arrow where the underscore is now. >Underscores also take a little more effort to type That depends entirely on which keybaord you are using. On the IBM 029 keypunches that I wrote Fortran, Burroughs Algol, and PL/I in, it was very easy to type underscores. >especially if >you're not a good touch typist. So, the MixedCase identifier is >still common in some quarters. This is ludicrous. It is _harder_ to type FooBarUgh (because it requires *three* case shifts) than foo_bar_ugh (because it requires only *two* case shifts). And in an age of mutable keymaps it is even sillier. -- Fifty years of programming language research, and we end up with C++ ??? Richard A. O'Keefe; http://www.cs.rmit.edu.au/~ok; RMIT Comp.Sci.