ALCHEMIST is a general purpose transformation generating environment,
which supports specification, generation and execution of data transfo
rmations. ALCHEMIST allows an abstract specification of the transforma
tion through a window-based interface and supports the generation and
compilation of transformation program code from these specifications.
Unlike compiler-compilers, ALCHEMIST is intended to automate building
transformations between two complex representation formats and is thus
especially suitable for constructing transformations between database
tools, CASE tools, graphical editors or text formatters. In this pape
r we describe the design principles and the structure of ALCHEMIST, an
d demonstrate its use. We also discuss our experiences with several ex
ample transformations and present a real-life case study of using ALCH
EMIST for interfacing two software development environments.