CodeWorker is a versatile parsing tool and a universal source code generator. It interprets a scripting language for producing reusable, tailor-made, evolving, and reliable IT systems with a high level of automation. The file formats to parse are described in an extended-BNF syntax. Template-based scripts drive the writing of patterns for generating code or text. The code generation knows how to preserve protected areas with hand-typed code and provides code expansion, source-to-source translation, and program transformation. It provides a native translation of CodeWorker's scripts in C++.
Stratego/XT is a development environment for creating stand-alone transformation systems. It combines Stratego, a language for implementing transformations based on the paradigm of programmable rewriting strategies, with XT, a collection of reusable components and tools for the development of transformation systems. In general, Stratego/XT is intended for the analysis, manipulation, and generation of programs, though its features make it useful for transforming any structured documents. In practice, it has been used to build many types of transformation systems including compilers, interpreters, static analyzers, domain-specific optimizers, code generators, source code refactorers, documentation generators, and document transformers.