De Unix-legende die ons niets verschuldigd is, blijft de onderliggende AWK-code repareren
Een professor uit Princeton, die wat tijd voor zichzelf vond in een academische zomerstilte, stuurde een paar maanden geleden een e-mail naar een oude vriend. Brian Kernighan zei hallo, vroeg hoe hun bezoek aan de VS was verlopen en stuurde honderden regels code die Unicode-ondersteuning konden toevoegen aan AWK, een tekstanalysetool die hij in 1977 voor Unix bij Bell Labs hielp bouwen.
“Ik heb dit nogal wat getest, maar er is duidelijk meer testen nodig”, schreef Kernighan in een e-mail die als een soort pseudo-toezegging aan de onetrueawk-repository werd geplaatst door de oude beheerder Arnold Robbins. ‘Zodra ik weet hoe… zal ik proberen een pull-verzoek in te dienen. Ik wou dat ik git beter kon begrijpen, maar ondanks je hulp heb ik nog steeds niet het juiste begrip, dus het kan even duren.”
Kernighan is de “K” in AWK , een speciale extractie- en besturingstaal die de sleutel was tot Unix-pijplijnfuncties en interoperabiliteit tussen systemen. Een actieve awk
functie (AWK is een taal, awk
een commando om het aan te roepen) is essentieel voor zowel de UNIX-standaardspecificatie als de IEEE POSIX-certificering in termen van interoperabiliteit. Er zijn talloze variaties op awk
, maar “One True AWK”, ook wel bekend als nawk
, is een versie gebaseerd op Kernighan’s boek The AWK Programming Language uit 1985 en de daaropvolgende invoer.
Kernighan is ook de “K” in “K&R C”, het baanbrekende boek The C Programming Language uit 1978 dat hij samen met Dennis Ritchie schreef, dat bij programmeurs blijft, mentaal en in gehavende papieren vorm. Xi’s wortels gaan veel dieper. Kernighan trainde C bij Bell Labs en overtuigde de maker Dennis Ritchie ervan om samen te werken aan een boek om kennis te verspreiden. Dit boek bracht “de enige echte accoladestijl” voort, het eindeloze debat dat ermee gepaard gaat, en de structuur die ten grondslag ligt aan elke moderne programmeertaal.
Kernighan noemde ook Unix en was de eerste die het codevoorbeeld “Hello, world” demonstreerde. Hij sprak met Richard Jensen van Ars Technica over 50 jaar Unix-geschiedenis.
De onetrueawk-repository, waar Kernighan eind mei verscheen, is een relatief rustige plek met 21 bijdragers, 46 GitHub-gebruikers die kijken en commits die om de paar maanden verschijnen. Zoals opgemerkt door The Register , werd de Unicode-fix van Kernighan vooral bekend omdat deze werd genoemd in een interview met de professor op het YouTube-kanaal van Computerphile .
“Het is altijd beschamend geweest dat AWK alleen werkt met ASCII, of misschien 8-bits input, maar helemaal niet met Unicode omgaat”, vertelde Kernighan aan interviewer Professor Balesford. “Een paar maanden geleden heb ik enige tijd gewerkt (lacht) met een ontzettend oud programma. Ik heb het op het moment dat het daadwerkelijk UTF-8-invoer en -uitvoer afhandelt, dus je kunt reguliere expressies hebben die, weet je, Japanse karakters en zo oppikken.
Kernighan, nu 80, vermeldt terloops in een interview dat hij ook iets “snel en vies” heeft opgelost om AWK in staat te stellen CSV-bestanden te verwerken.
Geef een reactie