- Turbo Pascal
-
Turbo Pascal ist eine integrierte Entwicklungsumgebung der Firma Borland für die Programmiersprache Pascal.
Inhaltsverzeichnis
Geschichte
Der Compiler basierte auf dem Blue Label Software Pascal Compiler, der von Anders Hejlsberg ursprünglich für das Kassetten-basierte Betriebssystem NasSys des Mikrocomputers Nascom entwickelt wurde. Dieser Compiler wurde zunächst als Compass Pascal Compiler für das Betriebssystem CP/M und dann als Turbo Pascal Compiler für MS-DOS und CP/M weiterentwickelt.
Turbo Pascal 1.0
Die erste Version von Turbo Pascal erschien im November 1983,[1] zu einer Zeit, als das Konzept der integrierten Entwicklungsumgebungen noch recht neu war. Ein Programmierer hatte zu dieser Zeit auf einem IBM-kompatiblen PC im Wesentlichen die Wahl zwischen dem mit DOS mitgelieferten Microsoft BASIC-Interpreter oder einem professionellen und teuren BASIC-, C-, Fortran- oder Pascal-Compiler (UCSD). Die Compiler waren eher umständlich zu benutzen: Mangels Multitasking unter MS-DOS bestand jeder Testlauf aus dem Verlassen, Starten und Neuladen der verschiedenen Tools (Editor, Compiler, Linker, Debugger), die für die Softwareentwicklung notwendig sind. Da die meisten PCs zu dieser Zeit keine Festplatten hatten (eine solche kostete zum damaligen Zeitpunkt 2000 US-Dollar und mehr), musste oft sogar noch mehrmals die Diskette gewechselt werden.
In diese Situation hinein kam Turbo Pascal mit dem IDE-Konzept, das die verschiedenen Tools in einem Programm vereinte. Es war zudem gerade einmal rund 60 KB groß und lief damit auf jedem damaligen PC in hoher Geschwindigkeit. Selbst auf einem PC mit nur einem Diskettenlaufwerk konnte auf Diskettenwechsel verzichtet werden, da auf der Turbo-Pascal-Diskette noch genug Platz für das gerade bearbeitete eigene Programm war. Schließlich war das System preislich selbst für Schüler und Studenten erschwinglich – mit dem Ergebnis, dass es im Laufe der 1980er Jahre auf dem PC zum Quasistandard wurde.
Folgeversionen
Ohne Turbo Pascal hätte die Sprache Pascal sicher das gleiche Schicksal ereilt wie viele an Universitäten vorher und nachher geborene „Kunstsprachen“, z. B. Prolog, Modula-2 oder Oberon (die letzten beiden auch von Niklaus Wirth), die heute praktisch verschwunden sind. Hejlsberg entwickelte die Sprache und das System pragmatisch weiter: Von Anfang an wurde die Laufzeitbibliothek um Routinen ergänzt, die Zugriff auf das System ermöglichten – ganz entgegen dem ursprünglichen Konzept von Wirth. Dabei wurde – anders als z. B. bei der Sprache C – die für Pascal typische strenge Typprüfung etc. beibehalten (beides hat Vor- und Nachteile: Eine strenge Prüfung vermindert die Gefahr ungewollten Fehlverhaltens eines Programms, macht den Quelltext aber meist länger und zwingt dazu, bewusst Funktionen zur Typumwandlung zu nutzen). Je umfangreicher ein Programmpaket wird, desto wichtiger werden solche Funktionen, weshalb auch andere Programmiersprachen z. B. C++ diese Konzepte übernommen haben.
- Version 3
Im September 1986 kam in der MS-DOS-Version Grafik dazu.[2] Dies war die letzte Version, die auch noch für CP/M erschien, allerdings ohne die Grafikmöglichkeiten (ausgenommen die Version des Schneider CPC), da die meisten CP/M-Rechner nicht grafikfähig sind. Es gab drei unterschiedliche Versionen für MS-DOS, die es ermöglichten, unterschiedlichen Code zu generieren, und zwar für emulierten Fließpunkt-Code, Coprozessor-orientierten Code, und BCD-Code. Es werden kommerzielle Programmbibliotheken angeboten, diese müssen allerdings mittels INCLUDE im Quelltext eingebunden werden.
- Version 4
Im Dezember 1987 kam das Unit-Konzept dazu, das Bibliotheken und große Projekte ermöglichte.[3] Das Einfügen von Assemblerteilen in den Quelltext wurde mit Inline-Codes unterstützt.
- Version 5
Im Oktober 1988 wurde der Debugger in die Entwicklungsumgebung integriert.[4] Damit wurde es möglich, innerhalb der IDE zu debuggen, Haltepunkte zu setzen und Variablenwerte zu beobachten.
- Version 5.5
Im Mai 1989 kam die Objektorientierung hinzu.[5]
- Version 6
Im November 1990 kam eine objektorientierte GUI-Bibliothek hinzu (Turbo Vision), ähnlich den späteren MFC für Windows.[6] Turbo Vision war für den Textmodus des PCs konzipiert, enthielt aber bereits Steuerelemente wie Fenster, Befehlsschaltflächen und Bildlaufleisten, die durch Textsymbole dargestellt wurden. Außerdem konnten (auch umfangreichere) Assemblerfunktionen in Intelsyntax direkt im Quelltext realisiert werden. Die Entwicklungsumgebung wurde entsprechend erweitert, so dass auch Assemblerteile im Einzelschrittmodus bei gleichzeitiger Kontrolle aller Flag- und Registerinhalte ausgeführt werden konnten.
- Turbo Pascal für Windows 1.0
kam parallel zu Version 6 auf den Markt. Das GUI war komplett als Windows-Anwendung ausgelegt; es wurde in Version 7 (Borland Pascal) übernommen und ausgebaut.
- Version 7
Im Oktober 1992 wurde in der professionellen Variante (Borland Pascal) die Entwicklung von Protected-Mode-Anwendungen innerhalb der IDE möglich – allerdings ohne integrierten Debugger.[7] Im April 1993 folgte noch eine nachgeschobene/fehlerbereinigte Version 7.01; dies war zugleich auch die letzte von Borland veröffentlichte Pascal-Version.
Anfang der 1990er-Jahre wurde Turbo Pascal auf Windows portiert. Dies war allerdings eine Sackgasse. Die Programmierung war unter Turbo Pascal für Windows ähnlich aufwendig wie in C – mit dem zusätzlichen Nachteil, dass Windows selbst in C programmiert ist, weshalb die Schnittstellen zwischen Windows und Pascalprogramm mindestens grundlegende C-Kenntnisse erfordern. Borland adaptierte in der Folgezeit das Rapid-Application-Development-Prinzip, das sich vorher schon bei Visual Basic von Microsoft sehr bewährt hatte: Die grafischen Elemente einer Windows-Anwendung werden mit der Maus zusammengestellt, der zugehörige Code wird automatisch erzeugt. Dieses Produkt wurde Delphi genannt, die zugrundeliegende Sprache ist Object Pascal von Borland.
- Alternativen / Weiterentwicklungen
Mit Free Pascal und GNU Pascal gibt es zwei Turbo-Pascal-kompatible freie Compiler, die für zahlreiche Betriebssysteme zur Verfügung stehen. Die Entwicklung von Virtual Pascal wurde hingegen eingestellt, obwohl es noch eine große Gemeinschaft gibt.
Ausschnitt der Anweisungen
- begin – Beginn eines Anweisungsblockes
- uses crt; – Einbinden der Bibliothek CRT(zur Textein- und -ausgabe) in den Suchpfad
- var a, b, c: string; – Variablendeklaration
- Writeln ('Text'); – Ausgabe von "Text"
- Readln (text); – Lese Eingabe und speichere diese in die Variable
text
- ClrScr; – Löscht den Bildschirminhalt. (Benötigt 'uses crt;')
- Textcolor (1); – Setzt die Textfarbe 0-15, 16-31 blinkender Text (Benötigt 'uses crt;')
- Textbackground (1); – Setzt die Hintergrundfarbe 0-15 (Benötigt 'uses crt;')
- GoToXY(X,Y); - Geht zu Bildschirmposition Spalte X/Zeile Y (Benötigt 'uses crt;')
- Sound (x); – Spielt Ton von x Hertz ab
- Delay (x); – Programmverzögerung von x ms
- Nosound; – Stoppt die Tonausgabe
- if a = 'x' then x – Bedingungsanweisung
- end; – Ende eines Anweisungsblocks
- end. – Programmende
- writeln(zahl:10:2); -Ausgabeformatierung, Ausgabe auf 10 Ziffern und 2 Nachkommastellen der Variablen
zahl
Beispiel (Hallo-Welt-Programm)
program HalloWelt; begin Writeln('Hallo Welt!'); Readln; {Wartet auf Eingabe des Benutzers, ansonsten würde das Programm sofort wieder beendet} end.
Verzweigungen
Syntax:
IF 'Bedingung' THEN {Befehl} {wenn zutrifft} ELSE {Befehl}; {wenn nicht zutrifft}
Bei mehreren Befehlen:
IF 'Bedingung' THEN BEGIN {Befehle} END ELSE BEGIN {Befehle} END;
Beispiel:
PROGRAM Bsp; USES crt; VAR alter:integer; BEGIN clrscr; writeln('Bitte geben sie Ihr Alter ein!'); readln(alter); {EINGABE} IF alter < 50 THEN write('Sie sind jünger als 50 Jahre !') ELSE write('Sie sind älter als 50 Jahre !'); readln; END.
Anhang
Literatur
- Michael Starke: Borland Pascal 7.0. Das Buch. TLC The Learning Companie 1993, ISBN 978-3893622887.
- Karl-Hermann Rollke: Das Borland Pascal 7.0 Buch. Sybex-Verlag GmbH 1995, ISBN 978-3815500712
- Reiner Schölles: Das große Buch zu Turbo und Borland PASCAL 7.0 Data Becker GmbH + Co. Kg 1994, ISBN 978-3890115887
- Irene Bauder, Jürgen Bär: Borland Pascal 7.0. Das Kompendium. Einführung. Arbeitsbuch. Nachschlagewerk. Pearson Education 1998, ISBN 978-3877914502
Weblinks
- Downloads
- bdn.borland.com/museum — Möglichkeit zum kostenlosen und legalen Herunterladen der Versionen 1.0, 3.02 und 5.5 von Turbo Pascal (nur für MS-DOS) im „Museum“ des Borland Developer Network (archivierte Version vom 6. Dezember 2003)
- www.frameworkpascal.com — Die Firma TMT bietet Turbo-Pascal-Klone für 32-Bit-Systeme an, eine abgespeckte Variante ist kostenlos.
- Online-Kurse
- www.muenster.de/~m-frost — Grundkurs für Turbo Pascal 6 und 7 mit Möglichkeit zum Herunterladen des TP 5.5-Compilers
- Pascal-Tutorial bei wirthi.at
- Wirthi's PASCAL Tutorial
- Weiteres
- Die Geschichte von Turbo Pascal / Delphi
- paswiki.de — Wiki über Turbo Pascal
- www.devq.net/pascal — Turbo Pascal Programmers Page: Informationen und Ressourcen zu Turbo Pascal
- webplain.de — Infoportal und Forum zu Turbo-Pascal und Visual Basic
- turbopascal.org — Turbo Pascal Compiler Internals: Turbo Pascal 7.0 source code
Einzelnachweise
- ↑ Borland Turbo Pascal Reference Manual (PDF), 2nd (english), Borland International Inc. 1. Februar 1984 (Zugriff am 28. September 2010)
- ↑ Borland Turbo Pascal 3.0 Reference Manual (PDF), 1st (english), Borland International Inc. 1986 (Zugriff am 28. September 2010)
- ↑ Borland Turbo Pascal 4.0 Owners Manual (PDF) (english), Borland International Inc. 1987 (Zugriff am 28. September 2010)
- ↑ Borland Turbo Pascal 5.0 User Guide (PDF) (english), Borland International Inc. 1989 (Zugriff am 28. September 2010)
- ↑ Borland Turbo Pascal 5.5 Object Oriented Programming Guide (PDF) (english), Borland International Inc. 1989 (Zugriff am 28. September 2010)
- ↑ Borland Turbo Pascal 6.0 Turbo Vision (PDF) (english), Borland International Inc. 1990 (Zugriff am 28. September 2010)
- ↑ Borland Turbo Pascal 7.0 Language Guide (PDF) (english), Borland International Inc. 1992 (Zugriff am 28. September 2010)
Kategorien:- Programmiersprache Pascal
- CP/M-Software
- DOS-Software
- Windows-Software
- Historische Software
Wikimedia Foundation.