Programmiersprachen von A bis Z: Pascal

von Gary L. Ratliff Sr. (eronstuc)

Einführung in Pascal

Die Programmiersprache Pascal ist von Nikolaus Wirth entwickelt worden. Er wurde schon erwähnt, da er noch andere Sprachen entwickelt hat, - Modula 2 und Oberon 2. Als wäre das noch nicht genug, war er auch an der Entwicklung der Sprache ALGOL beteiligt. Es gab jedoch einige Schwierigkeiten hierfür einen Compiler zu entwickeln und so blieb es eine Sprache für die formelle Festlegung von Algorithmen zur Lösung verschiedener Computerprobleme und nicht zur Entwicklung von Software.

Ich erinnere mich jedoch, dass ein ALGOL System wieder verfügbar war, als ich mit einem Kaypro und CP/M arbeitete. Damals war es möglich, für sehr wenig Geld Bibliotheken von Sound Potential und anderen Firmen zu erwerben. Benutzte man NZ und Z Systeme, dann war es möglich, die Anwendungen von einem System laufen zu lassen, in dem die Dateien in komprimierter Form auf der Festplatte lagen und nur entkomprimiert wurden, wenn die Datei gestartet wurde. Während ich die CP/M Gruppe von Intelec Network moderierte gab es eine breite Auseinandersetzung darüber, dass Borland es ablehnte, ein Turbo Pascal für das CP/M Betriebssystem zu schreiben. Ich startete also meine CDROM von Walnut Creek und führte eine Suche nach ALGOL und Pascal aus, die ergab, dass es eine oder zwei Versionen von ALGOL für dieses Betriebssystem gab und ja, es gab sehr sehr viele Systeme, die für CP/M unter Benutzung von Turbo Pascal entwickelt worden waren.

Wirth entwickelte die Spezifikationen für die Sprache Pascal in etwa zu der Zeit, zu der ich meinen ersten Kursus in der Computersprache Fortran an der Delta State belegt hatte. Die Sprache wurde der Computerwelt im gleichen Jahr vorgestellt, als ich heiratete und meinen BBA Abschluss machte. Wirth führte die Sprache 1971 ein. Sie war leicht erlernbar und wurde hauptsächlich dazu verwendet, Studenten das Programmieren zu lehren. Auf der Umschlagsrückseite eines der Lehrbücher, die ich als Quelle für diesen Artikel verwendet habe: Introduction to Pascal and Structured Design, Second Edition by Nell Dale and Chip Weems © 1987 D. C. Heath and Company steht dass: “Über eine viertel Million Studenten mit der ersten Ausgabe von Pascal in Problemlösungen und gutes Programmieren eingeführt worden sind.“

1984 erhielt Wirth den A. M. Turing Preis für „die Entwicklung einer Reihe innovativer Computersprachen: EULER, ALGOL-W, MODULA und PASCAL.“ Seit 1966 wird der Turing Preis jährlich vergeben. Er ist die höchste Ehre der Computerwissenschaften, der Nobel Preis der Rechentechnik. Seit 2007 ist dieser Preis durch die Co-Sponsoren Intel und Google mit 250.000 $ in bar dotiert. Andere Personen, die in dieser Serie erwähnt werden und die ebenfalls diesen Preis erhalten haben, waren John Backus, der ihn 1977 für Fortran erhielt und Ken Iverson, 1979 für APL.

Wie bekommt man einen Compiler und andere Werkzeuge?

Das PCLinuxOS Repository enthält verschiedene Werkzeuge, die es Ihnen ermöglichen, Software in der Sprache Pascal zu entwickeln und zu compilieren. Darüber hinaus enthalten die erwähnten Lehrdokumente Links, die es Ihnen ermöglichen, Pascal Compiler und weitere Entwicklungswerkzeuge für diese Sprache herunterzuladen. Viele davon sind nur speziell für Windows geeignet. Ich bin allerdings der Meinung, dass mit großer Wahrscheinlichkeit auf Ihrem Rechner auch Windows installiert ist (oder dass Sie auf einen Computer zugreifen können, der mit Windows läuft), warum also nicht noch ein Stück weitergehen und diesen Teil Ihres Computers dazu benutzen, Ihre Programmierkenntnisse- und Fähigkeiten weiter zu entwickeln.

Die Werkzeuge erhält man durch Anwendung des Synaptic Paketmanagers. Wie üblich benötigen Sie Root-Rechte, um die Installation durchführen zu können.

Folgende Systeme werden wir jetzt aus den Repositories installieren: FPC (den freien Pascal Compiler), Lazarus (ein grafisches IDE für die Entwicklung von freiem Pascal Code) und den gtk Editor scite. Dieser Editor hilft dabei, schon bei der Eingabe die Syntax von Pascal Code richtig einzurücken und farblich zu kennzeichnen. Dieser Editor stellt diese Fähigkeiten nicht nur für diese Sprache zur Verfügung, sondern für eine Vielfalt von Computersprachen und Shell Programmiersprachen.

Lernprogramme: Es gibt Lernprogramme

Es gibt eine große Anzahl von Lernprogrammen. Man findet sie, indem man Pascal Tutorial im Suchfenster des Firefox Webbowsers eingibt. Deswegen geben wir hier nur eine Reihe von Schnappschüssen der besten Lernprogramme wieder, die man auf Webseiten im Internet findet:

pic

Die oben dargestellte Seite zeigt Links zu mehreren Lernprogrammen, die einem dabei helfen mit der Computersprache Pascal zu programmieren. Die Version der Sprache, die als der Königsweg angesehen wird, ist der Turbo Pascal Compiler von Borland. An dieser versucht sich der freie Pascal Compiler so eng wie möglich zu orientieren.

