La leyenda de Unix que no nos debe nada sigue arreglando el código AWK subyacente
Un profesor de Princeton, encontrando algo de tiempo para sí mismo en una pausa académica de verano, envió un correo electrónico a un viejo amigo hace un par de meses. Brian Kernighan saludó, preguntó cómo iba su visita a EE. UU. y envió cientos de líneas de código que podrían agregar compatibilidad con Unicode a AWK, una herramienta de análisis de texto que ayudó a crear para Unix en Bell Labs en 1977.
«He probado esto bastante, pero claramente se necesitan más pruebas», escribió Kernighan en un correo electrónico publicado como una especie de pseudo-compromiso con el repositorio onetrueawk por parte del mantenedor Arnold Robbins. “Una vez que descubra cómo… intentaré enviar una solicitud de extracción. Desearía poder entenderlo mejor, pero a pesar de su ayuda, todavía no tengo la comprensión correcta, por lo que podría llevar un tiempo».
Kernighan es la «K» en AWK , un lenguaje de control y extracción de propósito especial que fue clave para las funciones de canalización de Unix y la interoperabilidad entre sistemas. Una awk
característica en ejecución (AWK es un lenguaje, awk
un comando para llamarlo) es fundamental tanto para la especificación estándar de UNIX como para la certificación IEEE POSIX en términos de interoperabilidad. Existen innumerables variaciones de awk
, pero «One True AWK», a veces conocido como nawk
, es una versión basada en el libro de Kernighan de 1985 El lenguaje de programación AWK y su entrada posterior.
Kernighan también es la «K» en «K&R C», el libro seminal de 1978 El lenguaje de programación C que coescribió con Dennis Ritchie, que permanece con los programadores, mentalmente y en papel maltratado. Las raíces de Xi son mucho más profundas. Kernighan entrenó a C en Bell Labs y convenció a su creador Dennis Ritchie para colaborar en un libro para difundir el conocimiento. Este libro generó «el único verdadero estilo de llave», el debate interminable que lo acompaña y la estructura que sustenta todos los lenguajes de programación modernos.
Kernighan también nombró a Unix y fue el primero en demostrar el ejemplo de código «Hola, mundo». Habló con Richard Jensen de Ars Technica sobre los 50 años de historia de Unix.
El repositorio onetrueawk, donde apareció Kernighan a fines de mayo, es un lugar relativamente tranquilo con 21 colaboradores, 46 usuarios de GitHub observando y confirmaciones que aparecen cada pocos meses. Como señaló The Register , la solución Unicode de Kernighan se hizo conocida principalmente porque se mencionó en una entrevista con el profesor en el canal de YouTube de Computerphile .
“Siempre ha sido vergonzoso que AWK solo funcione con ASCII, o tal vez con entrada de 8 bits, pero en realidad no maneja Unicode en absoluto”, dijo Kernighan al profesor Balesford, quien lo entrevistó. “Hace unos meses pasé un tiempo trabajando (risas) con un programa increíblemente antiguo. Lo tengo en el momento en que realmente maneja la entrada y salida UTF-8, por lo que puede tener expresiones regulares que, ya sabes, recogen caracteres japoneses y esas cosas”.
Kernighan, ahora de 80 años, menciona casualmente en una entrevista que también arregló algo «rápido y sucio» para permitir que AWK procese archivos CSV.
Deja una respuesta