Turbo Pascal 7 – mein Einstieg in die Programmierung

OK, zugegeben. Eigentlich war mein echter Einstieg in die Programmierung QBasic, ein Basic-Interpreter, der ab MS-DOS 5.0 mitgeliefert wurde. Aber viel gemacht habe ich nicht in QBasic. Viel mehr habe ich die beiliegenden Demo-Programme ausprobiert und leicht modifiziert. So richtig loslegelegt habe ich erst mit der Veröffentlichung von Turbo Pascal 7 durch die Firma Borland (inzwischen Firma OpenText) und ich war sofort begeistert. Denn Turbo Pascal machte einiges anders.

Turbo Pascal 7 verfügte z.B. über einen eingebauten Compiler, der es ermöglichte, den Code direkt in der IDE (Entwicklungsumgebung) zu kompilieren und auszuführen, eine damals bahnbrechende Neuerung. Vorher schrieb man den Code in einer Anwendung (Editor) und kompilierte anschließend die Anwendung auf der Eingabeebene. Die Implementierung von Prozeduren und Funktionen, der Umgang mit Strings und das Arbeiten mit Dateien – all diese Fähigkeiten waren in Turbo Pascal 7 einfach und intuitiv zu handhaben.

Jetzt legen wir aber los. Ein einfacher Beispielcode in Turbo Pascal 7 sieht so aus:

program HelloWorld;
begin
  writeln('Hallo, Welt!');
  readln;
end.

Diese wenigen Zeilen von Code geben den Text ‘Hallo, Welt!’ auf dem Bildschirm aus und warten dann auf eine Benutzereingabe. Die Syntax ist klar und leicht zu verstehen, auch wenn man keine vorherige Programmiererfahrung hat.

Die Ausgabe Hello World von Turbo Pascal 7
die recht unspektakuläre Ausgabe unseres “Hello World” Beispiels

Funktionen bringen Struktur in den Code

Hier noch ein weiteres Beispiel, das den Benutzer nach zwei Zahlen fragt und dann ihren größten gemeinsamen Teiler zurückgibt, indem es die euklidische Methode zur Berechnung des GGTs verwendet. Dabei verwenden wir eine Funktion, die im Hauptteil des Programmes aufgerufen wird. Der Hauptteil des Programmes befindet sich zwischen begin und end. In C wäre das gleichzusetzen mit main

program GGT;

function ggt(a, b: integer): integer;
// hier beginnt die Funktion, nicht der Hauptteil!
begin
  if b = 0 then
    ggt := a
  else
    ggt := ggt(b, a mod b);
end;
var
  x, y: integer;

// hier beginnt der Hauptteil
begin 
  write('Geben Sie zwei Zahlen ein: ');
  readln(x, y);
  writeln('Der GGT von ', x, ' und ', y, ' ist ', ggt(x, y));
  readln;
end.

Turbo Pascal 7 war auch eine der ersten Programmiersprachen, die eine grafische Benutzeroberfläche (GUI) zur Verfügung stellte, was die Entwicklung von Anwendungen erheblich erleichterte. Man konnte Fenster und Dialogfelder entwerfen, ohne sich direkt mit der Hardware oder dem Betriebssystem auseinanderzusetzen. Diese beiden Aspekte sind nämlich oft kompliziert und erfordern eine tiefgreifende Kenntnis von Systemarchitekturen und Hardware.

Koch Media Retro Games TheC64 Mini*
  • Der offiziell lizenzierte Nachbau des beliebten C64, misst gerade mal die Hälfte der Größe des…

Letzte Aktualisierung am 17.04.2024 / Affiliate Links / Bilder von der Amazon Product Advertising API

Wir erstellen eine Benutzeroberfläche

Natürlich sind Benutzeroberflächen unter aktuellen Betriebssystemen wie Windows, Linux und MacOS deutlich schöner. Aber für damalige Verhältnisse war es überragend, was dieser Code darstellen konnte.

program HelloWorld;
uses MsgBox, StdDlg, Objects, Drivers, Views, Menus, Dialogs, App;

type
  THelloWorldApp = object(TApplication)
    procedure InitMenuBar; virtual;
    procedure HandleEvent(var Event: TEvent); virtual;
  end;

procedure THelloWorldApp.InitMenuBar;
var
  R: TRect;
begin
  GetExtent(R);
  R.B.Y := R.A.Y + 1;
  MenuBar := New(PMenuBar, Init(R, NewMenu(
    NewSubMenu('~H~ello', hcNoContext, NewMenu(
      NewItem('~W~orld', '', kbNoKey, cmYes, hcNoContext,
      nil)), nil))));
end;

procedure THelloWorldApp.HandleEvent(var Event: TEvent);
begin
  TApplication.HandleEvent(Event);
  if Event.What = evCommand then
  begin
    case Event.Command of
      cmYes: MessageBox('Hello, World!', nil, mfInformation or mfOKButton);
    else
      Exit;
    end;
    ClearEvent(Event);
  end;
end;

var
  HelloWorldApp: THelloWorldApp;

begin
  HelloWorldApp.Init;
  HelloWorldApp.Run;
  HelloWorldApp.Done;
end.
Beispiel einer DOS-UI mit Turbo Pascal 7
mit so einer DOS-UI konnte man schon einiges anfangen

Was Pascal kann, kann Delphi schon lange

Nachdem die Firma Borland mit Turbo Pascal die Möglichkeiten der strukturierten Programmierung demonstriert hatte, strebte das Unternehmen danach, den nächsten Schritt zu gehen und eine Umgebung für die objektorientierte Programmierung zu schaffen.

Delphi, das ursprünglich 1995 veröffentlicht wurde, baute auf den Stärken von Turbo Pascal auf und fügte Unterstützung für objektorientierte Programmierung, eine verbesserte grafische Benutzeroberfläche und eine Vielzahl anderer Funktionen hinzu. Gleichzeitig behielt es die schnelle Kompilierungszeit und den effizienten Code, die Turbo Pascal bekannt gemacht hatten.

Turbo Pascal war bekannt für seine kostengünstige Lizenzierung. Als es ursprünglich auf den Markt kam, kostete Turbo Pascal in der Regel weniger als 50 US-Dollar, was es im Vergleich zu anderen Entwicklungsumgebungen der Zeit sehr günstig war.

Makeblock mBot 2 Programmierbarer Roboter Kompatibel mit…*
  • 【Makeblock mBot 2】 Als MINT-Spielzeug mBot 2drei Stufen: Bauen, Kognition und Kreation. Dieser…
  • 【Mehr Funktionen, mehr Spaß】 Neben den Grundfunktionen wie Linienverfolgung,…

Letzte Aktualisierung am 16.04.2024 / Affiliate Links / Bilder von der Amazon Product Advertising API

einfach mal ausprobieren

Da Turbo Pascal inzwischen in sämtlichen Versionen Freeware ist, könnt ihr es euch im Internet Archive herunterladen. Einen Support durch die Firma Borland, die es so in der Form gar nicht mehr gibt, erhaltet ihr natürlich nicht mehr.

https://archive.org/details/turbopascal7.0

Zusätzlich benötigt ihr DOSBox, einen Emulator, der alte DOS-Programme unter aktuellen Betriebssystemen lauffähig macht.

https://www.dosbox.com/

Ähnliche Beiträge

Beitrag teilen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Cookie Consent Banner von Real Cookie Banner