Semantik von Programmiersprachen


\begin{frame}[fragile,environment=slide]
\frametitle{Statische und dynamische Se...
...gramms)
\par
Operational, Axiomatisch, Denotational
\end{itemize}\par\end{frame}

\begin{frame}[fragile,environment=slide]
\frametitle{Attributgrammatiken}
\par
A...
...ekannt sind,
kann man Attributwerte durch Werkzeuge bestimmen lassen.\end{frame}


\begin{frame}[fragile,environment=slide]
\frametitle{Attributgrammatiken--Beispi...
...
\item
Kompilation (für Kellermaschine) (statisch)
\end{itemize}\par\end{frame}

\begin{frame}[fragile,environment=slide]
\frametitle{Regeln zur Typprüfung}
\par...
...()));\end{verbatim}
\par
\bigskip
\par
(Curry-Howard-Isomorphie)
\par\end{frame}


\begin{frame}[fragile,environment=slide]
\frametitle{Ausdrücke $\to$\ Kellermasc...
...etisiertes Attribut!
\par
Beispiel: Java-Bytecode (javac, javap)
\par\end{frame}


\begin{frame}[fragile,environment=slide]
\frametitle{Dynamische Semantik}
\par
\...
...nen Wert zu,
Bsp: eine Funktion (höherer Ordnung).
\end{itemize}\par\end{frame}

\begin{frame}[fragile,environment=slide]
\frametitle{Bsp: Operationale Semantik}...
...\par
Aufgabe: übersetze \verb\vert for(A; B; C) D\vert in while!
\par\end{frame}


\begin{frame}[fragile,environment=slide]
\frametitle{Axiomatische Semantik}
\par...
... benötigt Invariante
\end{itemize}(siehe Vorlesung Verifikation)
\par\end{frame}

\begin{frame}[fragile,environment=slide]
\frametitle{Denotationale Semantik}
\pa...
...m
\par
ist eine Funktion von Argument nach Resultat
\end{itemize}\par\end{frame}

\begin{frame}[fragile,environment=slide]
\frametitle{Übungen}
\par
\begin{itemiz...
...13: istore_1
14: goto 2
17: iload_2
18: ireturn\end{verbatim}
\par\end{frame}



Johannes Waldmann 2007-01-23