LLMpediaThe first transparent, open encyclopedia generated by LLMs

Acceleo

Generated by GPT-5-mini
Note: This article was automatically generated by a large language model (LLM) from purely parametric knowledge (no retrieval). It may contain inaccuracies or hallucinations. This encyclopedia is part of a research project currently under review.
Article Genealogy
Parent: Xtext Hop 4
Expansion Funnel Raw 69 → Dedup 0 → NER 0 → Enqueued 0
1. Extracted69
2. After dedup0 (None)
3. After NER0 ()
4. Enqueued0 ()

Acceleo Acceleo is a model-to-text code generator originating from the model-driven engineering community. It targets generation of source code, configuration files, documentation, and other textual artifacts from models conforming to standards. Major adopters include companies and projects in model-driven development, with integrations into prominent tooling ecosystems and research initiatives.

Overview

Acceleo operates within the ecosystem of model-driven engineering alongside Eclipse Foundation, Object Management Group, Eclipse Modeling Framework, Model-Driven Architecture, and Unified Modeling Language. It implements transformations from metamodel instances to textual artifacts using a template language derived from standards like Query/View/Transformation. The tool is commonly used with modeling editors such as Papyrus, Sirius (software), EMFText, Xtext, and with platform projects including Eclipse IDE, Eclipse Che, Visual Studio Code, and JetBrains IntelliJ IDEA. Industrial and academic users link Acceleo workflows with continuous integration solutions like Jenkins, Travis CI, GitHub Actions, and GitLab CI/CD.

History and Development

Acceleo emerged from initiatives in the mid-2000s that sought to operationalize concepts in model-driven engineering championed by organizations such as the Object Management Group and research centers like INRIA and CEA. Early development occurred within the Eclipse Foundation community, alongside projects like Eclipse Modeling Framework and Graphical Modeling Framework. Key milestones include alignment with standards motivated by the Model Driven Architecture vision and contributions from academic groups at institutions such as University of York, University of Manchester, École Polytechnique, and University of Düsseldorf. Over time, Acceleo evolved to interoperate with transformation languages exemplified by ATL (language), QVT, and query languages such as OCL.

Architecture and Features

Acceleo's architecture centers on a template-based generator engine that consumes models conforming to metamodels like those defined in Ecore and produces textual outputs. Core architectural components include a template compiler, a runtime engine, and an extensible library mechanism for utilities and services. Features encompass support for modular templates, templates parameters, query expressions, control structures, and traceability hooks for linking generated text back to model elements. It integrates with resource frameworks present in Eclipse Modeling Framework, versioning systems such as Apache Subversion and Git (software), and build tools like Apache Maven and Gradle. Advanced capabilities include incremental generation, localization support for character encodings and internationalization workflows used by projects such as GNU gettext adopters, and debugging facilities compatible with Eclipse Debugger components.

Usage and Integrations

Practitioners use Acceleo in software product line engineering with tools such as FeatureIDE and AHEAD Tool Suite and in domain-specific modeling with editors like Eclipse Sirius and language workbenches like Xtext. Integrations with continuous delivery pipelines rely on connectors to Jenkins, Bamboo, and repository hosting services such as GitHub, Bitbucket, and GitLab. In enterprise contexts, it appears alongside Maven archetypes, Apache Ant scripts, and containerization workflows involving Docker and orchestration with Kubernetes. Academic projects often integrate Acceleo with model transformation environments including EMF Compare, ATL (language), and verification tools like SPIN and Modelica-based toolchains.

Examples and Templates

Typical examples demonstrate generation of Java, C++, Python, or configuration formats from models. Example templates adapt to target technologies such as Java Platform, Standard Edition, C++ Standard Library, Python (programming language), YAML, JSON, and XML. Community-contributed template libraries provide scaffolding for frameworks like Spring Framework, Hibernate, AngularJS, React (JavaScript library), and Node.js. Tutorials often showcase end-to-end workflows with modeling tools like Papyrus producing UML models, which are fed into Acceleo templates to generate artifacts for Maven-based projects or Gradle builds, then packaged as Docker images for deployment.

Licensing and Community

Acceleo has been distributed under open-source licensing aligned with the Eclipse Public License and maintained within the Eclipse Foundation governance model. Its ecosystem includes contributions from corporate participants, independent consultants, and academic researchers affiliated with institutions such as University of Grenoble-Alpes, Technische Universität München, Imperial College London, and Massachusetts Institute of Technology. Community engagement occurs on channels including the Eclipse Foundation forums, mailing lists, issue trackers hosted on platforms such as GitHub, and collaborative events like EclipseCon and Modelica Conference. Commercial services and support are offered by companies that participate in the modeling ecosystem alongside consultancies focusing on model-driven engineering best practices.

Category:Model-driven engineering