Each action is coded in a language resembling a subset of C, with
variables and conditionals and loops and an ontology of types
including integers, strings, and (unlike C)
dictionaries.[89]
The awk action language is
Turing-complete, and can read and write files. In some versions it can
open and use network sockets. But awk has
primarily seen use as a report generator, especially for interpreting
and reducing tabular data. It is seldom used standalone, but rather
embedded in scripts. There is an example
awk program in the case study on HTML generation included in
Chapter9.