Geschichte der Programmiersprachen

Einblick in die Blackbox Computer

29:27 Minuten
Programmiercode und globales Netzwerk mit Technologie-Hintergrund
Je nach Definition gibt es zwischen 500 und 8000 Computersprachen. © dpa / picture alliance / Klaus Ohlenschläger
Von Florian Felix Weyh · 17.10.2018
Audio herunterladen
Hunderte von Programmiersprachen gibt es, von hochkomplexen bis hin zu LOGO, mit der in den 1980er-Jahren Grundschulkinder programmieren lernten. Sich mit ihrer Geschichte zu beschäftigen, lohnt sich, um Computer zu verstehen.
Fast jeder benutzt ihn mehr oder weniger routiniert, aber nur wenige verstehen, was wirklich los ist im Inneren eines Computers. Vielen erscheint er insofern als eine unheimliche Macht mit geradezu wundersamen Kräften.

Der Autor: "Angst ist ein schlechter Ratgeber, Code muss keine Angst machen, Code ist wenig erschreckend, wenn man ihn versteht. Kann man ihn verstehen? Natürlich, sonst gäbe es keine Programmierer. Kann ihn jeder verstehen? Da scheiden sich die Geister."

Deutschlandradio-Autor und -Redakteur Florian Felix Weyh
© Deutschlandradio / Ulrike Köppchen
Um Computer besser zu verstehen, hilft ein Blick in die Geschichte der Computersprache. Man muss sich nur trauen...

"Ich wünsche mir sehr, dass man Leute auch dazu bringt, sich zu trauen, das wirklich in seinen Grundzügen zu verstehen. Auch wenn man das vielleicht nie wieder braucht – aber es ist cool, es zu wissen!"

Das Chaos Patenkind Fiona Krakenbürger posiert am 27.12.2014 beim 31. Chaos Communication Congress im Congress Center in Hamburg. Krakenbürger ist Bloggerin und Programmierin.
© picture alliance/dpa/Malte Christians
Die Berliner Soziologin Fiona Krakenbürger hat sich getraut: Vor einigen Jahren betrieb sie das Blog "Fiona lernt programmieren". Darin dokumentierte sie vier Monate lang ihren Versuch, ohne Vorkenntnisse eine Ur-Programmiersprache zu lernen: den Assemblercode, erfunden im Holozän des Computerzeitalters zwischen 1948 und 50.
Wir dokumentieren das Feature von Florian Felix Weyh an dieser Stelle stark gekürzt. Das vollständige Manuskript zur Sendung können Sie hier als pdf herunterladen.

Was ist überhaupt Computersprache?

