I don't know about the exact etymology of this term, but my
understanding of it is that it's referring to the translation of a
higher-level concept to a lower-level implementation, such as the
translation of a C construct into assembly language, or the translation
of a C++ construct into C (which the first C++ compilers did). In the
context of D, it can also be used to describe a particular syntax that
translates to "simpler" or lower-level primitives, such as:
foreach (i; 0 .. 10) { ... }
translating into:
for (i=0; i < 10; i++) { ... }
Hence the term "lowering" (take a high-level abstraction and translate
it into a lower-level implementation).
T
--
Only boring people get bored. -- JM

I don't know about the exact etymology of this term, but my
understanding of it is that it's referring to the translation
of a
higher-level concept to a lower-level implementation, such as
the
translation of a C construct into assembly language, or the
translation
of a C++ construct into C (which the first C++ compilers did).
In the
context of D, it can also be used to describe a particular
syntax that
translates to "simpler" or lower-level primitives, such as:
foreach (i; 0 .. 10) { ... }
translating into:
for (i=0; i < 10; i++) { ... }
Hence the term "lowering" (take a high-level abstraction and
translate
it into a lower-level implementation).
T

This I have had understood. What I was looking know is where come
from the term because I hadn't saw nobody also Walter/Andrei
using this.

I introduced the term "lowering" to our community as the word was
commonly used in the programming languages group at University of
Washington (led at the time by Craig Chambers and Dan Grossman). It's
commonly used in compiler backend circles, see e.g. http://goo.gl/FEVypJ.
It generally means the process of translating a higher-level language
with many capabilities into a simpler, lower-level language. The latter
could be an intermediate language, machine code, or even a reduced
dialect of the higher-level language (as is the case for the way it's
often used in D).
Andrei

I introduced the term "lowering" to our community as the word
was commonly used in the programming languages group at
University of Washington (led at the time by Craig Chambers and
Dan Grossman). It's commonly used in compiler backend circles,
see e.g. http://goo.gl/FEVypJ.
It generally means the process of translating a higher-level
language with many capabilities into a simpler, lower-level
language. The latter could be an intermediate language, machine
code, or even a reduced dialect of the higher-level language
(as is the case for the way it's often used in D).
Andrei