Description language for regular and context-free languages. Includes algorithms for building FSMs, PDAs, deciding on strings, etc.