Google-apper
Hovedmeny

Post a Comment On: Ken Shirriff's blog

""Hello world" in the BCPL language on the Xerox Alto simulator"

9 Comments -

1 – 9 of 9
Blogger Unknown said...

Thank you for this, and for quantitatively demonstrating the hubris of Jobs. We still need dudes like him, who believe their own edits of history, but hopefully there's enough dudes like you who shed light on history.

June 27, 2016 at 12:12 PM

Blogger menriquez said...

history is almost always written by the victorious, so it's understandable that Jobs would claim and credit himself with such an insight.

June 27, 2016 at 12:28 PM

Blogger Martin Haeberli said...

I worked for Charles Simonyi at Xerox ASD (Advanced Systems Development) on the BravoX (Bravo 10) editor (see https://en.wikipedia.org/wiki/Bravo_(software) ).

As the Wikipedia article points out, BravoX was written in BCPL, and later re-implemented in a language called "Butte" - "A Butte is a small Mesa". But the source code syntax of Butte and BCPL were essentially the same. The difference was that the BCPL compiler mentioned here generated machine code for the Data General Nova (which was emulated by Alto microcode), and Butte generated Mesa-like byte code (but NOT Mesa byte code). As it happens, I implemented the Butte microcode interpreter for the Xerox Alto at Charles' direction, having lost the argument with Charles where I advocated that Butte should generate Mesa bytecode for maximum forward portability. Charles later agreed that we should have gone with Mesa byte codes... but too late...

See https://en.wikipedia.org/wiki/Mesa_(programming_language) for more information about Mesa. See also https://en.wikipedia.org/wiki/Xerox_Alto.

June 27, 2016 at 4:41 PM

Blogger Eschaton said...

Was the code for Bravo, BravoX, or Butte ever made available? There's a reimplemented Mesa system available it could be run on if the Mesa-like vs Mesa issue was addressed... :)

June 27, 2016 at 8:49 PM

Blogger Ken Shirriff said...

Martin: very interesting. Eschaton: I couldn't find BravoX or Butte source code, but the code for Bravo and a bunch of other things is at http://xeroxalto.computerhistory.org/Indigo/AltoSource/.index.html

June 27, 2016 at 10:32 PM

Blogger Unknown said...

I used BCPL in the 70s at school and then at Cambridge under Martin Richards (its main begetter) and have no recollection of "heffalump" (we did call the exclamation mark "shriek" though). Have just checked with a Cambridge near-contemporary and he agrees.

July 1, 2016 at 7:49 AM

Blogger Ken Shirriff said...

John, maybe heffalump is a Xerox term. I found it in the Xerox BCPL manual, but it doesn't turn up anywhere else.

July 1, 2016 at 11:15 AM

Blogger Michele said...

I never heard the term "heffalump" when I worked at Xerox.

This is a great intro to BCPL but Bravo is way overkill for writing code. The best editor for that was Clint Parker's Flash editor. Lightweight and aptly named, it was blazing fast with silky smooth text scrolling that is still unequalled today. All microcoded of course, like everything Clint wrote.

May 8, 2017 at 10:29 PM

Blogger Samuel A. Falvo II said...

A lot of the BCPL features listed above do not appear to be canonical BCPL. Dr. Martin Richards continues to maintain a BCPL implementation on his website, and has different features. For instance, his version uses { and } instead of $( and $) (which is what BCPL *originally* used) or [ and ]. ! and % are used for dereferencing exclusively; no => operation exists. Etc.

November 12, 2018 at 1:35 PM

You can use some HTML tags, such as <b>, <i>, <a>

Comment moderation has been enabled. All comments must be approved by the blog author.

You will be asked to sign in after submitting your comment.
Please prove you're not a robot