| |
| <p> |
| The <a href="http://www.eclipse.org/projects/project_summary.php?projectid=modeling.emft.henshin">Henshin project</a> |
| provides a state-of-the-art model transformation language for the |
| <a href="http://www.eclipse.org/modeling/emf">Eclipse Modeling Framework</a>. |
| Henshin supports both direct transformations of EMF single model instances |
| (endogenous transformations), and translation of source model instances |
| into a target language (exogenous transformations). |
| </p> |
| |
| <style> |
| a.lnk { color: white; text-decoration: none } |
| </style> |
| |
| <div style="margin-top: 30px; margin-bottom:30px;"> |
| <span style="background: #7036d0; padding: 10px; font-family: Calibri, Verdana; font-weight: bold; display: inline-block;font-size: 12pt; width: 120px; text-align:center;"> <a href="install.php" class="lnk">INSTALL</a> </span> |
| <span style="background: #7036d0; padding: 10px; font-family: Calibri, Verdana; font-weight: bold; display: inline-block;font-size: 12pt; width: 120px; text-align:center;"> <a href="get-involved.php" class="lnk">GET INVOLVED</a> </span> |
| <span style="background: #7036d0; padding: 10px; font-family: Calibri, Verdana; font-weight: bold; display: inline-block;font-size: 12pt; width: 120px; text-align:center;"> <a href="https://twitter.com/henshintool" target="_blank" class="lnk">FOLLOW US</a> </span> |
| </div> |
| |
| <h2>Features</h2> |
| |
| The Henshin language and tool set supports, among others, the following features: |
| <ul> |
| <li>Expressive <a href="https://wiki.eclipse.org/Henshin_Transformation_Meta-Model">transformation language</a> with a <a href="http://wiki.eclipse.org/Henshin_Graphical_Editor">graphical syntax</a></li> |
| <li>Pattern matching and control-flow constructs with parameter passing</li> |
| <li>Support for <a href="http://en.wikipedia.org/wiki/Model_transformation#Endogenous_versus_exogenous">endogenous and exogenous transformations</a></li> |
| <li>Natural treatment and efficient in-place execution of endogenous transformations</li> |
| <li>Arbitrary m-to-n exogenous transformations using a flexible generic <a href="http://wiki.eclipse.org/Henshin_Trace_Model">trace model</a></li> |
| <li>Formal graph transformation semantics</li> |
| <li>Arbitrary mixing of different graph transformation styles (<a href="http://en.wikipedia.org/wiki/Graph_rewriting">DPO/SPO</a>)</li> |
| <li>Efficient <a href="http://wiki.eclipse.org/Henshin_Interpreter">interpreter engine</a> based on constraint solving</li> |
| <li>Verification using <a href="http://wiki.eclipse.org/Henshin_State_Space_Tools">state space tools</a></li> |
| <li><a href="https://wiki.eclipse.org/Henshin_Code_Generator_for_Giraph">Code generator</a> for Apache Giraph</li> |
| <li>Conflict and dependency detection in transformations using <a href="https://wiki.eclipse.org/Henshin_Critical_Pair_Analysis">critical pair analysis</a></li> |
| </ul> |
| |