D A U S T O R I E S Elegantes Programmieren: AutoCAD Extperten kennen die Programmiersprach LISP (Lots of Insame ans Stupid Paranthesis). Für 'wahr' und 'falsch' werden hier T(True) und Nil(Not in list) verwendet. Um einer Applikation das zyklische zwischenspeichern einer Zeichnung beizubringen habe ich eine kleine Routine geschrieben bei der die Zeit in einer Variable gespeichert wurde. Für den Namen (Time) verwendete ich das große "T". Ihr könnt euch sicher vorstellen was passiert, wenn wahr falsch ist. Der DAP ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * Ein Benutzer beschwert sich, dass sein Programm staendig abstuerzt. Debuggen etc. bringt kein Ergebnis. Schliesslich des Raetsels Loesung: der gute Mann schrieb Zwischenergebnisse in eine Datei in sein Homedirectory. Er startete das Programm auf mehreren Rechnern, die alle auf DASSELBE File ihre Zwischenergebnisse reinschrieben und wieder rauslasen...... * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * Spontan faellt mir da mein erstes (BASIC ...iiick) Spielchen ein, dass das ich meinte, besonders narrensicher gebaut zu haben. Also holte ich mir eine voellig computer-unvorbelastete Bekannte an die Kiste und sagte: "Mach mal!" -- Klappte auch alles ganz hervorragend, bis zu dem Punkt, als auf dem Bildschirm erschien: "Press any key to continue..." Sie streckte die Hand aus, kreiste mit dem Zeigefinger ueber der Tastatur, suchte, suchte ... und fand die SHIFT - Taste... -- "Und jetzt?" * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * Ein Programmierkurs in einer inzwischen ausgestorbenen Programmiersprache PS440. Es duerfte in C aber nachvollziehbar sein, deshalb geht's hier in C weiter. Ein Teilnehmer kommt zu einem Bremser: "Mein Programm laeuft nicht." Hm, das sind uns die liebsten. Also erst mal die Standard Fragen: Wie, geht nicht? Keine Fehlermeldung? Wie weit kommt es? (Debugger gab's keine) Nachdem diese Sachen geklaert sind erbarmt sich der Bremser und kuckt sich das Programmlisting an. Igitt, lauter Abfragen "if (blabla == TRUE)". Alles scheint aber soweit klar zu sein. Also ans Terminal, nachgekuckt, ob die Version im Rechner nicht vielleicht eine andere als die ausgedruckte ist. Noe, alles klar. Programm uebersetzt, gebunden, gestartet. Boing. Absturz. Gruebel, gruebel. Was macht denn das Programm? Es dauert einige Zeit, bis man den wirren Programmfluss versteht. Aber dann, .. ne, es muesste eigentlich in diesen Programmteil verzweigt werden, dagegen kann man am Verhalten des Programms deutlich sehen, dass der andere Teil der if Abfrage genommen wird. Hm, ungeheuerlicher Verdacht. Nachkucken. TATSAECHLICH. Der Typ hat doch tatsaechlich TRUE zu 0 und FALSE zu 1 definiert! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * Dann gibt's noch besonders bloede User: "Wie krieg ich denn hier die Grossbuchstaben?" * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *