awk: venerable swiss army knife

We will not be looking at awk this semester. In fact, we will not be looking at most programming languages this semester.

What is awk? From the start of a multipart tutorial on the language:

Awk is a programming language which allows easy manipulation of structured data and the generation of formatted reports. Awk stands for the names of its authors “Aho, Weinberger, and Kernighan”

Handy. (Also note... that's the same Kernighan I mentioned with respect to the C programming language...) Along with sed, it is the one-two punch of command-line text processing.

Now see Yet Another Sudoku Puzzle Solver Using Awk. It's a 67-line sudoku puzzle solver. (They also link to a Python sudoku puzzle generator.) I mention it because that is pretty concise, and awk itself is a useful tool for all kinds of text and data manipulation functions in the *NIX world.

Do I expect you to do anything (right now) with this information? No. However, I do expect, after taking this course, that you'll realize that for every problem you have in computing, there is probably a tool that is well suited to solving it. It's probably just the case that you don't know about that tool...

(Found via Make: Blog.)

Creative Commons License This work is licensed under a CC BY-SA 3.0 License.