Your thesis, as expressly stated and reiterated, was that Smalltalk didn't include low lines "because it simply _couldn't_. The fact that it was possible to have used Smalltalk on machines that "couldn't" in 1980 does not prove your point any more than the fact that it is equally possible to use those machines today.
I *do* so wish that people would take the rather minor trouble to read carefully and think about what they read.
My point about the 1980s VMS printers *of course* doesn't prove anything about Smalltalk-80, nor was it intended to. *READ IN CONTEXT* it quite obviously was intended only to rebut the claim that ASCII was everywhere in use and everywhere the same.
The fact remains that the character set actually used by Smalltalk in the coloured books is suspiciously close to ASCII-63. The only characters *not* in ASCII-63 that it uses are the lower case letters, and it was obvious when ASCII-63 came out that not only were the lower case letters going to be added later but that they were going to be added where they now are. (The FIELDATA precedent for aligning the lower and upper case blocks was clear, and the reasons for doing it still applied.)
So what what _was_ on the Alto keyboard?
Long pause while I find an Alto BCPL manual. Annoyingly, The "BCPL Reference Manual" by James E. Curry and PARC staff, compiled on September 14, 1979 (note date!) does not list the supported character set, and does not spell out the lexical structure of the language. However, comparison with other BCPLs reveals: [ instead of { or $( ] instead of } or $) % instead of | = instead of := uparrow used in a non-standard feature baStudlyCaps identifiers (not normal BCPL at all) no SEPARATED_WORDS (which _was_ normal BCPL practice) With the exception of = for :=, the differences again point to ASCII-63, which _did_ have uparrow, but _didn't_ have { } or even | (in fact, the ACK control character was slap bang on top of where | is now). Even more interesting: I can find no characters used in Alto BCPL (other than the lower case letters) that were _not_ in ASCII-63. Now ISO apparently announced in October 1963, just four months after ASCII-63 was released, that the lower case letters were going to go where they are now.
It's not without significance that Mesa, the other systems programming language for the Alto, also used left arrow for assignment. I haven't been able to get my hands on a Mesa language reference manual yet, sadly.
However, we do have evidence that the Alto character set was (possibly an extension of) (October 1963) ASCII-63.
What we think of as ASCII is ASCII-67, which came out in 1967. The adoption of a new standard is never instantaneous, so even in the early 70s, you could expect to find ASCII-63 around. Like on Teletypes. Like, even in 1979, on Altos.
At 12:01 PM +1200 5/31/2000, Richard A. O'Keefe wrote:
Your thesis, as expressly stated and reiterated, was that Smalltalk didn't include low lines "because it simply _couldn't_. The fact that it was possible to have used Smalltalk on machines that "couldn't" in 1980 does not prove your point any more than the fact that it is equally possible to use those machines today.
I *do* so wish that people would take the rather minor trouble to read carefully and think about what they read.
An interesting, albeit ad hominem, remark. I didssent. Reasonable people who actually care about this (probably an oxymoron) may review the archives and decide for themselves.
Mr. O'Keefe continues:
My point about the 1980s VMS printers *of course* doesn't prove anything about Smalltalk-80, nor was it intended to. *READ IN CONTEXT* it quite obviously was intended only to rebut the claim that ASCII was everywhere in use and everywhere the same.
I agree with Mr. O'Keefe's statement that his point about printers doesn't prove anything about Smalltalk-80. It is from that point where our views diverge. But here is what Mr. O'Keefe did write, after a lengthy discussion about the merits and history of word separators:
At 11:02 AM +1200 5/30/2000, Richard A. O'Keefe wrote:
Not the least of the defects in the BaStudlyCaps style is that when you have to refer to an acronym in one of them it becomes ambiguous. Even when it's not ambiguous, "DOM_Core" is clearer than "DOMCore". (For some reason, especially in handwriting, the C tends to be hard to see in that one.)
I suppose one key difference is whether you intend a multi-word identifier to be percieved as multiple words (as I do) or as a single `word'.
Let us not lose sight of the fact that Smalltalk (like Pascal) originally didn't include low lines because it simply _couldn't_; the first version of ASCII just plain didn't include them. (Pascal was actually constrained by another character set.) When the Pascal standard was revised (giving ISO Pascal Extended), that technological barrier to good naming no longer existed, so it was dropped. When the Smalltalk standard was produced, that technological barrier to good naming no longer existed, so it was dropped.
Clinging to BaStudlyCaps because "that's the way it has always been done in Smalltalk" (as another person suggested) would be like insisting that Fortran stick with 6-letter identifiers forever. Thank goodness the F90 committee didn't swallow that kind of argument.
That proposition being challenged in the following colloquy, he wrote:
At 3:14 PM +1200 5/30/2000, Richard A. O'Keefe wrote:
Let us not lose sight of the fact that Smalltalk (like
Pascal) originally
didn't include low lines because it simply _couldn't_; the
first version
of ASCII just plain didn't include them.
Really? Yes.
This is historically correct? Yes.
With all the wierd glyphs, I'm surprised. Can you give a source (or would someone form SqCentral care to comment)?
CACM, 1960-something. Go to your local museum of computing and take a look at the keyboard of a Model 33 Teletype. There were quite a few
the now-unnotorious "printer discussion." And, finally:
At 5:31 PM +1200 5/30/2000, Richard A. O'Keefe wrote:
Ahem. Squeak derives from Smalltalk 80, named after the year 1980.
So what? I've seen VMS sites still using printers in the early 80s where _ printed as <-.
The accusation that I hadn't read postings came in reply to my observation that these remarks merely beg the question whether "Smalltalk (like Pascal) originally didn't include low lines because it simply _couldn't_." I agree his response was non-responsive to that point. Indeed, far from losing or ignoring context, I believe that my response merely refocused (indeed by quoting from context) what had become a tedious and hopelessly rambling non-discussion.
So, reasonable people may decide for themselves whether the context of this discussion manifests a lack of due attention to Mr. O'Keefes postings. Since Mr. O'Keefe now admits that he has proved nothing about Smalltalk, let alone Squeak, and, in fact, claims his writing is, in fact, unrelated thereto, I'll simply leave the merits of the issue alone and move on.
The trolling having gotten out of control, this will be my last post in response to Mr. O'Keefe. He may have the field to himself.
On Wed, May 31, 2000 at 12:01:59PM +1200, Richard A. O'Keefe wrote:
Long pause while I find an Alto BCPL manual.
BCPL fans and committed retrocomputing enthusiasts should bookmark Martin Richards' web site at:
http://www.cl.cam.ac.uk/users/mr/
Here you will find an up to date BCPL manual, portable implementions of BCPL and MCPL, a Tripos command shell, and other fun stuff.
Anyone care to implement SLANG translation to BCPL? We could have Squeak running in a BCPL virtual machine under a Tripos monitor hosted on Linux using Dr. Richards' latest work. Alternatively, hosting BCPL/Tripos in a Squeak image might be interesting.
Dave
squeak-dev@lists.squeakfoundation.org