Die Unix-Legende, die uns nichts schuldet, repariert weiterhin den zugrunde liegenden AWK-Code
Ein Princeton-Professor, der in der akademischen Sommerflaute etwas Zeit für sich selbst fand, schickte vor ein paar Monaten eine E-Mail an einen alten Freund. Brian Kernighan sagte „Hallo“, fragte, wie ihr US-Besuch verlaufen sei, und schickte Hunderte von Codezeilen , die AWK, ein Textanalysetool, das er 1977 bei Bell Labs für Unix mitentwickelte, um Unicode-Unterstützung erweitern konnten.
„Ich habe das ziemlich oft getestet, aber es sind eindeutig weitere Tests nötig“, schrieb Kernighan in einer E-Mail , die der langjährige Betreuer Arnold Robbins als eine Art Pseudo-Commit an das onetrueawk-Repository gepostet hatte. „Sobald ich herausgefunden habe, wie … werde ich versuchen, eine Pull-Anfrage einzureichen. Ich wünschte, ich könnte Git besser verstehen, aber trotz Ihrer Hilfe habe ich immer noch nicht das richtige Verständnis, daher kann es eine Weile dauern.“
Kernighan ist das „K“ in AWK , einer speziellen Extraktions- und Kontrollsprache, die der Schlüssel zu den Unix-Pipeline-Funktionen und der Interoperabilität zwischen Systemen war. Eine laufende awk
Funktion (AWK ist eine Sprache, awk
ein Befehl zum Aufrufen) ist hinsichtlich der Interoperabilität sowohl für die UNIX-Standardspezifikation als auch für die IEEE POSIX-Zertifizierung von entscheidender Bedeutung. Es gibt unzählige Variationen von awk
, aber „One True AWK“, manchmal auch bekannt als „One True AWK“ nawk
, ist eine Version, die auf Kernighans 1985 erschienenem Buch The AWK Programming Language und den daraus resultierenden Beiträgen basiert.
Kernighan ist auch das „K“ in „K&R C“, dem bahnbrechenden Buch The C Programming Language aus dem Jahr 1978, das er gemeinsam mit Dennis Ritchie schrieb und das den Programmierern im Kopf und in abgenutzter Papierform erhalten bleibt. Xis Wurzeln reichen viel tiefer. Kernighan trainierte C bei Bell Labs und überzeugte seinen Schöpfer Dennis Ritchie, an einem Buch mitzuarbeiten, um Wissen zu verbreiten. Dieses Buch brachte „den einzig wahren Klammerstil“, die endlose Debatte, die damit einhergeht, und die Struktur hervor, die jeder modernen Programmiersprache zugrunde liegt.
Kernighan nannte auch Unix und war der erste, der das Codebeispiel „Hello, World“ demonstrierte. Er sprach mit Richard Jensen von Ars Technica über 50 Jahre Unix-Geschichte.
Das onetrueawk-Repository, in dem Kernighan Ende Mai erschien, ist ein relativ ruhiger Ort mit 21 Mitwirkenden, 46 GitHub-Benutzern, die zuschauen, und Commits, die alle paar Monate erscheinen. Wie The Register feststellte , wurde Kernighans Unicode-Fix vor allem dadurch bekannt, dass er in einem Interview mit dem Professor auf dem YouTube-Kanal von Computerphile erwähnt wurde .
„Es war schon immer peinlich, dass AWK nur mit ASCII oder vielleicht 8-Bit-Eingaben funktioniert, Unicode aber überhaupt nicht beherrscht“, sagte Kernighan dem Interviewer Professor Balesford. „Vor ein paar Monaten habe ich einige Zeit damit verbracht (lacht), mit einem unglaublich alten Programm zu arbeiten. Ich habe es im Moment, wo es tatsächlich UTF-8-Eingabe und -Ausgabe verarbeitet, sodass Sie reguläre Ausdrücke haben können, die japanische Zeichen und so weiter aufgreifen.“
Kernighan, heute 80, erwähnt in einem Interview beiläufig, dass er auch etwas „schnelles und schmutziges“ behoben habe, um AWK die Verarbeitung von CSV-Dateien zu ermöglichen.
Schreibe einen Kommentar