A lenda do Unix que não nos deve nada continua a corrigir o código AWK subjacente
Um professor de Princeton, encontrando algum tempo para si mesmo em uma calmaria acadêmica de verão, enviou um e-mail a um velho amigo alguns meses atrás. Brian Kernighan disse olá, perguntou como estava indo sua visita aos Estados Unidos e enviou centenas de linhas de código que poderiam adicionar suporte Unicode ao AWK, uma ferramenta de análise de texto que ele ajudou a construir para Unix no Bell Labs em 1977.
“Eu testei bastante, mas mais testes são claramente necessários”, escreveu Kernighan em um e-mail postado como uma espécie de pseudo-commit no repositório onetrueawk pelo mantenedor de longa data Arnold Robbins. “Assim que eu descobrir como… vou tentar enviar um pull request. Eu gostaria de entender melhor o git, mas apesar de sua ajuda, ainda não tenho o entendimento correto, então pode demorar um pouco.”
Kernighan é o “K” em AWK , uma linguagem de controle e extração de propósito especial que foi a chave para funções de pipeline Unix e interoperabilidade entre sistemas. Um awk
recurso em execução (AWK é uma linguagem, awk
um comando para chamá-lo) é crítico tanto para a especificação do padrão UNIX quanto para a certificação IEEE POSIX em termos de interoperabilidade. Existem inúmeras variações de awk
, mas “One True AWK”, às vezes conhecido como nawk
, é uma versão baseada no livro de Kernighan de 1985, The AWK Programming Language e sua entrada subsequente.
Kernighan também é o “K” em “K&R C”, o seminal livro de 1978 The C Programming Language que ele co-escreveu com Dennis Ritchie, que permanece com os programadores, mentalmente e em papel surrado. As raízes de Xi são muito mais profundas. Kernighan treinou C no Bell Labs e convenceu seu criador, Dennis Ritchie, a colaborar em um livro para disseminar o conhecimento. Este livro gerou “o único estilo verdadeiro de chaves”, o debate interminável que o acompanha e a estrutura que sustenta toda linguagem de programação moderna.
Kernighan também nomeou Unix e foi o primeiro a demonstrar o exemplo de código “Hello, world”. Ele falou com Richard Jensen da Ars Technica sobre 50 anos de história do Unix.
O repositório onetrueawk, onde Kernighan apareceu no final de maio, é um lugar relativamente tranquilo com 21 colaboradores, 46 usuários do GitHub assistindo e commits aparecendo a cada poucos meses. Conforme observado pelo The Register , a correção do Unicode de Kernighan ficou conhecida principalmente porque foi mencionada em uma entrevista com o professor no canal do Computerphile no YouTube .
“Sempre foi embaraçoso que o AWK só funciona com ASCII, ou talvez entrada de 8 bits, mas não lida com Unicode”, disse Kernighan ao entrevistador Professor Balesford. “Alguns meses atrás eu passei um tempo trabalhando (risos) com um programa incrivelmente antigo. Eu o tenho no momento em que realmente lida com entrada e saída UTF-8, então você pode ter expressões regulares que, você sabe, pegam caracteres japoneses e outras coisas.”
Kernighan, agora com 80 anos, menciona casualmente em uma entrevista que também consertou algo “rápido e sujo” para permitir que o AWK processasse arquivos CSV.
Deixe um comentário