Zum Hauptinhalt springen
Bethemesh
BiografieGeschichte der InformatikAnfänger

Brian Kernighan: AWK, Unix und die Kunst, Code zu erklären

Erfahre, wie Brian Kernighan AWK mitprägte, C und Unix verbreitete, spezialisierte Werkzeuge entwickelte und eine dauerhafte Programmierpädagogik etablierte.

Veröffentlicht 24. August 2026Lesezeit : 5 minVon Yann Bastien
Porträt von Brian Kernighan in einem Umfeld zu Unix, C und Textverarbeitung
Inhalt anzeigen
  1. Von Toronto zu den Bell Labs
  2. Unix als Werkstatt kleiner Werkzeuge
  3. Ratfor: bessere Ausdrucksweise ohne neue Infrastruktur
  4. AWK: Muster in Aktionen verwandeln
  5. K&R: das Buch, das C verständlich machte
  6. Die Unix-Philosophie durch Praxis erklären
  7. Kleine Sprachen für präzise Probleme
  8. Programmierpraxis und Lehre
  9. Warum Brian Kernighan weiterhin wichtig ist
  10. Chronologie
  11. Häufig gestellte Fragen
  12. Hat Brian Kernighan C erfunden?
  13. Wer hat AWK entwickelt?
  14. Warum ist K&R so wichtig?
  15. Was ist die zentrale Idee hinter Kernighans Werkzeugen?
  16. Wird AWK noch verwendet?

Brian Kernighan nimmt in der Geschichte der Programmiersprachen eine besondere Stellung ein. Er erfand weder Unix noch C: Diese Beiträge gehen vor allem auf Ken Thompson und Dennis Ritchie zurück. Sein Einfluss liegt darin, Werkzeuge rund um Unix zu bauen, spezialisierte Sprachen mitzuentwickeln und die Ideen der Bell Labs verständlich und übertragbar zu machen.

Sein Name ist mit AWK, entwickelt mit Alfred Aho und Peter Weinberger, sowie mit The C Programming Language, geschrieben mit Ritchie, verbunden. Ratfor, eqn, pic, AMPL und Jahrzehnte der Lehre zeigen darüber hinaus eine konsistente Idee: Ein gutes Werkzeug tut wenige Dinge klar und lässt sich mit anderen kombinieren.

Von Toronto zu den Bell Labs

Brian Wilson Kernighan wurde 1942 in Toronto geboren. Er studierte technische Physik an der University of Toronto und promovierte 1969 in Elektrotechnik in Princeton über Graphpartitionierung. Im selben Jahr wechselte er zu den Bell Laboratories.

Dort entstand Unix um Ken Thompson und Dennis Ritchie. Kernighan arbeitete in diesem Umfeld, testete Werkzeuge, schrieb Programme und Dokumentation und half, aus einem lokalen Prototyp eine nutzbare Umgebung zu machen. Ihm wird auch der Name „Unix“ zugeschrieben, ein Wortspiel mit Multics.

Unix als Werkstatt kleiner Werkzeuge

Die Stärke von Unix liegt nicht nur im Kernel, sondern auch in kleinen Programmen, die einfache Datenströme lesen und schreiben und über Pipelines verbunden werden. Kernighan entwickelte mit Lorinda Cherry eqn für mathematische Formeln und arbeitete an pic für Diagramme sowie an Werkzeugen rund um troff.

Diese Programme folgen einer wichtigen Idee: Eine spezialisierte Notation kann für eine Aufgabe ausdrucksstärker sein als ein allgemeines Werkzeug. Textdateien bleiben lesbar, versionierbar und mit anderen Befehlen kombinierbar - ein Vorläufer heutiger „Docs as Code“- und reproduzierbarer Build-Praktiken.

Ratfor: bessere Ausdrucksweise ohne neue Infrastruktur

Ältere FORTRAN-Versionen waren weit verbreitet, boten aber wenig strukturierte Kontrollformen. Kernighan entwickelte Ratfor (Rational Fortran), das eine modernere Syntax mit Blöcken, Schleifen und Bedingungen in gewöhnliches Fortran übersetzte.

