Frühe Computer verstanden keine Wörter wie READ, ADD oder PAYROLL, sondern numerische Codes, die eng an ihre Hardware gebunden waren. Grace Hopper widmete ihre Karriere der Verringerung dieser Distanz zwischen menschlicher Absicht und Maschinenoperation.
Ihr Beitrag lässt sich weder auf eine einzelne Erfindung noch auf die alleinige Schöpfung von COBOL reduzieren. Sie programmierte einen der ersten großen automatischen Rechner, leitete frühe Arbeiten zur Programmübersetzung, entwickelte mit ihrem Team eine Sprache für Geschäftsdaten und förderte Standards. Der rote Faden war: Ein Programm sollte das zu lösende Problem ausdrücken, nicht die Eigenheiten eines Computers.
Programmieren lernen, bevor es den Beruf gab
Grace Brewster Murray wurde 1906 in New York geboren. Sie studierte Mathematik und Physik am Vassar College und promovierte 1934 in Mathematik an Yale. 1943 trat sie in die Reserve der US Navy ein und wurde 1944 Howard Aikens Team in Harvard zugeteilt, das den Harvard Mark I betrieb.
Der elektromechanische Rechner las Anweisungen von Lochstreifen. Hopper programmierte ihn, erstellte Tabellen für die Marine und wirkte am Handbuch mit. Das Team musste dabei eine neue Tätigkeit formalisieren: Probleme zerlegen, Anweisungen organisieren, Ergebnisse prüfen und Sequenzen wiederverwenden.
Was die Motten-Geschichte wirklich bedeutet
1947 fand das Team des Harvard Mark II eine Motte in einem Relais und klebte sie mit einem Hinweis auf den ersten „actual bug“ ins Logbuch. Hopper erfand das Wort bug jedoch nicht; es bezeichnete technische Fehler schon im 19. Jahrhundert. Auch ist nicht belegt, dass sie das Tier selbst entfernte. Die Anekdote zeigt vielmehr, dass bug und debugging bereits zum Vokabular der Teams gehörten.
Warum A-0 einen Teil des Programmierens automatisierte
1949 wechselte Hopper zur Eckert-Mauchly Computer Corporation, später Remington Rand, die den UNIVAC I entwickelte. Anfang der 1950er entstand unter ihrer Leitung A-0. Programmierer bezeichneten verfügbare Unterprogramme; A-0 fand deren Code, lud ihn und organisierte die Nutzung.
Nach heutigen Begriffen ähnelt A-0 teilweise einem Loader und Linker. Präziser ist daher, von einem der frühesten Compilersysteme zu sprechen. Entscheidend ist die Idee: Ein Programm kann automatisch ein anderes Programm für die Ausführung vorbereiten. A-1, A-2 und MATH-MATIC führten diesen Ansatz fort.
FLOW-MATIC bringt Code näher an Geschäftsabläufe
Wissenschaftliche Sprachen beschreiben vor allem Formeln. Geschäftsanwendungen lesen Dateien, vergleichen Datensätze, berechnen Summen oder drucken Berichte. Hopper wollte, dass die Notation dieses Vokabular widerspiegelt.
Ihr Team entwickelte Mitte der 1950er FLOW-MATIC. Englischnahe Anweisungen beschrieben Datenflüsse und machten Programme weniger abhängig von einem Hersteller. Wenn eine Anweisung eine Geschäftsoperation statt einer Hardwarebesonderheit ausdrückt, kann ein Compiler sie für verschiedene Computer übersetzen.
COBOL war eine Gemeinschaftsleistung
1959 kamen Hersteller, Behörden und Anwender im CODASYL-Komitee zusammen, um eine gemeinsame Sprache für Geschäftsanwendungen zu schaffen. Hopper nahm an der ersten Sitzung teil, und FLOW-MATIC beeinflusste das Projekt stark. Die COBOL-Spezifikation entstand jedoch in Ausschüssen und nicht durch eine einzelne Person.
Hopper war Pionierin, technische Impulsgeberin und wichtige Fürsprecherin. Später arbeitete sie an Einführung, Validierung und Standardisierung. COBOL ermöglichte Organisationen, Programme bei Hardwarewechseln zu bewahren – ein wichtiger Grund für seine außergewöhnliche Lebensdauer.
Portabilität braucht mehr als eine gemeinsame Sprache
Eine Spezifikation allein macht Programme nicht portabel. Hersteller können Regeln unterschiedlich auslegen oder inkompatible Erweiterungen anbieten. Hopper setzte sich deshalb für die Validierung von Compilern ein. Testsuiten sollten prüfen, ob Implementierungen die vorgesehenen Konstrukte und Verhaltensweisen einhalten.
Darin liegt die Kontinuität ihrer Arbeit: A-0 automatisiert die Zusammenstellung von Unterprogrammen, FLOW-MATIC nähert Code der Geschäftssprache an, COBOL schafft eine gemeinsame Sprache, und Validierung sorgt dafür, dass diese Sprache auf verschiedenen Maschinen dasselbe bedeutet.
Von Sprachentwurf zu Standardisierung
Hopper blieb bei Remington Rand und Sperry Rand, publizierte, bildete Programmierer aus und warb für Sprachen, die Computer einem größeren Nutzerkreis zugänglich machten. 1967 wurde sie erneut in den aktiven Marinedienst berufen, um an COBOL-Kompatibilität und -Validierung zu arbeiten.
Sie blieb bis 1986 im Dienst und ging als Rear Admiral in den Ruhestand. In Vorträgen machte sie Größenordnungen greifbar, etwa mit Drahtstücken, die die Strecke des Lichts in einer Nanosekunde darstellten. Hopper starb 1992.
Chronologie
- 1906: Geburt in New York.
- 1934: Promotion in Mathematik in Yale.
- 1943: Eintritt in die US-Navy-Reserve.
- 1944: Arbeit am Harvard Mark I.
- 1947: Motte im Relais des Mark II.
- 1949: Wechsel zu Eckert-Mauchly und UNIVAC.
- 1952: Arbeiten an A-0 werden vorgestellt.
- 1955–1959: Entwicklung von FLOW-MATIC.
- 1959: Teilnahme an den ersten CODASYL-Diskussionen.
- 1960: erste COBOL-Spezifikation.
- 1967: Rückkehr in den aktiven Marinedienst zur COBOL-Standardisierung.
- 1986: endgültiger Ruhestand als Rear Admiral.
- 1992: Tod in Arlington, Virginia.
Häufige Fragen
Hat Grace Hopper den ersten Compiler erfunden?
Sie leitete die Entwicklung von A-0, das oft so bezeichnet wird. Seine Funktion ähnelt teilweise heutigen Loadern und Linkern; „eines der ersten Compilersysteme“ ist genauer.
Hat sie COBOL allein entwickelt?
Nein. COBOL entstand kollektiv in CODASYL. Hoppers Ideen und FLOW-MATIC beeinflussten es stark, und sie spielte später eine wichtige Rolle bei Einführung, Validierung und Standardisierung.
Hat sie das Wort „Bug“ erfunden?
Nein. Der Begriff war bereits gebräuchlich. Die Motte im Mark II lieferte lediglich ein berühmtes Wortspiel über einen „echten“ Bug.
Warum ist FLOW-MATIC wichtig?
Es zeigte, dass eine Geschäftssprache Wörter aus realen Arbeitsabläufen verwenden und dennoch maschinell übersetzt werden kann. Es beeinflusste COBOL direkt.
Warum existiert COBOL noch?
Viele Organisationen haben darin jahrzehntelang erprobte Geschäftsregeln aufgebaut. Ein Ersatz ist teuer und riskant, und die ursprüngliche Portabilität half dem Code, mehrere Hardwaregenerationen zu überleben.
Was verbindet Grace Hopper und John Backus?
Beide wollten Programmierung in den 1950ern vom Maschinencode entfernen. Hopper konzentrierte sich mit FLOW-MATIC und COBOL auf Geschäftsdaten; Backus leitete FORTRAN für wissenschaftliche Berechnungen.