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"

(Move links to subpages)
 
(21 intermediate revisions by 5 users not shown)
Line 1: Line 1:
 
[[Image:Henshin_small.png|200px|right|Henshin logo]]
 
[[Image:Henshin_small.png|200px|right|Henshin logo]]
 +
 +
''Important links:'' [[Henshin/Installation instructions|Installation instructions]] |  [[Henshin/Getting started|Getting started]] |  [[Henshin/Examples|Examples]]  | [[Henshin/FAQ|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:  
 
'''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:  
  
*Support for endogenous as well as [[Henshin/Trace Model|exogenous]] transformations
+
'''Basic transformation definition and execution'''
*Natural treatment and efficient [[Henshin/Interpreter|in-place execution]] of endogenous transformations
+
* [[Henshin/Graphical_Editor#Editing_Transformation_Rules|Rule]]-based transformation  paradigm with [[Henshin/Units|units]] for managing control flow of rules
*[[Henshin/Transformation Meta-Model|Meta-model]] and [[Henshin/Graphical Editor|graphical syntax]] for transformations  
+
* [[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
 
*[[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
 
*Support for [[Henshin/Code Generator for Giraph|massive parallel rule execution]] using Apache Giraph
*Support for [[Henshin/Critical Pair Analysis|critical pair analysis]]
 
  
 
=== Resources ===
 
=== Resources ===
  
 
* [http://www.eclipse.org/modeling/emft/henshin Official website]
 
* [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/FAQ|FAQ]]
 +
* [[Henshin/Release Notes|Release Notes]]
 +
* [[Henshin/Committer Instructions|Committer Instructions]]
 +
* [[Henshin/Projects|Projects that use Henshin]]
  
 
=== Screenshots ===
 
=== Screenshots ===

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