Die Strategie war pragmatisch: Nicht die gesamte vorhandene Compiler-Infrastruktur ersetzen, sondern eine dünne Schicht hinzufügen, die bessere Programme ermöglicht. Software Tools, mit P. J. Plauger, verbreitete diese Methode weiter.

AWK: Muster in Aktionen verwandeln

1977 entwickelten Alfred Aho, Peter Weinberger und Brian Kernighan AWK. Der Name besteht aus ihren Initialen. Das Grundmodell ist kompakt:

condition { action }

AWK liest Datensätze, zerlegt Zeilen automatisch in Felder, prüft Muster und führt Aktionen aus. Eine Summe der zweiten Spalte lässt sich etwa so ausdrücken:

{ total += $2 }
END { print total }

Die Kürze entsteht, weil die Sprache den wiederkehrenden Rahmen übernimmt. AWK liegt zwischen Filterbefehl und allgemeiner Programmiersprache und eignet sich für Extraktion, Aggregation, Konvertierung und Berichte.

K&R: das Buch, das C verständlich machte

Dennis Ritchie entwickelte C Anfang der 1970er-Jahre. Um die Sprache über die Bell Labs hinaus zu verbreiten, schrieb Kernighan mit ihm The C Programming Language, 1978 veröffentlicht und als K&R bekannt.

Das Buch verband Ritchies Wissen über die Sprache mit Kernighans didaktischer Erfahrung. Die erste Ausgabe wurde zur De-facto-Referenz des frühen C, die zweite Ausgabe von 1988 begleitete ANSI C. Kernighans Leistung lag hier nicht in der Erfindung von C, sondern darin, die Sprache für Menschen verständlich zu machen, die nicht neben ihrem Schöpfer arbeiteten.

Die Unix-Philosophie durch Praxis erklären

Mit Rob Pike veröffentlichte Kernighan 1984 The Unix Programming Environment. Das Buch zeigt nicht bloß Befehle, sondern eine Methode: Aufgaben zerlegen, einfache Werkzeuge kombinieren und bei Bedarf eine kleine domänenspezifische Sprache schaffen.

Textpipelines haben Grenzen - Strukturinformationen können verloren gehen und lange Ketten schwer wartbar werden. Die dauerhafte Lehre ist daher nicht, dass alles Text sein müsse, sondern dass einfache Schnittstellen und explizite Komposition Integrationskosten senken.

Kleine Sprachen für präzise Probleme

Mit Robert Fourer und David Gay entwickelte Kernighan AMPL für mathematische Optimierungsmodelle. Nutzer beschreiben Variablen, Bedingungen und Ziele, während ein Solver die numerische Lösung übernimmt.

Wie eqn und AWK bringt AMPL die Sprache näher an das Problem. Diese Idee kleiner, domänenspezifischer Sprachen lebt heute in Abfragesprachen, Konfigurationen, Build-Systemen und Visualisierungsnotationen weiter.

Programmierpraxis und Lehre

Kernighans Bücher The Elements of Programming Style mit P. J. Plauger und The Practice of Programming mit Rob Pike behandeln Lesbarkeit, Entwurf, Debugging, Tests, Leistung, Portabilität und Schnittstellen. Stil ist darin keine Dekoration: Lesbarer Code legt Annahmen offen und kleine Schnittstellen begrenzen Abhängigkeiten.

Nach drei Jahrzehnten bei Bell Labs wechselte Kernighan 2000 nach Princeton und lehrte dort Informatik sowie die gesellschaftlichen Folgen digitaler Systeme.

Warum Brian Kernighan weiterhin wichtig ist

Kernighans Vermächtnis verbindet Werkzeuge, Sprachen und Erklärung. Er zeigte, dass ein kleines Werkzeug große Wirkung entfalten kann, wenn seine Schnittstelle klar ist, und dass technische Ideen erst dann breite Wirkung bekommen, wenn sie verständlich dokumentiert und gelehrt werden.

