Thread overview | |||||||
---|---|---|---|---|---|---|---|
|
March 17, 2014 From where come from the term "lowering"? | ||||
---|---|---|---|---|
| ||||
I was reading Walter's article where he use this term and explain what is it. He did a clear explanation abount what what it does. But where come from actually this term? I can't find anything related with a lot of keyword combinations on google/bing. And isn't only me want to know about origin of this term (http://stackoverflow.com/questions/20252876/wanted-good-definition-of-the-term-lowering-in-the-context-of-compilers) |
March 17, 2014 Re: From where come from the term "lowering"? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Asman01 | On Mon, Mar 17, 2014 at 12:42:26AM +0000, Asman01 wrote: > I was reading Walter's article where he use this term and explain > what is it. He did a clear explanation abount what what it does. But > where come from actually this term? I can't find anything related > with a lot of keyword combinations on google/bing. And isn't only me > want to know about origin of this term (http://stackoverflow.com/questions/20252876/wanted-good-definition-of-the-term-lowering-in-the-context-of-compilers) 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 |
March 17, 2014 Re: From where come from the term "lowering"? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Asman01 | On 3/16/14, 5:42 PM, Asman01 wrote: > I was reading Walter's article where he use this term and explain what > is it. He did a clear explanation abount what what it does. But where > come from actually this term? I can't find anything related with a lot > of keyword combinations on google/bing. And isn't only me want to know > about origin of this term > (http://stackoverflow.com/questions/20252876/wanted-good-definition-of-the-term-lowering-in-the-context-of-compilers) 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 |
March 18, 2014 Re: From where come from the term "lowering"? | ||||
---|---|---|---|---|
| ||||
Posted in reply to H. S. Teoh | On Monday, 17 March 2014 at 16:49:38 UTC, H. S. Teoh wrote:
> On Mon, Mar 17, 2014 at 12:42:26AM +0000, Asman01 wrote:
>> I was reading Walter's article where he use this term and explain
>> what is it. He did a clear explanation abount what what it does. But
>> where come from actually this term? I can't find anything related
>> with a lot of keyword combinations on google/bing. And isn't only me
>> want to know about origin of this term (http://stackoverflow.com/questions/20252876/wanted-good-definition-of-the-term-lowering-in-the-context-of-compilers)
>
> 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.
|
March 18, 2014 Re: From where come from the term "lowering"? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Andrei Alexandrescu | On Monday, 17 March 2014 at 16:57:46 UTC, Andrei Alexandrescu wrote:
> On 3/16/14, 5:42 PM, Asman01 wrote:
>> I was reading Walter's article where he use this term and explain what
>> is it. He did a clear explanation abount what what it does. But where
>> come from actually this term? I can't find anything related with a lot
>> of keyword combinations on google/bing. And isn't only me want to know
>> about origin of this term
>> (http://stackoverflow.com/questions/20252876/wanted-good-definition-of-the-term-lowering-in-the-context-of-compilers)
>
> 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
Thanks very much for the information.
|
Copyright © 1999-2021 by the D Language Foundation