\begin{slide}{Objekte, Methoden}

Motivation: Objekt $=$ Daten $+$ Verhalten.

Einfachste Implementierung: 
\begin{itemize} \parskip 0pt
\item Objekt ist Record,
\item  einige Komponenten sind Unterprogramme.
\end{itemize}

\begin{verbatim}
typedef struct {
   int x; int y; // Daten
   void (*print) (FILE *fp); // Verhalten
} point;
point *p; ... ; (*(p->print))(stdout);
\end{verbatim}

Anwendung: Datei-Objekte in UNIX (seit 1970)

(Merksatz 1: all the world is a file) (Merksatz 2: 
those who do not know UNIX are doomed
to re-invent it, poorly)

\end{slide}


