Syntax-Directed Definitions: give high-level specifications for translations; hide many implementation details such as order of evaluation of semantic actions.