Programmiersprache/Entwicklung der Programmiersprachen

Aus ZUM-Unterrichten

Entwicklung der Programmiersprachen

Was findet ihr auf dieser Seite?

  1. Die Anfänge des Programmierens
  2. Die ersten Computer und ihre Instruktionen
  3. Die ersten höheren Programmiersprachen
  4. Objektorientierung
  5. Programmiersprachen in der Welt von heute

Die Anfänge des Programmierens

In der Zeit bevor es Computer gab, konnten die Menschen nicht anders als jeden Handgriff und jeden Arbeitsschritt selber zu machen. Um repetitive Aufgaben nicht immer wiederholen zu müssen, erfand man schon in der industriellen Revolution Maschinen. Diese Maschinen nahmen den Menschen viele Arbeiten vor allem im handwerklichen Bereich ab. So gab es z.B. auch Webstühle, die schon ein einfaches Muster in den Stoff weben konnten. Joseph-Marie Jacquard war ein französischer Erfinder, der versuchte die Musterwebtechnik zu mechanisieren, sodass diese nicht mehr durch Menschen auszuführen sei. 1804 erfand Jacquard letztendlich den ersten programmierbaren Webstuhl. Dieser Webstuhl konnte nun auch kompliziertere Muster durch seine Programmierung weben. Alle Informationen inklusive der Programmierung, die der Webstuhl brauchte, waren auf Lochkarten geschrieben, welche man in den Webstuhl steckte.

Lochstreifen mit Text

Aber nicht nur im handwerklichen Bereich schritt die Programmierung voran. Ein paar Jahre später heiratete Ada Lovelace William King. Dieser unterstützte, förderte sie und ermöglichte ihr Zugang zu Wissen in Form von Bibliotheken, die sie vorher nie hatte. Denn Frauen hatten im 19. Jahrhundert noch kein Zutritt zu jeglicher Form von Bildung. Lovelace’s Ehemann ging in Bibliotheken und schrieb für sie Artikel ab. Da Lovelace und ihr Mann in der Royal Society verkehrten, dauerte es nicht lang bis sie von dem Plan von Charles Babbage erfuhr. Babbage’s Plan war es, eine Rechenmaschine zu bauen, die heute als Vorläufer des Computers gilt. Lovelace war fasziniert und übersetzte einen Artikel über Babbage’s „Analytical Machine“. Diese Maschine wurde 1837 von Babbage veröffentlicht und war eine Differenzmaschine für die Lösung polynominaler Funktionen. Danach fing sie an, an einem Algorithmus zu arbeiten, mit dessen Hilfe diese Maschine die Bernoulli-Zahlen hätte berechnen können. Ada Lovelace schaffte es in den Jahren 1842 – 1845 den Algorithmus zur Berechnung der Bernoulli-Zahlen zu entwickeln. Obwohl Babbage’s Pläne für die „Analytical Machine“ fehlschlugen, haben wir heutzutage doch ein ziemlich genaues Bild für diese Maschine. Sie wäre doch Lochkarten wie der Webstuhl viele Jahre zuvor programmiert worden. Die Programmiersprache auf diesen Lochkarten ähnelt den bis heute verwendeten Assemblersprachen sehr. (Bild)

Hollerith punched card.jpg

Die ersten Computer und ihre Instruktionen

1946 entwickelten John Mauchly und John Presper Eckert den ersten ENIAC Computer. Auf dem ENIAC waren nur Hardwareverbindungen möglich.

ENIAC Computer


Der Computer wurde programmiert, in dem die Verbindungen mit Leitungen geschlossen werden. Jedes Mal, wenn die Programmierung für den Computer geändert werden sollte, musste der Programmierer gucken, wo welche Verbindungen stecken und sie umstecken. In den Speicher dieses Computers konnten nur Daten eingegeben werden. Erst nachdem der Mathematiker von Neumann eine neue Architektur beschrieben hatte, mussten keine neuen Leitungen mehr gelegt werden sondern es konnte ein Programm im Speicher gespeichert werden. 1936 entwickelten Alonzo Church und Stephen Kleene das Lambda-Kalkül (λ-Kalkül). Das Lambda-Kalkül ist eine universelle abstrakte Programmiersprache. Es lässt sich mit dem Lambda-Kalkül alles ausdrücken, was sich mit einer modernen Programmiersprache ausdrücken lässt. Es ist außerdem die formale Grundlage für viele Programmiersprachen, wie z.B. Scheme und Lisp. In den häufig verwendeten und gut ausgebauten Programmiersprachen ist er meistens zusätzlich als Modul oder Bibliothek verwendbar.

Die ersten höheren Programmiersprachen

Objektorientierung

Programmiersprachen in der Welt von heute