\section*{Liebe Leser,}
{\parskip1.5pt
\parpic[r]{\includegraphics{ulli}} 

hier ist es schon, das dritte Heft dieses Jahres.
Ich freue mich wiederum, eine schöne Mischung aus Hardware--nahen und high--level--Artikeln präsentieren zu können.

Manfred Mahlow zeigt uns in diesem Heft, wie er seine
Forth--GTK+--Anbindung für ein Anzeigeprogramm der vordefinierten
graphischen GTK--Objekte (\emph{Stock--Objekte}\/) einsetzt.  Das
erleichtert den Umgang mit den Stock--Objekten ungemein.

Für seine CSP--Technik (Context Switching Prelude) benötigt Manfred einen leicht modifizierten Forth--Outer--Interpreter, der bei \texttt{prelude}--Worten eben auch ihre \texttt{prelude}--Aktion ausführt. Auch \texttt{create} (und jedes andere definierende Wort) muss in der Lage sein, die \texttt{prelude}--Aktion dem neu definierten Wort zuzuordnen. Um nicht jedes Forth--System, auf dem CSP zu Einsatz kommen soll, eigens anpassen zu müssen, macht es Sinn, über sogenannte \emph{Hooks} nachzudenken. Das sind ganz bestimmte  Stellen im Forth--System, die zunächst offengelassen sind, an denen Erweiterungen aber Spezial--Funktionalität einhängen können. Häufig werden solche Hooks durch \texttt{Defer}ed--Worte realisiert. Zum Beispiel versucht der Forth--Outer--Interpreter, nachdem er ein Token erfolglos im Dictionary gesucht hat, es in eine Zahl umzuwandeln. Ist auch dies erfolglos, so gibt er eine Fehlermeldung aus (\emph{xlerb?}). An dieser Stelle
könnte nun der \texttt{notfound}--Hook stehen, der im Standardfall die Meldung ausgibt (\texttt{complain}). 

 Eine Erweiterung, die beispielsweise hexadezimale Zahlen mit einem führenden \texttt{\$} erkennt, würde nun  zusätzlich analysieren, ob das Token die
Form \texttt{\$}xx besitzt, und die entsprechende Zahl erzeugen. Diese Funktionalität würde dann im \texttt{notfound}--Hook verankert werden und das Forth--System wäre auf elegante Weise erweitert worden.

Auch Target-- und Meta--Compiler können von passenden Hooks profitieren.

Für die CSP--Technik benötigt man zwei Hooks, einen \texttt{prolog}--Hook, der im Outer--Interpreter nach dem erfolgreichen Suchen des Tokens im Dictionary aufgerufen wird, und eben einen weiteren Hook in \texttt{create} nach dem Lesen des neu zu definierenden Wortnamens und vor dem Anlegen des Headers. 

Eine Diskussion über das Für und Wider von Hooks fände ich sehr spannend.
Vielleicht hast Du ja dazu auch eine Meinung? Über einen Leserbrief würden wir uns sehr freuen.

Was gibt es noch in diesem Heft zu lesen? Nun, Fred Behringer zeigt uns, wie man mit Forth--Mitteln erfolgreich auf den Bootsektor und die Partitionstabelle von PCs zugreift. Wolfgang Allinger verrät uns das Geheimnis, wie Hardware--Seriennummern auf Basis des DS2401 die Firmware schützen können,
und in gleich zwei Grundlagenartikeln erklärt uns Michael Kalus, wie in ANS--Forth \texttt{catch} und \texttt{throw} funktionieren und wie Gforth Zeitmessungen erlaubt.

Ich wünsche uns allen einen schönen Herbst, viel Spaß beim Lesen und viel Erfolg beim Experimentieren.

\hspace*{\fill}Ulrich Hoffmann