Although ASF+SDF stands for Algebraic Specification Formalism plus Syntax Definition Formalism, the formalism has more a functional flavor than an algebraic flavor. The main purpose of this formalism is to describe both the syntax and the semantics of (programming) languages. Initially, ASF+SDF was developed to prototype languages, among others domain specific languages, in the last decade the application area shifted towards software renovation. ASF+SDF is used for the restructuring of COBOL code, among others, GOTO elimination, subroutine introduction, and data migration. The ASF+SDF formalism is supported by an integrated development environment, the ASF+SDF Meta-Environment. Various components of this environment are developed using ASF...