Chronologie

  • 1942: Geburt in Toronto.
  • 1969: Promotion in Princeton und Eintritt in die Bell Labs.
  • 1970er-Jahre: Arbeit an Unix-Werkzeugen, Ratfor, eqn und pic.
  • 1977: Entwicklung von AWK mit Aho und Weinberger.
  • 1978: erste Ausgabe von The C Programming Language mit Dennis Ritchie.
  • 1984: The Unix Programming Environment mit Rob Pike.
  • 1988: zweite K&R-Ausgabe für ANSI C.
  • 2000: Wechsel nach Princeton.
  • Heute: AWK, K&R und die Unix-Werkzeugkultur prägen weiterhin Programmierpraxis und Lehre.

Häufig gestellte Fragen

Hat Brian Kernighan C erfunden?

Nein. Dennis Ritchie war der Hauptentwickler von C. Kernighan half entscheidend dabei, die Sprache zu dokumentieren, zu lehren und zu verbreiten.

Wer hat AWK entwickelt?

Alfred Aho, Peter Weinberger und Brian Kernighan entwickelten AWK gemeinsam; der Name besteht aus ihren Nachnameninitialen.

Warum ist K&R so wichtig?

Das Buch gab C eine präzise, beispielorientierte und weithin verfügbare Beschreibung, bevor eine offizielle Norm existierte, und prägte zugleich einen klaren Programmierstil.

Was ist die zentrale Idee hinter Kernighans Werkzeugen?

Komplexe Aufgaben in kleine, verständliche Teile zerlegen, einfache Schnittstellen verwenden und spezialisierte Werkzeuge kombinieren.

Wird AWK noch verwendet?

Ja. AWK bleibt auf Unix-ähnlichen Systemen ein nützliches Werkzeug für schnelle Textverarbeitung, Berichte, Datenextraktion und Automatisierung.

War dieser Artikel hilfreich?

Sammlung

Programmiersprachen

22 / 26

  1. 01Grace Hopper: von frühen Compilern zu COBOL
  2. 02John Backus: FORTRAN, BNF und die Abkehr vom Maschinencode
  3. 03Dennis Ritchie: die Sprache C im Herzen von Unix
  4. 04FORTRAN: der Beweis, dass ein Compiler mit Assembler konkurrieren kann
  5. 05Die Sprache C: Systeme portabel machen, ohne die Maschine zu verbergen
  6. 06Niklaus Wirth: von Pascal bis Oberon – Entwurf durch Einfachheit
  7. 07Bjarne Stroustrup: C++ entwerfen, ohne auf Leistung zu verzichten
  8. 08Pascal: Programmieren lernen, indem Struktur sichtbar wird
  9. 09C++: von C with Classes zum modernen C++
  10. 10Objektorientierte Programmierung: Objekte, Nachrichten und wiederverwendbare Abstraktionen
  11. 11Guido van Rossum: Python für lesbaren Code entwickeln
  12. 12Brendan Eich: JavaScript vom Netscape-Prototyp zum Webstandard
  13. 13James Gosling: der Ingenieur hinter Java
  14. 14Python: Lesbarkeit, Batteries included und ein globales Ökosystem
  15. 15Java: einmal schreiben, überall ausführen
  16. 16JavaScript: die Sprache, die das Web interaktiv machte
  17. 17Ken Thompson: von Unix bis Go, Einfachheit als Methode
  18. 18John McCarthy: Lisp und die Idee, mit Symbolen zu programmieren
  19. 19Alan Kay: Smalltalk und der Computer als persönliches Medium
  20. 20Barbara Liskov: Abstraktion als Grundlage modularer Software
  21. 21Robin Milner: ML, rechnergestützte Beweise und Sprachen der Interaktion
  22. 22Brian Kernighan: AWK, Unix und die Kunst, Code zu erklären
  23. 23Anders Hejlsberg: von Turbo Pascal zu C# und TypeScript
  24. 24Larry Wall: Perl, die Sprache, die die Werkzeuge des Internets verband
  25. 25Yukihiro Matsumoto: Ruby und das Glück der Programmierenden
  26. 26Rasmus Lerdorf: PHP und die Demokratisierung des dynamischen Webs