Last Updated on 17.04.2019 by Redaktion Digisaurier
Eigentlich schien der Rasen der Programmiersprachen spätestens um 1960 herum gemäht – denn im Grunde hatte man alles, was man für die zur Verfügung stehende Hardware brauchte. Aber mit dem, was vor allem Grace Hopper erfunden und inspiriert hatte, war das Programmieren auch zu einer Wissenschaft mit der zugehörigen Metaebene geworden. Es ging nun nicht mehr darum, pragmatisch Dialekte für neue Maschinen zu entwickeln, sondern das Programmieren an sich zu erforschen. Das führte einerseits zu der für ihre Zeit revolutionären Sprache Lisp, andererseits dazu, Programmiersprachen unabhängig von Hardware und Betriebssystemen zu machen. Erst dieser Schritt machte es möglich, dass ab Mitte der Siebzigerjahre plötzlich die Idee aufkam, jeder Besitzer eines Homecomputers könne sich seinen eigenen Kram programmieren.
Das legendäre BASIC, das schon 1964 von John G. Kemeny, Thomas E. Kurtz und Mary Kenneth Keller definiert wurde, war der Schlüssel. Einerseits erlaubte es relativ undiszipliniertes Kodieren, andererseits war es enorm leicht zu erlernen und führte rasch zu Erfolgserlebnissen. Noch einfacher, ja, vor allem kindgerecht wollten Seymour Papert und seine Kollegen das Programmieren mit Logo machen. Der gar nicht gestrenge Prof. Niklaus Wirth von der ETH Zürich strebte dagegen an, dass seine Studenten durch Pascal zu strukturiertem Programmieren gezwungen würden. Alle vier in dieser Folge vorgestellten Programmiersprachen waren stilbildend für die wilde Zeit zwischen der Ära der Minicomputer und der Blüte der PC für jedermann.
1958: McCarthys Lisp wird zur ersten Sprache der KI
Insgesamt sechs Hersteller bauten solche Computer, meistens auf Basis selbstentwickelter Lisp-Chips – darunter auch Texas Instruments, Fujitsu und Xerox. Xerox, das mit dem PARC in den Siebzigerjahre bei fast allen Entwicklungen rund um persönliche Computer ganz vorn dran war, entwarfen sogar eine Version des legendären Alto als Lisp-Maschine für den Schreibtisch. Die Entwicklung profitierte in den USA enorm von staatlichen Fördermitteln rund um das SDI-Projekt (eine Reagan’sche Idee, den kalten Krieg in den Weltraum zu tragen), das wiederum auf KI setzte. Als das Projekt beerdigt wurde, starben auch die Lisp-Maschinen aus. McCarthy und die von ihm ausgebildeten KI-Expert*innen aber entwickelten die Sprache weiter. Noch heute beginnen in den USA viele Schüler und Studenten ihre Programmiererfahrungen mit dem vereinfachten Lisp-Ableger Scheme.
1964: Kemney, Kurtz und Keller erfinden BASIC, die Sprache für Nichtprogrammierer
Dabei setzte sich BASIC eher zufällig durch. Etliche Studenten, die am Dartmouth College mit der Sprache in Berührung gekommen waren, gehörten zu den Pionieren der Computerbastelszene im Kalifornien der frühen Siebzigerjahre. Weil BASIC so simpel war, konnte man Interpreter bauen, die auf Rechnern mit den damals üblichen geringen Speicherkapazitäten liefen. Zudem verfügten beinahe alle Minicomputer – u.a. von DEC – damals über BASIC-Interpreter. So kam es, dass alle Unternehmen der Homecomputer-Branche – von Apple über Commodore bis Atari – auf BASIC setzten und praktisch jeder Nutzer eines persönlichen Computers zumindest über Grundkenntnisse der Sprache verfügte. Die enorme Verbreitung von Microsofts VisualBASIC sorgt bis heute dafür, dass Programme in BASIC entwickelt werden.
1966: Papert & Co. präsentieren Logo, damit Kinder das Programmieren lernen
Wer damals ernsthaft am Programmieren interessiert war, blickte eher verächtlich auf diese Sprache, obwohl sich in der Praxis immer wieder erwies, dass mit Logo schnell und einfach sehr brauchbare Anwendungen entwickelt werden konnten. Eine kurze Blüte hatte Logo dann noch einmal in der Hochzeit der Homecomputer, weil es eine Fülle kostenloser Interpreter für die unterschiedlichsten Rechner und Betriebssysteme gab.
1971: Wirth zwingt mit Pascal zum strukturierten Programmieren
Auch wenn der Begriff „Spaghetti-Code“ viel später aufkam: Professor Niklaus Wirth war der Ansicht, dass unstrukturiertes Kodieren ins Verderben führt und hatte dabei schon sehr viel komplexere Programm im Sinn als sie um 1970 herum üblich waren. Also entwickelte er auf Basis von Algol eine Programmiersprache, die seine Studenten an der ETH Zürich zum strukturierten Programmieren zwingen sollte – Pascal war geboren und wurde bald Lieblingssprache aller, die sich ernsthaft an die Programmentwicklung machten. Auch unter den ersten Homecomputer-Nerds gab es schob Pascal-Fans, aber erst mit der Version TurboPascal von Borland wurde die Sprache zum Kult.
Tatsächlich war diese Sprache unerbittlich und kein bisschen dynamisch. Dafür aber war jedes Programm quasi automatisch so dokumentiert, dass jeder Pascal-Programmierer es verstehen und daran weiterarbeiten konnte. Zudem hatte man TurboPascal mit einer Fülle ständig erweiterter Innovationen ausgestattet, die es sogar möglich machten, Pascal zu einer echten objektorientierten Sprache zu machen. An schweizerischen und deutschen Schulen und Hochschulen wird Einsteiger das Programmieren gern mit Pascal beigebogen. Wer damit das strukturierte Programmieren intus hat, wird mit jeder anderen Sprache diszipliniert entwickeln können.
[Bildnachweis – LISP-Maschine: Jszigetvari via Wikimedia unter der Lizenz CC BY-SA 3.0; Seymour Papert: Matematicamente.it via Wikimedia unter der Lizenz CC BY-SA 3.0]
Danke für die Auflistung. Gibt es irgendwo eine grafische Darstellung –> Pfad, der Programmiersprachen?
Und . . ist die Aussage richtig, dass es als Grundlage wichtiger ist, gut in Mathe zu sein, um dann Programmiersprachen zu leren ?
Diese Tabelle zeigt ganz gut den zeitlichen Ablauf der Entwicklung der Programmiersprachen: https://de.wikipedia.org/wiki/Zeittafel_der_Programmiersprachen. Nein, man muss nicht gut in Mathe sein, aber in der Lage, sehr abstrakt und logisch zu denken – dann klappt das auch mit dem Programmieren ;–))