From: | Kaz Kylheku <480-992-1380@kylheku.com> |
Newsgroups: | comp.compilers |
Date: | Sat, 16 Oct 2021 17:16:05 -0000 (UTC) |
Organization: | A noiseless patient Spider |
References: | 21-10-017 21-10-018 |
Injection-Info: | gal.iecc.com; posting-host="news.iecc.com:2001:470:1f07:1126:0:676f:7373:6970"; logging-data="64509"; mail-complaints-to="abuse@iecc.com" |
Keywords: | translator |
Posted-Date: | 16 Oct 2021 13:47:26 EDT |
On 2021-10-11, Kartik Agaram <ak@akkartik.com> wrote:
> On a slight tangent, I've never liked the term "compiler". I prefer
> "translator". "Translator" maps well with "interpreter" when talking about
> natural languages. That seems like a good reason to also use it for
> computer languages.
Back in the day of Grace Hopper working on Fortran, the terms were
different from today. The "tran" in Fortran of course stands for
translation.
Back then, the word "coding" stood for taking a program (e.g. written by
hand on paper in pseudo-code) and turning into to a machine-language
computer program: among the last steps of programming. Today, we have
"source code" and producing it is coding.
The word "automatic coding" denoted the situation when a computer
was programmed into coding: taking a higher level description of the
program and trnaslating it to machine language.
"Compiling" existed; that referred to something that is more like
"linking" or "loading" today, or perhaps the preparation of an archive
containing object files. It had the obvious meaning: sticking together
routines to create a collection.
Somehow "compile" came to have the meaning to include the translation
step too. Perhaps because some of the steps came to be combined into one
tool invocation.
"To compile" is an attractive word in that it means putting stuff
together, but is only used in specialized circumstances. You don't
usually say that you compiled the clothes after taking them out of the
dryer, or that you compiled the toppings onto the sandwich, or that many
responsibilities have been compiled upon your shoulders. It's not a
commonly used word. It is mostly used in the context of combining
multiple published works, which is a very specific meaning.
That's the big reason why it was possible to give the word a technical
meaning is clear to the point that we can use "compile" almost entirely
out of context (other than it being clear it's a computing context) and
we know what kind of activity it refers to.
"To translate" is not so: do you mean C++ to assembly, or English to
German? Translating what: people translating user interfaces or
docuemntation to another language? Or the machine translating something?
Translate is also a term in English-language mathematics: to displace
coordinates. This happens in computing: logical window-relative
coordinates get translated to a pixel coordinate in the display buffer.
In memory management, virtual addresses get translated to physical
addresses.
--
TXR Programming Language: http://nongnu.org/txr
Cygnal: Cygwin Native Application Library: http://kylheku.com/cygnal
Return to the
comp.compilers page.
Search the
comp.compilers archives again.