Fortran, Cobol, Algol, Lisp, Basic, Simula, Pearl, Pascal, Prolog, Scheme, Ada, C, C++, Haskell, Python, SQL, Java, Ruby, Swift und viele, viele mehr - insgesamt gibt es je nach Definition zwischen 500 und 8000 Computersprachen. Sogar Dialekte haben sich herausgebildet.
"Eine Programmiersprache ist in erster Linie eine künstliche Sprache zur Kommunikation von Menschen mit Maschinen. Im Unterschied zu natürlichen Sprachen, die der Kommunikation zwischen Menschen dienen, sind Programmiersprachen vollkommen eindeutig definiert: Es gibt keinerlei Interpretationsspielraum, was ein bestimmtes Sprachkonstrukt bedeutet."
(Johannes Jander und Kathrin Passig: "Weniger schlecht programmieren". O'Reilly-Verlag 2013)

"Es sind sicherlich Sprachen in dem Sinne, dass da Zeichen eine Bedeutung haben, die man wissen muss. Aber die Eigenschaft von menschlicher Sprache ist ganz anders als die von Programmiersprachen. Weil bei der Programmiersprache das einmal definiert wird, was der Befehlssatz heißt und was der bedeutet. Ab da ist die Sprache starr."

© Christian Rating
"Streng genommen kann jeder Computer nur eine einzige Programmiersprache verarbeiten: seine Maschinensprache. Diese Maschinensprachen sind außerordentlich unanschaulich und schwer verständlich. Ein Maschinenprogramm besteht im Grunde nur aus einer einzigen langen Folge von 0/1-Symbolen. (…) Einen allerersten Schritt von den 0/1-Folgen der Maschinensprache in die Richtung der höheren Programmiersprachen stellten die sogenannten Assemblersprachen dar, bei denen die durch 0/1-Folgen ausgedrückten Maschinenbefehle wenigstens durch anschauliche, symbolische Namen beschrieben werden.
(Jochen Ziegenbalg et al.: "Algorithmen von Hammurapi bis Gödel", Springer-Verlag 2016)

Wie alles anfing

Der Autor: "Die Geschichte des Computers ist ohne eine überragende Frau undenkbar. Die an Neujahr 1992 verstorbene Grace Hopper – Admiral Grace Hopper – wurde 1906 geboren, promovierte in Mathematik und unterrichtete dieses Fach bis 1944 am Vassar College. Im Auftrag der amerikanischen Marine wurde sie dann nach Harvard zu einer Maschine abkommandiert, die ballistische Berechnungen durchführen sollte: die MARK 1."

Deutschlandradio-Autor und -Redakteur Florian Felix Weyh
© Deutschlandradio / Ulrike Köppchen
"'Da stand diese wuchtige Riesenmaschine und machte eine Menge Lärm', erinnert sie sich. 'Es war alles offen und unverdeckt und sehr, sehr laut.' Ihr war klar, dass sie sie ganz und gar würde verstehen müssen, um damit richtig arbeiten zu können, und so verbrachte sie ihre Nächte über den Schaltplänen.'"
(Walter Isaacson: "The Innovaters". Bertelsmann-Verlag 2018)
MARK 1 war bald überholt und wurde von einem anderen Ungetüm abgelöst: dem ENIAC mit seinen etwa 2.300 Röhren, die zu bestimmten Funktionsgruppen angeordnet waren, und der lediglich Rechenaufgaben bewältigen konnte.

Bernd Leitenberger: "Wenn man jetzt irgendwo eine Addition vor einer Multiplikation haben wollten, dann musste man eben die Verkabelung der Funktionsgruppen neu machen, dass eben das auch so entsprechend lief."

Programmieren hieß damals vor allem: Kabel umstecken. Doch schon früh machte man sich Gedanken, wie man die Maschine auf anderem Wege dazu bringen konnte, etwas zu tun.

Konrad Zuse: "Die Amerikaner haben hierfür die Ausdrücke 'Hardware' und 'Software' eingeführt. Das heißt, man kann ein Problem schaltungsmäßig mit geschickter Verknüpfung von konstruktiven, also gewissermaßen harten Elementen oder auf dem Wege der Programmierung lösen."

© AP Archiv
Die zu verstehen, ist nicht einfach, denn der Computer versteht im Grunde nur Maschinensprache: 0 oder 1, Strom - oder kein Strom.

"Die ganze Welt besteht aus Schichten, und auf der untersten Schicht ist halt ein Hardware-Layer, der bestimmte Transistoren hat und die irgendwie verdichtet auf so großen Siliziumflächen sind. Und man muss sich mit unteren Schichten nicht befassen, die sind im Grund nur gekoppelt, könnte man sagen. Also, man muss nicht auf die untere Schicht gehen."

© Christian Rating

Mehr als nur Technik

Bernd Leitenberger: Manche Leute schreiben gern Gedichte, andere Leute malen gerne, und da wollen sie auch ein schönes Gedicht haben oder ein schönes Bild! Und man kann ein Programm machen, dass es schnell hingerotzt ist. Oder man kann ein Programm machen, das schön ist. Also schön zum Beispiel, dass man es nach einem Monat noch verstehen kann, wenn man’s anguckt."

Hat ein Computerprogramm eine eigene Ästhetik? Ist Computersprache nicht nur Teil unserer Technikgeschichte, sondern auch unserer Kulturgeschichte?
Der 2011 verstorbene Literaturwissenschaftler Friedrich Kittler beschäftigte sich schon frühzeitig mit der fremden technischen Sprache und hatte sogar die Assemblerprogrammierung erlernt. Sich Zugangswissen zur Maschine anzueignen, hielt er für eine intellektuelle Pflicht. 1991 warnte er in einem Aufsatz vor der Tendenz der damals noch keineswegs komfortablen PC-Technologie, sich von den maschinennahen Bedienungsroutinen zu entfernen.

"Unter Stichwörtern wie Benutzeroberfläche, Anwenderfreundlichkeit oder auch Datenschutz hat die Industrie den Menschen mittlerweile dazu verdammt, Mensch zu bleiben. (...) Je höher und komfortabler die Hochsprachen, desto unüberbrückbarer ihr Abstand zu einer Hardware, die nach wie vor alle Arbeit tut."
(Friedrich Kittler: "Protected Mode", in: "Draculas Vermächtnis", Reclam-Verlag)

Der Literaturwissenschaftler und Medientheoretiker Friedrich Kittler (1943 - 2011).
© picture alliance / dpa / Karlheinz Schindler
Mehr zum Thema