pic

Wie man sehen kann zielt diese Seite darauf ab, Ihnen das Programmieren in Turbo Pascal beizubringen. Es wird angeboten, dass Sie die neueste Version herunterladen können, die von Borland zur Freeware erklärt wurde. Dabei handelt es sich aber um eine Zipdatei, die erwartet in ein Verzeichnis 'My Documents' unter Windows heruntergeladen zu werden. Dort möchte sie aber die install.exe Datei nicht haben. Verschieben Sie sie also zunächst in das Wurzelverzeichnis und lassen Sie install dort das Verzeichnis TP erstellen. Man startet es, indem man eine Kommandozeile in Windows öffnet, dort ins Wurzelverzeichnis wechselt und dann TP eingibt.

pic

Die obige Seite zeigt, dass Free Pascal und Pascalite abgedeckt werden. Es war mir möglich, dieses herunterzuladen, später jedoch erzeugten weitere Versuche, diese Seite zu studieren, Fehler 404 (Seite nicht gefunden).

pic

Dies hier ist ein ausgezeichnetes Lernprogramm. Es setzt keinerlei Vorkenntnisse voraus und man versteht alles sehr leicht.

pic

Wie Sie sehen gibt es für Sie eine Fülle von Quellen, aus denen Sie schöpfen können, um die Sprache zu erlernen. Jetzt haben wir also den Free Pascal Compiler auf unserem System. Im Folgenden sehen wir ein Codebeispiel aus dem Text, den ich zusammen mit einigem Lob für die Leute bei freepascal.org verwendet habe. Das Buch, das ich verwendet habe wurde verfasst, bevor ziemlich umfangreiche Änderungen vorgenommen wurden. Solange ich also nicht versuchte, die Textdateien zu verwenden, funktionierte das Compilieren, oder ich erhielt einige Tippfehlermeldungen und versuchte es erneut. Aber selbst, wenn das Programm perfekt eingetippt wird, funktioniert das Compilieren, aber es wird Fehler 102 angezeigt, wenn man versucht, es auszuführen. Ich habe also mein Problem an michael@freepascal.org gemailt und erhielt innerhalb weniger Stunden eine Antwort mit Lösung.

Die Dateien, die zuerst als Text verwendet werden erfordern zunächst ein 'assign' und sie müssen auch noch geschlossen werden, bevor das Programm beendet wird. Hier ist ein Beispiel, das über den scite Editor gesichert wurde. Es zeigt auch das Einziehen und die Farbcodierung der Pascal Syntax.

pic

So, mit diesen von Michael Van Canneyt zur Verfügung gestellten Berichtigungen wurde das Programm compiliert und die Daten wurden mit Hilfe des Befehls less outmpg gespeichert, damit sie aus der Datei outmpg eingelesen werden konnten. Dies weist schon darauf hin, dass die Leute von der free Pascal (Web)Seite sehr hilfsbereit sind. Darüber hinaus können Sie, wenn Sie diese Seite besuchen, die vollständige Dokumentation zum Free Pascal Compiler im pdf Format herunterladen. Klicken Sie einfach auf den Link zur Dokumentation.

Manche Leute meinen, dass Pascal überholt ist. Michael hat mir aber in seiner e-mail versichert, dass er es dazu verwendet, um Spiele zu programmieren, Datenbanken und andere größere Projekte einzurichten und dass es lebt und wohlauf ist. Einige objektorientierte Eigenschaften sind auch noch hinzugekommen. Ich hoffe, dass Sie dies ermutigt, Programmieren mit Pascal Ihrem Arsenal beizufügen.

Pascal und strukturiertes Programmieren

(Zusatz von Patrick G Horneker)

Pascal war immer eine Sprache, mit deren Hilfe strukturiertes Programmieren und andere gute Programmierpraktiken gelehrt wurden. Zu den ersten Dingen, zu denen Pascal Programmierer gezwungen werden gehört es, über die Konstruktion des Programmes nachzudenken. Insbesondere sollte das Programm von oben nach unten durch konstruiert sein, wobei oben das primäre Ziel dessen, was das Programm bewirken soll bedeutet. Wenn das Programm dann mal in verschiedene Teilschritte unterteilt ist, dann werden diese wieder in kleinere Schritte aufgespalten solange, bis man die kleinsten Details erreicht hat.

In Standard (ISO) Pascal geschriebene Programme haben nur einen Eingang und nur einen Ausgang. Dieses Grundkonzept gilt, egal ob Sie den Hauptabschnitt des Programms implementieren oder eine Unterroutine für den Zugriff auf eine Datei auf einer Festplatte.

Ein Vorteil bei der Verwendung von Pascal für Anwendungen ist, dass die 'von oben nach unten' Struktur und das strukturierte Programmieren zu Software führt, die verlässlich und deren Qualität kontrollierbar ist.

Wenn Sie nur ISO Pascal für Ihre DOS Anwendungen verwendet haben, dann besteht vielleicht die Möglichkeit, dass Sie Ihre Anwendungen mit sehr geringem Aufwand nach PCLinuxOS portieren können (das hängt davon ab, ob Ihre Anwendungen im Textmodus vorliegen, oder ob sie Anbindungen an Gtk, Qt oder ein anderes grafisches Schnittstellenwerkzeug verwenden). Windows Anwendungen in dieser Sprache jedenfalls erfordern einige Arbeit, speziell was das Umschreiben von Subroutinen angeht, die windowsspezifische Funktionen aufrufen, in Routinen, die Funktionen von X, Gtk, Qt oder was auch immer Sie als grafisches Werkzeug für Free Pascal verwenden aufrufen.