ATARI ST
Einführung in CAD
Liesert - Linden
Data Becker Buch mit Diskette
Preis: DM 69,-
CAD: Drei Buchstaben, die die Computerwelt derzeit in Atem halten. Noch vor wenigen Monaten hörte ich von dem Vertreter einer Firma der mittleren Datentechnik die Bemerkung, daß man sich über CAD-Systeme unter 50.000,- DM wohl nicht zu unterhalten brauche. Wenn man die Leistungsfähigkeit professioneller CAD-Systeme betrachtet, mag der Mann wohl recht gehabt haben, aber was sich derzeit für den Atari-ST-Computer auf diesem Gebiet tut, ist auch nicht von Pappe.
In dieser Situation weckt ein Buch mit diesem Titel natürlich großes Interesse. Man denkt vielleicht eher an eine grundlegende theoretische Einführung, aber genau das ist falsch. Auf 24 Seiten wird der Begriff CAD erläutert. Das reicht gerade für eine Erläuterung von der Bedeutung der drei Buchstaben, und worin sich ein CAD-System von einem Malprogramm a la DEGAS unterscheidet. Der Rest des Buches (265 Seiten) ist die Beschreibung eines einfachen CAD-Programms, das in GFA-Basic geschrieben ist und auf der Diskette geliefert wird, als Source Code, versteht sich. Die Beschreibung beginnt dann aber mit den notwendigen mathematischen Grundlagen der Vektorrechnung (ernsthaft interessierte Leser nehmen vielleicht doch einmal ein Schullehrbuch über Vektorrechnung in die Hand?) und geht dann schnell zur Anwendung auf CAD-Objekte und deren Manipulation über. Notfalls lassen sich auch diese 25 Seiten noch zum Bereich der Einführung zählen. Ab jetzt aber haben die GFA-Basic-„Freaks“ das Wort und behalten es bis zum Schluß. Es werden alle benötigten Grundfunktionen des CAD-Programms konkret anhand des GFA-Basic-Codes erläutert. Das hat für den , Anfänger natürlich den Vorteil, daß er ohne große theoretische Vorkenntnisse direkt mit der Nase auf das Problem gestubst wird und die Lösung anhand des Codes nach vollziehen kann. Getrübt wird das praxisnahe Konzept durch die Tatsache, daß die erläuternden Texte sehr allgemein gehalten sind und selten den konkreten Lösungsweg des Listings erläutern. Das Listing erhält man somit gleich zweimal; einmal im Buch und einmal auf Diskette.
Vielleicht hat der Vortrag ja an die Anfänger gedacht, die noch keinen Drucker oder GFA-Basic besitzen, jedenfalls werden im Buch etliche Seiten mit dem Listing gefüllt das auf der Diskette ebenfalls vorhanden ist. Das Programm selbst ist ein einfaches, aber funktionstüchtiges CAD-Programm, dessen Bedienung nach etwas Eingewöhnung keine Probleme bereitet. Es ist bei Fehlbedienung nicht ganz „wasserdicht“, aber das ist bei einem experimentellen System nicht ganz so wichtig. Das Programm bietet halbautomatische Bemaßung, eine Auflösung von 1/10 mm, bis zu 10 Ebenen, Zeichnungen bis DIN A3, die Verwendung von Symbolen und Varianten und die Ausgabe auf einem Matrixdrucker.
Wer GFA-Basic besitzt, kann dem Listing jedenfalls viele Anregungen für eigene Programmierarbeit entnehmen. Für Liebhaber anderer Sprachen wird das Listing nicht so effektiv sein. Die grundlegenden Techniken sind aber natürlich übertragbar. Die im Anhang A gegebene Kurzanleitung ist recht hilfsreich. Für eigene Erweiterungen, zu denen das Buch ausdrücklich anregt, ist die im Anhang B abgedruckte Variablenliste sehr nützlich. Anhang C enthält ein Prozedurenverzeichnis, dessen Nützlichkeit darunter leidet, daß die Verfasser viele Prozeduren mit dem vielsagenden Namen AKTION, gefolgt von einer Nummer, verwendet haben. Und was bitte verbirgt sich hinter Prozedur AKTION27? Das darf man dann im Listing suchen, denn dort allein ist der Zweck einer Aktion kommentiert. Die alphabetische Ordnung wurde außerdem offensichtlich von einem dummen Sortierprogramm erledigt, denn auf AKTIONl folgt AK-TION10 und auf AKTION19 folgt AKTION2. Wie gesagt, ist das Programm in GFA-Basic geschrieben und damit auf diesen Interpreter festgelegt.
Da aber GFA-Basic nicht zur Standardsoftware des ST gehört, wäre es zumindest sinnvoll gewesen, den Run-Only-Interpreter beizulegen.
Ein Leser ohne GFA-Basic ist jedenfalls nicht in der Lage, das Gelesene zu erproben, es sei denn, er hat aus der PD der ST-Computer eine Run-Only-Interpreter-Version (was wohl im allgemeinen der Fall sein wird). Wollte man hier etwa Lizenzgebühren sparen? Jedenfalls muß in aller Deutlichkeit gesagt werden, daß dieses Buch für Leser ohne Zugang zum GFA-Basic wenig wertvoll ist da das GFA-Basic weder mit dem Standard Atari Basic noch mit dem von Microsoft-Basic kompatibel ist.
Zumindest hätte eine compilierte Version des Programms auch den Lesern, die noch keinen GFA-Basic-Interpreter ihr eigen nennen können, das Mitlesen erleichtert. Grundsätzlich ist Lernen am Beispiel zu begrüßen. Aber die Aussage heißt Lernen am Beispiel, nicht Beispiel und Lernen. Es wäre gut, die Erläuterung des Programms zu vertiefen und dafür das* Listing zu kürzen, da man es ja doch auf Diskette hat. Und ohne GFA-Basic-Interpreter, den man ja zum Lesen des Source Codes braucht, kann man nicht viel mit dem Buch anfangen. Aber wo sonst bekommt man den Quellcode für ein funktionsfähiges CAD-Programm für 69 Mark?
LISP auf PCs
Methoden und Techniken der symbolischen Datenverarbeitung.
F. Haugg, S. Omlor.
Carl Hanser Verlag,
München und Wien, 1987.
DM 48,-
Mit zunehmender Rechnerleistung im Bereich der PCs rückt das Stichwort KI (Künstliche Intelligenz) immer mehr in den Vordergrund. Gerade als Leser der Zeitschrift ST bekommt man hierzu ja auch etwas geboten. Folglich wächst das Interesse an Literatur zu Sprachen und Anwendungen aus diesem Bereich. War der Einsteiger bisher auf englischsprachige Literatur angewiesen, so sind im Verlauf des letzten Jahres einige interessante deutschsprachige Neuerscheinungen auf den Markt gekommen. Brandneu (das Vorwort der Autoren datiert vom Januar 1987) ist das oben genannte Buch, das sich mit der Sprache LISP beschäftigt, deren Public-Domain-Version ja schon viele Anhänger gefunden hat.
Der Titel deutet es bereits an: Die Zielgruppe der Autoren ist der PC-Benutzer. Für den PC gibt es eine ganze Reihe kommerzieller LISP-Versionen. Die im Buch erläuterte Syntax bezieht sich auf MuLISP der Firma Microsoft. Erfreulicherweise orientiert sich MuLISP wie auch XLISP und LISPAS am COMMON-LISP-Standard, so daß der Leser des Buches die verwendeten Programme in weiten Teilen auf den LISP-Versionen für den ST übernehmen kann. Hardwareabhängige Programme habe ich erwartungsgemäß nicht gefunden.
Das Buch ist mit einem Umfang von 228 Seiten kein Lehrbuch, das der Lernende als alleinige Informationsquelle in Sachen LISP betrachten wird. Vielmehr ist es als Einsteigerbuch gedacht, also für Leute, die bereits Erfahrung mit herkömmlichen Sprachen wie BASIC, PASCAL oder C haben. Erstaunlicherweise beginnt das Buch aber nicht mit einem einführenden Kapitel über LISP. Völlig verblüfft nimmt der Leser die Vorteile von PROLOG in sich auf! Ein Fehldruck? Nein! Bei diesem Buch handelt es sich um den ersten Band einer Serie über Sprachen der KI, mit dem die Autoren dem Leser wohl schon vorab neugierig machen und ihre Aktualität beweisen wollten. Dann erst kommt der erwartete Überblick über die historische Entwicklung von LISP als Symbolmanipulationssprache. In diesem ersten Kapitel findet man auch eine kurze, aber einprägsame Übersicht über die verschiedenen Programmierstile. Erst im zweiten Kapitel geht es langsam los mit LISP. Die Autoren beschränken sich auf die elementaren Listenoperationen und die Erläuterung von Rekursion und Iteration. Dadurch strotzt das Buch zwar nicht von Themenmannigfaltigkeit, bringt aber dem angepeilten Interessentenkreis von LISP-Anfängern die notwendige Konzentration auf das Wesentliche in aller Ausführlichkeit. Störend wirkt in diesem Kapitel nur an einigen Stellen die Erläuterung des MUSTAR-Editors für MuLISP, mit dem der ST-Benutzer natürlich nichts anfangen kann. Das dritte Kapitel schließlich bringt einige größere Anwendungen auf dem PC in LISP programmiert. Die Beispiele Sortieren und Texttaschenrechner sind für den Anfänger ganz lehrreich. Richtig interessant sind aber die beiden nun folgenden Themen: Graphen als Listen und ein Interpreter für Structured Analysis Modelte. Umso enttäuschender ist deshalb auch die nur unvollständige Dokumentation des Source Codes für den SA-Interpreter. Das Thema Graphen als Listen ist in LISP auch deshalb interessant, weil dieses Thema sich in PROLOG besonders einfach gestaltet.
Fazit: Das Buch ist interessant geschrieben und konzentriert sich auf die für Anfänger interessanten Fragen beim Einstieg in die Sprache LISP. Das dritte Kapitel hat allerdings auch fortgeschrittenen LISP-Programmierern etwas zu bieten. Ergänzt wird der Band durch ein etwas knapp geratenes Literaturverzeichnis und eine Tabelle der MuLISP Funktionen, leider ohne Kurzbeschreibung. Das abschließende Stichwortverzeichnis ermöglicht schnelles Auffinden gesuchter Begriffe. Man darf auf den zweiten Band über PROLOG gespannt sein.
(Dr. K. Sarnow)