Menü
Developer

50 Jahre BASIC: die Allzweck-Programmiersprache für Anfänger feiert Jubiläum

Die Erfinder der Programmiersprache BASIC schufen tatsächlich das, was sie sich erhofft hatten: die einfache und jedem zugängliche Programmierung.

Von
vorlesen Drucken Kommentare lesen 318 Beiträge

Mehr Infos

Das erste BASIC-Programm

10 Let X = (7+8)/3
20 PRINT X
30 END

Die erste Version der Sprache hatte 14 Befehle (darunter PRINT, LET, IF, THEN, FOR, NEXT, GOTO, INPUT und END).

Der heutige 1. Mai markiert zugleich den 50. Geburtstag der imperativen Programmiersprache BASIC. Denn am 1. Mai 1964, 4 Uhr Ortszeit, liefen am Darthmouth College in New Hampshire auf einem Mainframe von General Electric die ersten BASIC-Programme. John G. Kemeny und Thomas E. Kurtz, die Erfinder der "symbolischen Allzweck-Programmiersprache für Anfänger" (Beginner's All-purpose Symbolic Instruction Code), hatten BASIC entwickelt, um ihren Studenten der Elektrotechnik den Einstieg in die Programmierung zu vereinfachen. Dafür sprach auch, dass die Sprache auf Wunsch ihrer Schöpfer von Anfang an im Lehrbetrieb kostenlos eingesetzt werden durfte – im Gegensatz zu anderen Programmiersprachen der damaligen Zeit, für deren Nutzung man mehrere 1000 US-Dollar zahlen musste.

Der in Ungarn geborene Kemeny wirkte während des Zweiten Weltkrieges beim sogenannten Manhattan-Projekt mit, einem militärischen Forschungsprojekt zur Entwicklung der Atombombe, später war er Mitarbeiter von Johann von Neumann und Assistent von Albert Einstein.

(Bild: Adrian N. Bouchard/Dartmouth College)

Die beiden Wissenschaftler beschäftigten sich schon seit 1956 mit Programmiersprachen, die eigentliche Entwicklung geschah jedoch 1963 und 1964. Ihre Sprache entstand zu einer Zeit, als Personal Computer noch als Science-Fiction galten. Die damaligen Computer, Maschinen trifft es fast besser, benötigten den Platz großer Räume, und – noch wichtiger – der Zugriff auf die Rechner blieb auch an den Hochschulen begrenzt.

Anfang der 60er-Jahre sollte sich das jedoch ändern: Über seine Kontakte zum benachbarten Massachusetts Institute of Technology (MIT) hatte Kurtz erfahren, dass Computer nicht mehr nur Befehle aus einer Quelle in einem Stapel abarbeiten konnten. Jetzt war es möglich, dass mehrere Benutzer gleichzeitig an einem Rechner arbeiten konnten ("Time-Sharing").

Der heute 86-jährige Thomas E. Kurtz war seit 1956 am Dartmouth College angestellt.

(Bild: Adrian N. Bouchard/Dartmouth College)

Bisher fütterte man die Computer in der Regel mit Stapeln von Lochkarten oder langen Lochstreifen, auf denen die Befehle in beispielsweise Algol oder Fortran standen. Da sich immer nur ein Stapel zur gleichen Zeit verarbeiten ließ, gab es kaum Gelegenheit, einen Slot der wertvollen Computer-Zeit zu ergattern. Der Stapelbetrieb war außerdem unflexibel, weil er keinen Dialog mit dem Betriebssystem zuließ.

Kemeny und Kurtz erkannten das Potenzial des Time-Sharings. Und mit BASIC erarbeiteten sie die dafür geeignete Programmiersprache. Zusätzlich schufen die beiden das erste erfolgreich implementierte Time-Sharing-Computersystem (DTSS; Dartmouth Time Sharing System). Die Weiterentwicklung des ursprünglichen BASIC erfolgte dann in den frühen Jahren durch immer neue Studenten des Dartmouth College.

General Electric nutzte von 1965 das an das Dartmouth Time Sharing System als Basis für ein kommerzielles Produkt. Hier das Cover einer Broschüre von GE, die den entscheidenden Vorteil von BASIC herausstellt.

(Bild: Computer History Museum)

Was eine Art Demokratisierung im Umgang mit Computern darstellte, sollte seinen Siegeszug aber erst so richtig in den späten 70er-Jahren antreten. Zwar hatten Studenten, zum Beispiel auch die jungen Bill Gates und Steve Wozniak, dank BASIC in den späten 60er- und frühen 70er-Jahren die Möglichkeit, eigene Programmiererfahrungen zu machen, das geschah aber zumeist nicht in den eigenen vier Wänden. Erst mit dem Aufkommen der ersten Home-Computer von Atari, Sinclair, Tandy, Texas Instruments, Schneider/Amstrad oder Apple, die ihre spärlich ausgestattete Hardware mit einer Benutzeroberfläche und Programmierumgebung für BASIC auslieferten, nahm der Zug so richtig Fahrt auf. Den tatsächlichen Höhepunkt markierte der von 1982 an ausgelieferte Commodore 64, der bis heute als meistverkaufter Heimcomputer gilt.

Eine sehr wichtige Rolle nahm damals übrigens Microsoft ein: Bevor das Unternehmen ein eigenes Betriebssystem vorstellte, waren BASIC und die diversen, von Microsoft abgeleiteten und als sehr gut geltenden Dialekte der Sprache die wichtigsten Produkte des späteren Softwarekonzerns.

Ihren Popularitäts-Einbruch erlebte die Programmiersprache dann, weil die Heimcomputer zunehmend mehr nur für Dinge wie Textverarbeitung, Datenhaltung oder Tabellenkalkulationen verwendet wurden, die keine BASIC-Kenntnisse erforderten. Nachdem Unternehmen wie Commodore und Atari eingebrochen waren, wurden viele Rechner gar nicht mehr mit BASIC-Interpreter ausgeliefert. Und gegen Sprachen wie C und die zunehmend populärer werdenden, hardwarenahen objektorientierten Sprachen wie C++ konnten BASIC und seine Hunderte Ableitungen aus Performancegründen schon gar nicht ankommen.

Erst durch die Einführung von Microsofts objektorientierter Programmiersprache und Entwicklungsumgebung Visual Basic Anfang der 90er-Jahre, die die Entwicklung von Windows-Programmen drastisch beschleunigen sollte (Stichwort Rapid Application Development), kam es zu einer Art Comeback, das zum Beispiel in der Makro-Programmierung bis heute in Office-Produkten Bestand hat.

Die Begeisterung vieler gerade für späte Versionen des klassischen Visual Basic und die wehmütige Rückerinnerung vieler Programmierbastler der 70er- und 80er-Jahre einmal ausgeklammert: BASIC war immer auch sehr umstritten.

Ein Ausschnitt eines Ausdrucks einer Commodore-C64-BASIC-Programmliste: Man sprang mit GOTO zu Zeilennummern.

(Bild: Wikipedia)

Der Wegbereiter der strukturierten Programmierung, Edsger Dijkstra, äußerte 1975, dass es nahezu unmöglich sei, Studenten ein gutes Programmieren beizubringen, die vorher mit BASIC in Berührung gekommen seien. "Konzeptionell und von der Effizienz konnte BASIC nicht mit anderen Programmiersprachen mithalten", sagt Jochen Viehoff, Computer-Historiker am Heinz Nixdorf MuseumsForum (HNF) in Paderborn. "Kritiker machten sich auch immer wieder über den unübersichtlichen 'Spaghetticode' lustig", den BASIC aufgrund des Sprungbefehls zur Programmablaufsteuerung GOTO geradezu provozierte. Bei Visual Basic, das spätestens seit .NET mit vorher überlegen geltenden Sprachen konkurrieren kann, bemängelten andere, dass sich es nie wirklich von der Microsoft-Plattform Windows habe lösen können.

Dennoch ist BASIC auch noch heute eine der am weitesten verbreiteten Programmiersprachen, gerade weil sie leicht zu erlernen ist. Im aktuellen TIOBE-Index zur Ermittlung der populärsten Programmiersprachen nimmt (Visual) Basic Platz 6 ein, Visual Basic .NET folgt auf Position 10. Und es ist noch gar nicht so lange her, dass Microsoft mit Small Basic eine neue, von Visual Basic inspirierte Programmierumgebung für Kinder und erwachsene Programmiereinsteiger vorgestellt hatte. In der Welt des Internets spielt BASIC jedoch nur noch eine untergeordnete Rolle. (ane)