La leggenda Unix che non ci deve nulla continua a riparare il codice AWK sottostante

La leggenda Unix che non ci deve nulla continua a riparare il codice AWK sottostante

Un professore di Princeton, trovando un po’ di tempo per sé durante una pausa accademica estiva, ha inviato un’e-mail a un vecchio amico un paio di mesi fa. Brian Kernighan ha salutato, ha chiesto come stava andando la loro visita negli Stati Uniti e ha inviato centinaia di righe di codice che potrebbero aggiungere il supporto Unicode ad AWK, uno strumento di analisi del testo che ha contribuito a costruire per Unix ai Bell Labs nel 1977.

“L’ho testato parecchio, ma sono chiaramente necessari ulteriori test”, ha scritto Kernighan in un’e-mail inviata come una sorta di pseudo-commit al repository onetrueawk dal manutentore di lunga data Arnold Robbins. “Una volta capito come… cercherò di inviare una richiesta pull. Vorrei poter capire meglio git, ma nonostante il tuo aiuto, non ho ancora la giusta comprensione, quindi potrebbe volerci un po’.

Kernighan è la “K” in AWK , un linguaggio di estrazione e controllo per scopi speciali che era la chiave per le funzioni della pipeline Unix e l’interoperabilità tra i sistemi. Una awkfunzionalità in esecuzione (AWK è un linguaggio, awkun comando per chiamarlo) è fondamentale sia per le specifiche dello standard UNIX che per la certificazione IEEE POSIX in termini di interoperabilità. Esistono innumerevoli variazioni di awk, ma “One True AWK”, a volte noto come nawk, è una versione basata sul libro di Kernighan del 1985 The AWK Programming Language e il suo successivo input.

Kernighan è anche la “K” in “K&R C”, il libro fondamentale del 1978 The C Programming Language che ha scritto insieme a Dennis Ritchie, che rimane con i programmatori, mentalmente e in forma cartacea. Le radici di Xi sono molto più profonde. Kernighan ha formato C presso i Bell Labs e ha convinto il suo creatore Dennis Ritchie a collaborare a un libro per diffondere la conoscenza. Questo libro ha generato “l’unico vero stile di parentesi graffa”, l’infinito dibattito che lo accompagna e la struttura che è alla base di ogni moderno linguaggio di programmazione.

Kernighan ha anche chiamato Unix ed è stato il primo a dimostrare l’esempio di codice “Hello, world”. Ha parlato con Richard Jensen di Ars Technica di 50 anni di storia di Unix.

Il repository onetrueawk, dove Kernighan è apparso a fine maggio, è un posto relativamente tranquillo con 21 contributori, 46 utenti GitHub che guardano e commit che appaiono ogni pochi mesi. Come notato da The Register , la correzione Unicode di Kernighan è diventata nota principalmente perché è stata menzionata in un’intervista con il professore sul canale YouTube di Computerphile .

“È sempre stato imbarazzante che AWK funzioni solo con input ASCII, o forse a 8 bit, ma non gestisca affatto Unicode”, ha detto Kernighan all’intervistatore Professor Balesford. “Alcuni mesi fa ho passato un po’ di tempo a lavorare (ride) con un programma incredibilmente vecchio. Ce l’ho al momento in cui gestisce effettivamente l’input e l’output UTF-8, quindi puoi avere espressioni regolari che, sai, raccolgono caratteri giapponesi e roba del genere.

Kernighan, che ora ha 80 anni, menziona casualmente in un’intervista di aver anche sistemato qualcosa di “rapido e sporco” per consentire ad AWK di elaborare i file CSV.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *