Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Henshin"

 
(36 intermediate revisions by 8 users not shown)
Line 1: Line 1:
 +
[[Image:Henshin_small.png|200px|right|Henshin logo]]
  
[http://www.eclipse.org/modeling/emft/henshin Henshin] is an in-place model transformation language for the Eclipse Modeling Framework ([[EMF]]). It supports direct transformations of EMF model instances (endogenous transformations), as well as generating instances of a target language from given instances of a source language (exogenous transformations). Its main features are:
+
''Important links:'' [[Henshin/Installation instructions|Installation instructions]] |  [[Henshin/Getting started|Getting started]] |  [[Henshin/Examples|Examples]]  | [[Henshin/FAQ|FAQ]]
* Support for endogenous as well as exogenous transformations
+
 
* Natural treatment and efficient in-place execution of endogenous transformations
+
'''Henshin''' is an in-place model transformation language for the [[Eclipse Modeling Framework]] (EMF). It supports direct transformations of EMF model instances (endogenous transformations), as well as generating instances of a target language from given instances of a source language (exogenous transformations). Its main features are:  
* Graphical syntax
+
 
* Support for static analysis of transformations
+
'''Basic transformation definition and execution'''
 +
* [[Henshin/Graphical_Editor#Editing_Transformation_Rules|Rule]]-based transformation  paradigm with [[Henshin/Units|units]] for managing control flow of rules
 +
* [[Henshin/Graphical Editor|Graphical]] and [[Henshin/Textual Editor|textual syntax]], based on a transformation [[Henshin/Transformation Meta-Model|meta-model]]
 +
* Native support for endogenous transformations;  support of exogenous transformations via [[Henshin/Trace Model|traces]]
 +
* Efficient in-place execution of transformations using a dedicated [[Henshin/Interpreter|interpreter]] with debugging support
 +
 
 +
 
 +
'''Analysis'''
 +
*A [[Henshin/Performance Profiler|performance profiler]] to identify slow spots 
 +
*Support for [[Henshin/Conflict and Dependency Analysis|conflict and dependency analysis]]
 +
*[[Henshin/State Space Tools|State space analysis]] for verification
 +
 
 +
<br />
 +
'''Advanced rule definition'''
 +
*Support for [[Henshin/Variant Management|rule variants]]
 +
*Support for [[Henshin/Rule Generation|automated rule generation]]
 +
*Support for [[Henshin/OCL2AC|generating application conditions from OCL constraints]]
 +
 
 +
<br />
 +
'''Integration with other tools'''
 +
*Integration with [[Henshin/Xtext Adapter|Xtext]]
 +
*Support for [[Henshin/Code Generator for Giraph|massive parallel rule execution]] using Apache Giraph
 +
 
 +
=== Resources ===
 +
 
 +
* [http://www.eclipse.org/modeling/emft/henshin Official website]
 +
* [[Henshin/Installation instructions|Installation instructions]]
 +
* [[Henshin/Getting started|Getting started]]
 +
* [[Henshin/Examples|Examples]] 
 +
* [[Henshin/FAQ|FAQ]]
 +
* [[Henshin/Release Notes|Release Notes]]
 +
* [[Henshin/Committer Instructions|Committer Instructions]]
 +
* [[Henshin/Projects|Projects that use Henshin]]
 +
 
 +
=== Screenshots ===
 +
 
 +
[[Image:Henshin_example_transformation_rule.png|250px|Henshin transformation editors]] &nbsp;&nbsp;&nbsp;
 +
[[Image:Statespace-explorer-phil-win32.png|200px|Henshin state space explorer]]
 +
 
 +
[[Category:Henshin]][[Category:Modeling]]

Latest revision as of 14:24, 12 February 2023

Henshin logo

Important links: Installation instructions | Getting started | Examples | FAQ

Henshin is an in-place model transformation language for the Eclipse Modeling Framework (EMF). It supports direct transformations of EMF model instances (endogenous transformations), as well as generating instances of a target language from given instances of a source language (exogenous transformations). Its main features are:

Basic transformation definition and execution

  • Rule-based transformation paradigm with units for managing control flow of rules
  • Graphical and textual syntax, based on a transformation meta-model
  • Native support for endogenous transformations; support of exogenous transformations via traces
  • Efficient in-place execution of transformations using a dedicated interpreter with debugging support


Analysis


Advanced rule definition


Integration with other tools

Resources

Screenshots

Henshin transformation editors     Henshin state space explorer

Back to the top