title: What goes into writing a denotational semantics mapping function?
body: <p>I am a bit confused on the concept of denotational semantics. As I understand, denotational semantics are supposed to describe how functions and expressions work in a particular programming language. What exactly is the proper form used to describe these functions and how they work? What exactly is the "domain", and how does one build a mapping function?</p>
  
  <p>As an example, what would be the mapping function for "do X while Y"? </p>
  
  <p>I have been reading lots of material online but it is a tough to understand. Would these descriptions be similar to a context free grammar? </p>
  
  <p>Please let me know, thank you!</p>