It's interesting, I was thinking about this the other day too.   I remember talking about the 'main program' in Fortran when I was learning.  I never thought about it when I saw it in C, other than, ok that's how you pass command line args, which I thought was really clean.   I remember TOPS and TSS you had to go rummaging around to get to them.  

As for your BCPL question, START() was way I learned it.  I think I first saw it on the 360s or maybe the 1108; but really never did much it until I saw the first Altos. 

Clem  

On Fri, May 22, 2020 at 2:53 PM Lawrence Stewart <stewart@serissa.com> wrote:
C main programs define “main”.
This also seems to be true of B main programs, according to the Johnson/Kernighan manual
The 1967 Martin Richards BCPL manual doesn’t explain how programs get started
The 1974 update from Martin Richards says there should be an OS addendum that explains this.
The 1974 University of Essex BCPL manual says to use START
The 1979 Parc Alto BCPL manual uses Main and I think that must be unchanged from 1972.
The AMSTRAD BCPL guide from 1986 uses start()


So who started “main” and when?  I can’t find an online copy of the Bell Laboratories BCPL manual (Canaday/Thompson) from 1969 or anything about how to use BCPL on Multics or CTSS.

-L