From: mikey@superior.carleton.ca (Mike McFaul)
Subject: Re: CP-6?
Organization: Carleton University, Ottawa, Canada
Date: Tue, 14 Apr 1992 18:03:34 GMT

In article <4901@naucse.cse.nau.edu> kds@naucse.cse.nau.edu (Kevin Strietzel) writes:
>In article <wcsjc.703199828@cunews> wcsjc@alfred.carleton.ca (John Coughlin) writes:
>>In <9671@bnr-rsc.UUCP> christo@bcarh803.BNR.CA (Mark Christopher) writes:
>>
>>>I don't recall much about the on-line help.  What I do remember is that
>>>the text for the various errors the system spewed out were looked up in
>>>a file.  A friend of mine told me that one April 1st, the error messages
>>>magically became some strange combination of pig-latin and rhyming slang...
>>
>>God!  Another computer Urban Legend!
>
>[pulling out Honeywell _CP-6 Pocket Guide_....]
>
>I used to use a DPS-8 running CP-6, back when I was an undergrad at
>NAU.  Where else would FOX, DOG, OWL, and LEMUR be commands?  I seem to
>remember the email system was composed of BEAM, SUCK, and SCOTTY.
>Wasn't the boot program GOOSE, and the boot script the GOOSE_EGG, or
>some such?

GOOSE is more like 'cron' on UNIX systems, the GOOSE_EGG is the crontab
file.

>
>I *liked* the line editing, which was identical in the editor and the
>"shell".
>
>When the FORTRAN compiler got confused, it said something like, "I just
>can't bring myself to compile this code." And, if a program had "GOTO
>JAIL" as a statement, the compiler said, "Go directly to jail, do not
>pass go, do not collect $200."
>
>The Pascal compiler was pretty bad, but asking for help, subject "SAM",
>delivered a copy of _The Cremation of Sam McGee_, by Robert Service.
>I probably still have this one hanging around somewhere.
>

I'm afraid I have to jump in here... as one who has worked on the CP-6
Pascal compiler (near the end that is) -- I just have to ask a number
of simple questions:

1) When was the last time you used a pascal compiler (heck any
   compiler!) that *by default* had had array index bound checking,
   subrange type checking, unlimited (yes thats right *unlimited*) set
   sizes (you know arrays of bits!), and undefined variable checks. You
   could then turn off the checking code once you were done debugging.

2) Strong typing of variables and procedures?

3) Excellant reporting of run-time error types. When was the last time
   you tried to find 'segmentation fault'? How about indexing an array
   past the end and having the program tell you!!

4) Superb compile time error reporting, I know the compiler doesn't
   have the 'Too many error's -- I'm giving up' syndrom -- like many
   'C' compilers I've used)...

I see that ANSI C is starting to address some of these things, but the
CP-6 Pascal compiler was ahead of its time. It was designed in or
about 1980 by people here at Carleton U and was finally put to rest in
around 1986 (please correct me if I'm wrong :-). The biggest problem
it had was the debugger on CP-6 (Control Program 6), called DELTA;
originally an assembly language debugger from CP-V (Control Program 5)
which has annotated statement types (this group of assembler
instructions is a 'WHILE' statement, another is an 'ASSIGNMENT'...).

I remember the SAM help topic and resisted the removal of that in the
*final* version. I just checked and I still have that if anyone wants
a copy.
Newsgroups: alt.folklore.computers,alt.unix.wizards,cct.ccc,cct.cuhug,comp.editors,comp.unix.questions