After a while, I shortened this in my mind to something like "the UNIX
linker is called ld." No problem with that, but a few times I
absent-mindedly typed "ln" for "linker", which generally produced
very
strange results.
--Marc
On Thu, Dec 10, 2015 at 2:08 PM, Doug McIlroy <doug(a)cs.dartmouth.edu> wrote:
That's exactly right. ld performs the same task
as LOAD did on BESYS,
except it builds the result in the file system rather than user
space. Over time it became clear that "linker" would be a better
term, but that didn't warrant canning the old name. Gresham's law
then came into play and saddled us with the ponderous and
misleading term, "link editor".
Doug
My understanding, which predates my contact with
Unix, is that the
original toochains for single-job machines consisted of the assembler
or compiler, the output of which was loaded directly into core with
the loader. As things became more complicated (and slow), it made
sense to store the memory image somewhere on drum, and then load that
image directly when you wanted to run it. And that in some systems
the name "loader" stuck, even though it no longer loaded. Something
like the modern ISP use of the term "modem" to mean "router". But I
don't have anything to back up this version; comments welcome.
_______________________________________________
TUHS mailing list
TUHS(a)minnie.tuhs.org
http://minnie.tuhs.org/cgi-bin/mailman/listinfo/tuhs