Check out my first novel, midnight's simulacra!

Programming languages: Difference between revisions

From dankwiki
No edit summary
No edit summary
 
Line 1: Line 1:
==Formal Semantics==
==Formal Semantics==
* Attribute grammars, due to Knuth in 1968.
* Denotational semantics -- map [[Theory#Formal_Languages|grammatical elements]] directly to mathematical functions
* Axiomatic semantics -- apply a system of axioms + deduction rules to the grammar
* Operational semantics -- map language constructs to a simple (well-defined) abstract machine
* Attribute grammars (Knuth, 1968) -- extensions of context-free grammars. An attribute grammar ''AG'' consists of:
** a context-free grammar ''G''
** a finite set of attributes ''A''
** a finite set of semantic rules having form R : AG = (''G'', ''A'', R ).
 


==References==
==References==

Latest revision as of 10:30, 7 September 2009

Formal Semantics

  • Denotational semantics -- map grammatical elements directly to mathematical functions
  • Axiomatic semantics -- apply a system of axioms + deduction rules to the grammar
  • Operational semantics -- map language constructs to a simple (well-defined) abstract machine
  • Attribute grammars (Knuth, 1968) -- extensions of context-free grammars. An attribute grammar AG consists of:
    • a context-free grammar G
    • a finite set of attributes A
    • a finite set of semantic rules having form R : AG = (G, A, R ).


References

See Also