This month we celebrate the birthday of one of the computing coding industry’s most notable authors – Peter J Weinberger. Peter, who turned 71 last week on the 6th, is one of the co-authors of the programming language AWK, and it is for him the W is named after. Introduced in 1977, it was one of the earliest tools to appear in Version 7 of Unix and was the only scripting language at that time to be available in a standard Unix environment (apart from the Bourne shell). AWK is Turing-complete (it can be used to simulate any single-taped Turning machine) and is a cross-platform language, making it very versatile.
Why Code in AWK?
When AWK was initially released, coders were impressed by:
• Its power to add computational features to a Unix pipeline. Almost all operating systems can handle AWK, and the corresponding book, The AWK Programming Language (1988) written by AWK’s coding authors helped users to implement it, aiding functionality.
• It could be used to write large, well-structured programs, something that wasn’t initially thought possible due to limitations in its intended area of use.
• It was fast, simple and small, with comprehensible coding that was easy to learn and understand
• It worked well with text-processing and was actually written with the intent to be simple to those not particularly computer-savvy, to write “throw-away” programs for routine data processing tasks.
AWK Achievements
• When the language was introduced, some Wall Street banks used it to balance their books, based on the simplicity of use for data processing.
• Despite massive leaps in the computer industry since AWK’s release, it still consistently ranks in the top 25 programming languages in the world.
• The Perl language, written by Larry Wall, was inspired by AWK. Perl is now one of the most widely used programming languages in the world.
• AWK still runs on its last stable release from 1988 – incredible for a language so widely used.
AWK Today
AWK has been extensively developed since 1977 and is one of the mandatory utilities of the Single Unix Specification (SUS). There are a range of practical programs/functions written in awk as well as rewrites of common POSIX programs in awk, including cut, split and Egrep.
AWK’s Authors
AWK was written by Weinberger alongside Alfred Aho and Brian Kernighan; all 3 have gone on to continue their successful careers in computer science; Weinberger currently works at Google, Aho a researcher at Columbia University (Language and Compiler’s Research Group) and Kernighan a professor in the dept of Computer Science at the University of Toronto.