2009-05-20 7 views
1

Haben Sie irgendwelche Hinweise auf Informationen/Forschung zu exprimierenden Computersprache Semantik auf die gleiche Art und Weise werden syntaktische Anforderungen formalisiert mit kodifiziert/Markup Notationen (wie zum Beispiel EBNF)Ausdruck Programmiersprache Semantics (AST -> ASG)

Dank

+0

Wikipedia hat Informationen über formale Semantik: http://en.wikipedia.org/wiki/Formal_semantics_of_programming_languages – Nat

Antwort

3

Es gibt eine ganze Tonne Literatur zu diesem Problem. Peter Mosses schrieb ein Buch mit dem Titel Action Semantics. Peter Lee und Andrew Appel promovierten beide über die Erzeugung eines Compilers aus einer formalen Beschreibung der Semantik; Ich denke, Peter ist als Buch herausgekommen.

Bill Waites Gruppe in Colorado hat ein Compiler-Bau-Toolkit namens Eli geschrieben, das alles von Lexing über Parsing bis Semantik abdeckt. Tom Reps 'Arbeit über Attributgrammatiken wurde unter anderem auf die Sprachsemantik angewendet. Es gab auch einige europäische Arbeiten mit Attributgrammatiken, aber ich kann mich nicht an die Akronyme oder die Leute erinnern.

Gute Orte, um Ihre Zehen tauchen in vielleicht

  • Don Knuth Original-Papier auf Attribut-Grammatiken
  • Peter Lee Dissertation
  • Eli
  • Vielleicht Peter Mosses Buch enthalten, obwohl ich ich zurück denken scheinen fand es schwer
1

Benjamin Pierce Buch Types and Programming Languages ist ein guter Ort anfangen. Es verwendet "Operational Small Step Semantics" als formale Spezifikation für Programmiersprachen.

Eine andere gute Ressource könnte John Boyland's PHD thesis sein.

Er entwickelte ein System namens APS, das mit Attributgrammatiken einen vollständigen Compiler generieren kann.