In this thesis, a product-line approach provides the support for a reusable translator framework; a grammar convergence reverse-engineering approach enables to extract common models from programming languages and... Lire la suite
The need for translating program source-code between many different programming languages arises in some domains for which many such languages coexist. One such domain is that of space-mission planning, where a family of operations languages exists: different space operators use different languages to capture the operational knowledge to test and to control spacecrafts.
Building a program translator from a single source to a target language already requires considerable time and effort because of the inherent complexity of every step in the process. If in addition, there is a big family of many such languages in some application domain, the problem of creating program translators between any of them becomes prohibitive.
In this thesis we address this translation problem by combining several techniques to generate a family of program translators: a product-line approach provides the support for a reusable translator framework; a grammar convergence reverse-engineering approach enables to extract common models from programming languages and programs, and a language-parametric grammarware approach provides the specific translation and transformation techniques.
The need for translating program source-code between many different programming languages arises in some domains for which many such languages coexist. One such domain is that of space-mission planning, where a family of operations languages exists: different space operators use different languages to capture the operational knowledge to test and to control spacecrafts.
Building a program translator from a single source to a target language already requires considerable time and effort because of the inherent complexity of every step in the process. If in addition, there is a big family of many such languages in some application domain, the problem of creating program translators between any of them becomes prohibitive.
In this thesis we address this translation problem by combining several techniques to generate a family of program translators: a product-line approach provides the support for a reusable translator framework; a grammar convergence reverse-engineering approach enables to extract common models from programming languages and programs, and a language-parametric grammarware approach provides the specific translation and transformation techniques.
1 Introduction 17
1.1 Context . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.2 Problem and Thesis Statement. . . . . . . . . . . . . . . . . . 19
1.3 Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . .