Difference between revisions of "M2T/MTL Relaunch Plan"

From Eclipsepedia

< M2T
Jump to: navigation, search
(New page: The attached document describes the plan (as of Dec 20, 2007) to relaunch the MTL component. The component is intended to be an implementation of the Object Management Groups (OMG) MOF Mod...)
 
(Included plan inline)
Line 1: Line 1:
The attached document describes the plan (as of Dec 20, 2007) to relaunch the MTL component. The component is intended to be an implementation of the Object Management Groups (OMG) MOF Models to Text Language. The original MTL development was abandoned by its original sponsor. See the [http://www.omg.org/technology/documents/modeling_spec_catalog.htm#MOF2TEXT OMG specification] for details on the language.
+
== Introduction ==
 +
The MTL component is an open source component under the Eclipse Modelling / Model To Text
 +
(M2T) project <ref>Eclipse Model To Text (M2T) project</ref>. Its primary goal is to provide an implementation of the MOF 2 Text OMG
 +
standard <ref>OMG MOF Models to Text Transformation Language Final Adopted Specification, OMG
 +
document ptc/07-08-16
 +
</ref>.
  
M2T committers are asked to vote on the relaunch plan via the m2t-dev mailing list, by replying with a +1, 0 or -1 on the thread for the proposal.
+
This proposal is written to declare its intent and scope.
 +
== Background ==
 +
The Eclipse M2T project aims at developing Model To Text tools and to reduce the duplicate effort
 +
involved in developing and maintaining template languages. Currently, there are three languages
 +
components within M2T : JET, Xpand and MTL being the OMG MOF Model to Text
 +
implementation.
 +
 
 +
== Description ==
 +
This document focuses on proposing an implementation as an entirely new development of the
 +
OMG MOF Model to Text (Mof2Text) language. The implementation will be compliant with the
 +
core feature compliance level of the Mof2Text language to start with, then with the advanced
 +
feature compliance.
 +
 
 +
=== Proposed components ===
 +
* Standalone components (based on EMF Runtime)
 +
** Engine: The engine will generate text based on the reflective API of EMF
 +
** Parser : the compiler creates a EMF representation of the template
 +
* Eclipse IDE components
 +
** Eclipse Builder with error detection and error marking
 +
** Template editor with code completion and syntax highlighting
 +
** Export a generator as a plugin wizard
 +
** Debugger
 +
 
 +
=== Reused components ===
 +
The Eclipse MTL will be built on top of the Eclipse Platform. EMF will be used for accessing the
 +
models by the MTL execution engine and the MTL component will be integrated with the Model
 +
Workflow Engine (MWE). It will also participate in building and/or reusing some of the M2T
 +
common components like M2T-core and M2T-shared.
 +
 
 +
The MDT-OCL component will be reused to edit and parse OCL as a sub-language of MTL. It will
 +
also be used to interpret OCL by the MTL runtime engine. Reuse of the Eclipse IMP component
 +
(http://www.eclipse.org/proposals/imp/) will be considered at the beginning of the project.
 +
 
 +
The team is composed of the creators and contributors of the Acceleo code generator project
 +
(http://www.acceleo.org) and of contributors of MOF 2 Text and QVT-R OMG specifications. No
 +
initial contribution will be made for MTL since this will be an entirely new development. The team
 +
will re-use its knowledge to build an exemplary implementation of the OMG MOF To Text
 +
standard.
 +
 
 +
== Proposed initial committers ==
 +
* Jonathan Musset – jonathan.musset@obeo.fr - (proposed project lead)
 +
* Arjan Kok - arjan.kok@gmail.com
 +
* Wim Bast - wim.bast@xs4all.nl
 +
* Cedric Brun – cedric.brun@obeo.fr
 +
* Laurent Goubet – laurent.goubet@obeo.fr
 +
 
 +
== Interested parties ==
 +
* Obeo
 +
* IBM - Ed Merks
 +
* IBM - Paul Elder
 +
* Borland - Rich Gronback
 +
* CEA List - France
 +
 
 +
== Tentative Plan ==
 +
MTL 1.0 planned for June 2009 including standalone engine and parser, first MTL syntax support,
 +
(core feature compliance level of the Mof2Text language) Eclipse IDE components MWE
 +
integration and documentation.
 +
 
 +
In the meantime, component opening is planned for January 2008, and standalone engine will be
 +
available by June 2008.
 +
 
 +
== Reference ==
 +
<references/>

Revision as of 10:46, 20 December 2007

Contents

Introduction

The MTL component is an open source component under the Eclipse Modelling / Model To Text (M2T) project [1]. Its primary goal is to provide an implementation of the MOF 2 Text OMG standard [2].

This proposal is written to declare its intent and scope.

Background

The Eclipse M2T project aims at developing Model To Text tools and to reduce the duplicate effort involved in developing and maintaining template languages. Currently, there are three languages components within M2T : JET, Xpand and MTL being the OMG MOF Model to Text implementation.

Description

This document focuses on proposing an implementation as an entirely new development of the OMG MOF Model to Text (Mof2Text) language. The implementation will be compliant with the core feature compliance level of the Mof2Text language to start with, then with the advanced feature compliance.

Proposed components

  • Standalone components (based on EMF Runtime)
    • Engine: The engine will generate text based on the reflective API of EMF
    • Parser : the compiler creates a EMF representation of the template
  • Eclipse IDE components
    • Eclipse Builder with error detection and error marking
    • Template editor with code completion and syntax highlighting
    • Export a generator as a plugin wizard
    • Debugger

Reused components

The Eclipse MTL will be built on top of the Eclipse Platform. EMF will be used for accessing the models by the MTL execution engine and the MTL component will be integrated with the Model Workflow Engine (MWE). It will also participate in building and/or reusing some of the M2T common components like M2T-core and M2T-shared.

The MDT-OCL component will be reused to edit and parse OCL as a sub-language of MTL. It will also be used to interpret OCL by the MTL runtime engine. Reuse of the Eclipse IMP component (http://www.eclipse.org/proposals/imp/) will be considered at the beginning of the project.

The team is composed of the creators and contributors of the Acceleo code generator project (http://www.acceleo.org) and of contributors of MOF 2 Text and QVT-R OMG specifications. No initial contribution will be made for MTL since this will be an entirely new development. The team will re-use its knowledge to build an exemplary implementation of the OMG MOF To Text standard.

Proposed initial committers

  • Jonathan Musset – jonathan.musset@obeo.fr - (proposed project lead)
  • Arjan Kok - arjan.kok@gmail.com
  • Wim Bast - wim.bast@xs4all.nl
  • Cedric Brun – cedric.brun@obeo.fr
  • Laurent Goubet – laurent.goubet@obeo.fr

Interested parties

  • Obeo
  • IBM - Ed Merks
  • IBM - Paul Elder
  • Borland - Rich Gronback
  • CEA List - France

Tentative Plan

MTL 1.0 planned for June 2009 including standalone engine and parser, first MTL syntax support, (core feature compliance level of the Mof2Text language) Eclipse IDE components MWE integration and documentation.

In the meantime, component opening is planned for January 2008, and standalone engine will be available by June 2008.

Reference

  1. Eclipse Model To Text (M2T) project
  2. OMG MOF Models to Text Transformation Language Final Adopted Specification, OMG document ptc/07-08-16