3 ms·
"Lowering" (though I've never heard it called that) is also handy in the course of working with formal semantics especially in the case of proofs and other seri
by johnbender 9y ago
"Lowering" (though I've never heard it called that) is also handy in the course of working with formal semantics especially in the case of proofs and other serious reasoning. You can "port" your reasoning from the "lower" construct to the special case of the higher construct.
In general this also translates to simply understanding the semantics of a language. If you can describe something in terms of another concept the listener already has an intuition for, often it makes the new thing easier to understand and learn.
Though it's easy to imagine cases where the "lower" thing is so abstract that it's hard to apprehend in the first place (e.g. "everything is just a closure!").
- fanf2 9y agoI thought the usual term is "desugaring"
- saurik 9y agoI have been caring a lot about languages and compilers for almost two decades now, and I have heard the term "lowering" often... but it means something different (and broader) than "desugaring". Essentially: I disagree with the linguistic argument of this author :/. Here is a comment I left elsewhere on this post with a bunch of examples from a variety of compiler projects showing how I have always heard and understood the term "lowering": https://news.ycombinator.com/item?id=14429533 https://news.ycombinator.com/item?id=14429533 .