  Effective model-driven engineering of complex systems requires to
appropriately describe different specific system aspects. To this end,
efficient integration of different heterogeneous modeling languages is
essential. Modeling language integaration is onerous and requires in-depth
conceptual and technical knowledge and ef- fort. Traditional modeling lanugage
integration approches require language engineers to compose monolithic language
aggregates for a specific task or project. Adapting these aggregates cannot be
to different contexts requires vast effort and makes these hardly reusable.
This contribution presents a method for the engineering of grammar-based
language components that can be independently developed, are syntactically
composable, and ultimately reusable. To this end, it introduces the concepts of
language aggregation, language embed- ding, and language inheritance, as well
as their realization in the language workbench MontiCore. The result is a
generalizable, systematic, and efficient syntax-oriented composition of
languages that allows the agile employment of modeling languages efficiently
tailored for individual software projects.
