We are looking for highly motivated PhD candidates in software language engineering and model-driven engineering.
Keywords: Software Engineering, Model Driven Engineering, Language Design and Implementation, Software Language Engineering
Main Contact: Benoit Combemale
Domain-Specific Languages (DSLs) are plain languages, in the sense that many difficult design decisions must be taken during their construction and maintenance, and that they can take different shapes: plain-old to more fluent APIs; internal or embedded DSLs written inside an existing host language; external DSLs with their own syntax and domain-specific tooling. All shapes of DSLs have strengths and weaknesses – whether you are a developer or a user of a DSL. The basic trade-offs between internal and external DSLs have been already identified and are subject to extensive discussions and research for several years. A new trend though is observed. DSLs are now so widespread that very different users with separate roles and varied objectives use them. Depending on the kinds of users, roles or objectives, an external shape or an internal shape of a language might be a better solution.
Beyond the unification of the different approaches, we will explore the ability of DSLs to be self-adaptable to the most appropriate shape (including the corresponding IDE) according to a particular usage or task; such a DSL is called metamorphic DSL.
From the same language description and different interface specifications, we envision the ability to derive various IDEs that can be used accordingly. This vision raises many challenges: systematic methods to evaluate when a shape of a DSL meets the expected properties (e.g., learnability); artefact modularization; information sharing, while being able to visualize and manipulate an artefact in a particular representation and in a particular IDE; global mechanism to ensure consistency of the artefacts between these heterogeneous IDEs.
[notice]Mathieu Acher, Benoît Combemale, Philippe Collet. Metamorphic Domain-Specific Languages: A Journey Into the Shapes of a Language. Research Report, cf. http://arxiv.org/abs/1404.6838[/notice]
The candidate will work at INRIA in the DIVERSE team (workplace: Université Rennes 1, Campus de Beaulieu, 35000 Rennes, France), the contract is for 36 months, and the monthly net salary is 1600 euros.
DIVERSE’s research is in the area of software engineering, focusing on the management of diversity in the construction of software intensive systems. The team is actively involved in European, French and industrial projects and is composed of 8 faculty members, 18 PhD students, 5 postdocs and 4 engineers.
How to apply
Please send your application (PDF) as soon as possible. Screening of applications starts immediately and continues until the position is filled. Send cover letter including names of at least two referees, CV, PDFs of Master thesis (or draft), and possibly up to three most relevant publications to Benoit Combemale, Mathieu Acher and Benoit Baudry.