Programmierparadigma Ergänzende Kapitel Hypertext-Version Das Schichtenmodell © APSIS GmbH

1.1.6. Programmiersprachen

Programmieren ist Kommunikation: Der Mensch vermittelt dem Rechner, was er zu tun hat. Ein Werkzeug der Kommunikation ist die Sprache. Sie ist ursprünglich entstanden, um die Kommunikation zwischen zwei Menschen zu erleichtern. Diese sind die natürlichen Sprachen. Ein ähnliches Werkzeug wurde entwickelt, um die Kommunikation von Mensch zu Maschine zu erleichtern, die Programmiersprachen.

Im Laufe der letzten fünfzig Jahre entstanden unzählige Programmiersprachen. Einige von ihnen sind mehr verbreitet als andere. Manche sind für Spezialaufgaben (Robotersteuerung, Druckereibetrieb u.ä.) entwickelt worden, andere sind generell einsetzbar; diese sind Universalsprachen. Sie sind einander teilweise ähnlich, zeigen aber auch deutliche Unterschiede auf.

Hier folgt eine Übersicht zur Genealogie der - nach Meinung der Autoren - wichtigsten Programmiersprachen:

Genealogie von Programmiersprachen

Abb: Genealogie von Programmiersprachen

Die wesentlichen konzeptuelle Neuerungen in diesem Stammbaum, die auch in diesem Lehrbuch behandelt werden, sind folgende:

  • Fortran und Cobol sind die ersten höheren, maschinenunabhängigen Sprachen.
  • Algol-60 hat das Blockkonzept und den Systemstapel (stack) eingeführt.
  • In Simula-67 erscheint die Klasse, die Idee zum objektorientierten Programmieren.
  • Diese wurde in Smalltalk konsequent ausgearbeitet.
  • Die beiden sehr frühen Sprachen LISP und Prolog erleben heute eine Renessaince in der künstlichen Intelligenz.
  • Algol-68 hat zwar nie praktische Bedeutung erlangt, ist aber der Prototyp für wissenschaftliche Sprachentwicklung.
  • In Pascal wurde ein konsequentes, durchgängiges Typenkonzept verwirklicht.
  • Modula-2 führt konsequente Modularisierungselemente ein.
  • C++ ergänzt C mit objektorientierten Fähigkeiten, integriert aber ihre veralteten Sprachelemente.
  • Eiffel realisiert zur Zeit das objektorientierte Programmierparadigma am saubersten.
  • Ada ist eine auf theoretischen Grundlagen entwickelte, in der Praxis verbreitete Sprache.
  • Ada95 führt objektorientierte Konzepte sehr differenziert ein.
  • Oberon ist (wie ihre Vorgängerinnen Pascal und Modula) eine sehr kompakte Sprache, entwickelt mit wenig Aufwand.
  • C++ bietet sehr viele und flexible Sprachelemente für OOP an.
  • C++ behandelt ab Version 4 die Ausnahmen.
  • Java setzt auf die Popularität von C++, wirft aber den vielen Ballast von C ab.

  • Programmierparadigma Ergänzende Kapitel Hypertext-Version Das Schichtenmodell © APSIS GmbH