On Mon, 17 Jan 2011, John Cowan wrote:
This seems to
indicate the idea was not developed separately at
Berkeley.
Thanks for doing the digging. What this shows is that dmr came up with
the idea of putting shebang processing into the kernel, but it does not
show where shebangs as a shell feature came from. I still think that
has to be the CSRG.
As a similar feature, Joy's experimental "ashell" in the first BSD had a
feature to run Pascal objects (started with the magic 0404 octal word)
with the px interpreter. In 2BSD (and then 3BSD), his new csh had the
OTHERSH feature -- if it started with # it would use csh; if the script
did not begin with the # it would use /bin/sh.
I still don't see the same #! feature, but the above appear they may be
inspiration. Also the 1BSD and 2BSD predate CSRG.
It was
introduced into BSD by April 1981. For 2BSD (2.8) it was added by
Dec. 16, 1981 when built with MENLO_SCRIPT defined (but I don't see that
documented or defined).
Thanks again for clarifying the ordering here: I had assumed that 2.8
was older than 4.0.