Kapitel 11 - Grundlagen der Programmiersprachen - DdI
Kapitel 11 - Grundlagen der Programmiersprachen - DdI
Kapitel 11 - Grundlagen der Programmiersprachen - DdI
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
<strong>11</strong>-17<br />
alle diese Teilfunktionen entsprechend des Programmaufbaus zusammensetzen und<br />
erhält so die Semantik des Gesamtprogramms.<br />
Um die prinzipielle Vorgehensweise bei <strong>der</strong> Definition einer semantischen Funktion F zu<br />
verstehen, beschränken wir uns jedoch <strong>der</strong> Übersichtlichkeit halber im weiteren Verlauf<br />
auf die Semantikdefinition einer Teilmenge von ML, genannt µML.<br />
<strong>11</strong>.2.1 Die Syntax von µML<br />
In µML mögen nur folgende Typen und Konstrukte von µML zugelassen sein:<br />
<strong>der</strong> elementare Datentyp int,<br />
Ausdrücke über int und bool,<br />
Wertdeklarationen <strong>der</strong> Form val x=E mit einem arithmetischen<br />
Ausdruck E vom Typ int,<br />
Funktionsdefinitionen <strong>der</strong> Form fun f x =... mit einem Parameter,<br />
eine spezielle Eingabeanweisung read.<br />
Die Syntax von µML lautet in Backus-Naur-Form:<br />
::= ; <br />
::= ; | ε<br />
::= | <br />
::= val = <br />
::= fun = <br />
::= | <br />
::= ( ) | |<br />
| ()<br />
::= + | - | * | /<br />
::= if then else <br />
::= = | ≠ | true | false<br />
::= "Bezeichner nach üblichen Konventionen"<br />
::= "ganzzahlige Konstante"<br />
::= (read(); ).<br />
<strong>11</strong>.2.2 Umgebungen<br />
Die Semantik etwa eines arithmetischen Ausdrucks ist sein Wert. Um also die Semantik<br />
eines Ausdrucks z.B. <strong>der</strong> Form<br />
2+x