digitalmars.D - From where come from the term "lowering"?
- Asman01 (6/6) Mar 16 2014 I was reading Walter's article where he use this term and explain
- H. S. Teoh (16/21) Mar 17 2014 I don't know about the exact etymology of this term, but my
- Asman01 (4/34) Mar 17 2014 This I have had understood. What I was looking know is where come
- Andrei Alexandrescu (11/17) Mar 17 2014 I introduced the term "lowering" to our community as the word was
- Asman01 (3/25) Mar 17 2014 Thanks very much for the information.
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)
Mar 16 2014
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
Mar 17 2014
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: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 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
Mar 17 2014
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
Mar 17 2014
On Monday, 17 March 2014 at 16:57:46 UTC, Andrei Alexandrescu wrote:On 3/16/14, 5:42 PM, Asman01 wrote:Thanks very much for the information.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
Mar 17 2014