dynamic v&v in language-oriented modeling

46
Benoit Combemale (Inria & Univ. Rennes 1) http://people.irisa.fr/Benoit.Combemale [email protected] @bcombemale Dynamic Validation & Verification in Language-Oriented Modeling Workshop MoDeVVa @ MODELS 2016, Oct. 3 rd , 2016

Upload: benoit-combemale

Post on 16-Jan-2017

171 views

Category:

Software


1 download

TRANSCRIPT

Page 1: Dynamic V&V in Language-Oriented Modeling

Benoit Combemale (Inria & Univ. Rennes 1)http://people.irisa.fr/[email protected]@bcombemale

Dynamic Validation & Verification in Language-Oriented ModelingWorkshop MoDeVVa @ MODELS 2016, Oct. 3rd, 2016

Page 2: Dynamic V&V in Language-Oriented Modeling

Complex Software-Intensive Systems

Software intensive systems

- 2Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

• Multi-engineering approach• Some forms of domain-specific modeling • Software as integration layer• Openness and dynamicity

Page 3: Dynamic V&V in Language-Oriented Modeling

Aerodynamics

Authorities

Avionics

SafetyRegulations

Airlines

PropulsionSystem

MechanicalStructure

EnvironmentalImpact

NavigationCommunications

Human-Machine

Interaction

3

Multipleconcerns,

stakeholders, tools and methods

Page 4: Dynamic V&V in Language-Oriented Modeling

4

Aerodynamics

Authorities

Avionics

SafetyRegulations

Airlines

PropulsionSystem

MechanicalStructure

EnvironmentalImpact

NavigationCommunications

Human-Machine

Interaction

Heterogeneous Modeling

Page 5: Dynamic V&V in Language-Oriented Modeling

- 5Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

"the majority of MDE examples in our study followed domain-specific

modeling paradigms"

J. Whittle, J. Hutchinson, and M. Rouncefield, “The State of Practice in Model-Driven Engineering,” IEEE Software, vol. 31, no. 3, 2014, pp. 79–85.

Page 6: Dynamic V&V in Language-Oriented Modeling

Model-Driven Engineering (MDE)

- 6Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

Engineering Modeling Languages: Turning Domain Knowledge into Tools, by Benoit Combemale, Robert B. France, Jean-Marc Jézéquel, Bernhard Rumpe, Jim R.H. Steel, and Didier Vojtisek. Chapman and Hall/CRC, pp.398, 2016. Companion website: http://mdebook.irisa.fr

Page 7: Dynamic V&V in Language-Oriented Modeling

Model-Driven Engineering (MDE)

- 7Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

Editors(textuals, graphicals, …)

Test generators

Simulators

Analyzers

Refactoring

Checkers(static & dynamics)

Translators

Compilers

Code generators

Etc.

Engineering Modeling Languages: Turning Domain Knowledge into Tools, by Benoit Combemale, Robert B. France, Jean-Marc Jézéquel, Bernhard Rumpe, Jim R.H. Steel, and Didier Vojtisek. Chapman and Hall/CRC, pp.398, 2016. Companion website: http://mdebook.irisa.fr

Page 8: Dynamic V&V in Language-Oriented Modeling

- 8Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

J-M. Favre, D. Gasevic, R. Lämmel, and E. Pek. "Empirical language analysisin software linguistics," In Software Language Engineering, volume 6563 of LNCS, pages 316–326. Springer, 2011.

"Software languages are software too"

Page 9: Dynamic V&V in Language-Oriented Modeling

Software Language Engineering (SLE)

Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016 - 9

• Application of systematic, disciplined, and measurable approaches to the development, deployment, use, and maintenance of software languages

• Supported by various kind of "language workbench"• Eclipse EMF, Xtext, Sirius, Melange, GEMOC, Papyrus• Jetbrain’s MPS• Spoofax• MS DSL Tools• Etc.

• Various shapes and ways to implement software languages• External, internal or embedded DSLs, Profile, etc.• Grammar, metamodel, ontology, etc.

• More and more literature, a dedicated Intl. conference (ACM SLE, cf. http://www.sleconf.org)…

Page 10: Dynamic V&V in Language-Oriented Modeling

Context of the talk

Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016 - 10

MDE SLE

Page 11: Dynamic V&V in Language-Oriented Modeling

Context of the talk

Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016 - 11

MDE SLE

Software-Intensive Systems

DSMLs

Page 12: Dynamic V&V in Language-Oriented Modeling

Context of the talk

Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016 - 12

MDE SLE

Software-Intensive Systems

DSMLs

• Methods: patterns for executable metamodeling

• Tools: generative and generic approaches to automate the development of V&V tools

Page 13: Dynamic V&V in Language-Oriented Modeling

THE XDSML PATTERN FOR EXECUTABLE METAMODELING

- 13Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

?

1

Page 14: Dynamic V&V in Language-Oriented Modeling

Execution functions

Internal data/control event(e.g., method call, scheduler)or external (stimuli from env.)

Executiontrace

Executionstate

Domainmodel

The xDSML Pattern

- 14Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

Event DefinitionMetaModel

EDMM

Domain DefinitionMetaModel

DDMM

State DefinitionMetaModel

SDMM

<<merge>><<merge>>

<<merge>>

Trace ManagementMetaModel

TM3

<<import>>

Semantics Mapping

Semantics

<<triggeredBy>><<changes>>

Benoit Combemale, Xavier Crégut, Marc Pantel, "A Design Pattern to Build Executable DSMLs and associated V&V tools", In APSEC 2012

Benoît Combemale, Xavier Crégut, Pierre-Loïc Garoche, Xavier Thirioux, "Essay on SemanticsDefinition in MDE - An Instrumented Approach for Model Verification," In Journal of Software (JSW), 2009

Page 15: Dynamic V&V in Language-Oriented Modeling

The xDSML Pattern

- 15Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

Event DefinitionMetaModel

EDMM

Domain DefinitionMetaModel

DDMM

State DefinitionMetaModel

SDMM

<<merge>><<merge>>

<<merge>>

Trace ManagementMetaModel

TM3

<<import>>

Semantics Mapping

Semantics

<<triggeredBy>><<changes>>

• Mashup of metalanguages (Ecore, OCL, Kermeta) [Jézéquel et al., SoSyM’14]

• Efficient OCL checking [Sun et al., JOT’15]

• Domain-specific execution trace management [Bousse et al., MODELS’14, ECMFA’15]

• Omniscient and multi-dimensional model debugging [Bousse et al., SLE’15]

• Tracing executions back to a xDSML[Combemale et al., ECMFA’11]

Page 16: Dynamic V&V in Language-Oriented Modeling

The GEMOC Studio

- 16

http://gemoc.org/studio/

Benoit Combemale, Julien Deantoni, Olivier Barais, Arnaud Blouin, Erwan Bousse, Cédric Brun, Thomas Degueule and Didier Vojtisek, "A Solution to the TTC'15 Model Execution Case Using the GEMOC Studio," In 8th Transformation Tool Contest (TTC), 2015. Overall Winner

Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

Page 17: Dynamic V&V in Language-Oriented Modeling

Breathe Life Into Your Designer!

- 17Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

Model Animator

Operational Semantics

(executable)Model

(executable)Modeling

Language

MetamodelingLanguagesKermeta Ecore

aModel

trace manager, timeline, control panel,

omniscient debugger

Concrete Syntax

Graphical representation

Sirius

Graphical representation

DSA Executor

Interpreter

Diagram

Model Editor

Diagram

Domain-Specific Actions

Execution Functions Execution

Data

Abstract Syntax

Domain Model (Metamodel)

Legend

code generation

<<dependsOn>>

<<conformsTo>>

Page 18: Dynamic V&V in Language-Oriented Modeling

- 18

Activity Diagram Debugger

https://github.com/gemoc/activitydiagram

Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

Page 19: Dynamic V&V in Language-Oriented Modeling

- 19

Transformation Lg Debugger

https://github.com/tetrabox/minitl

Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

TETRABoxhttp://modeltransformation.net

/tetrabox/Wimmer, Bousse et al.

Page 20: Dynamic V&V in Language-Oriented Modeling

- 20

Arduino Designer (& Debugger)

https://github.com/gemoc/arduinomodeling

• Graphical animation• Breakpoint definition on model element• Multi-dimensional and efficient trace

management• Model debugging facilities (incl., timeline,

step backward, stimuli management, etc.)

Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

Page 21: Dynamic V&V in Language-Oriented Modeling

- 21

Arduino Designer (& Debugger)

https://github.com/gemoc/arduinomodeling

Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

• Graphical animation• Breakpoint definition on model element• Multi-dimensional and efficient trace

management• Model debugging facilities (incl., timeline,

step backward, stimuli management, etc.)• Concurrency simulation and formal analysis

Modern platforms are highly parallel (e.g., many-core, GPGPU, distributed platform).

Complex software systems are highly concurrent systems per

se (e.g., IoT, CPS).

Page 22: Dynamic V&V in Language-Oriented Modeling

Reifying Concurrency in xDSML: Limitations

- 22

• Concurrency remains implicit and ad-hoc in language design and implementation:

• Design: implicitly inherited from the meta-language used• Implementation: mostly embedded in the underlying execution

environment

• The lack of an explicit concurrency specification in language design prevents:

• leveraging the concurrency concern of a particular domain or platform• a complete understanding of the behavioral semantics• effective concurrency-aware analysis techniques• effective techniques for producing semantic variants• analysis of the deployment on parallel architectures

Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

Page 23: Dynamic V&V in Language-Oriented Modeling

Reifying Concurrency in xDSML: Grand Challenge

- 23

Cross fertilization in languages of the algorithm theory and the

concurrency theory

Leslie Lamport, “Turing Lecture: The Computer Science of Concurrency: The Early Years,” Com. ACM, vol. 58, no. 6, 2015, pp. 71–76.

"Concurrency models were generally event-based, and avoided the use of state. They did not easily describe algorithms or the usualway of thinking about them based on the standard model."

Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

Page 24: Dynamic V&V in Language-Oriented Modeling

Reifying Concurrency in xDSML: Approach

- 24Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

Algorithm Theory

Concurrency Theory

AbstractSyntax

(AS)

ConcreteSyntax

(CS)

Mas�cs Mas�sd

SemanticDomain

(SD)

AbstractSyntax

(AS)

ConcreteSyntax

(CS)

Mas�csDomain-Specific

Actions

Model of Concurrency

Page 25: Dynamic V&V in Language-Oriented Modeling

Reifying Concurrency in xDSML: Approach

- 25

Semantics

AS DSA MOC

Static Introduction

Delegation Pattern

Domain Model

Exec. function and data

Concurrency Model

The MoCC serves as a (family of) scheduler(s) of the executionfunctions that manipulate the execution data (i.e. program state)

Benoit Combemale, Cécile Hardebolle, Christophe Jacquet, Frédéric Boulanger, Benoit Baudry, "Bridgingthe Chasm between Executable Metamodeling and Models of Computation," In Software LanguageEngineering (SLE), 2012.

Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

Page 26: Dynamic V&V in Language-Oriented Modeling

Reifying Concurrency in xDSML: Approach

- 26

Benoit Combemale, Julien Deantoni, Matias Vara Larsen, Frédéric Mallet, Olivier Barais, Benoit Baudry, Robert France, "Reifying Concurrency for Executable Metamodeling," In Software Language Engineering (SLE), 2013

Semantics

AS DSA MOC

DSE (Domain Specific

Event) • Data • Control • Communication

The DSE serve as a mapping from the MOC to the DSA

Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

Page 27: Dynamic V&V in Language-Oriented Modeling

Reifying Concurrency in xDSML: Approach

- 27

Florent Latombe, Xavier Crégut, Benoît Combemale, Julien DeAntoni, Marc Pantel, "Weaving concurrencyin executable domain-specific modeling languages," In Software Language Engineering (SLE), 2015

Semantics

AS DSA MOC

DSE (Domain Specific

Event) • Data • Control • Communication

The DSEs serve as a protocol between the MOC and the DSA

Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

Page 28: Dynamic V&V in Language-Oriented Modeling

Weave Concurrency Constraints Into Your DSL!

- 28Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

Model Animator

Operational Semantics

Model of Concurrency and Communication

(executable)Model

(executable)Modeling

Language

MetamodelingLanguagesMoCCML Kermeta Ecore

Concurrency Constraints

Domain-Specific Events

aModelomniscient debugger,

concurrency explorer.

Concrete Syntax

Graphical representation

Sirius

Graphical representation

MOCC Solver DSA Executor

Execution Model Interpreter

Diagram

Model Editor

Diagram

Domain-Specific Actions

Execution Functions Execution

Data

Abstract Syntax

Domain Model (Metamodel)

Legend

code generation

<<dependsOn>>

<<conformsTo>>

Benoit Combemale, Julien Deantoni, Matias Vara Larsen, Frédéric Mallet, Olivier Barais, Benoit Baudry, Robert France, "Reifying Concurrency for Executable Metamodeling," In Software Language Engineering (SLE), 2013

Page 29: Dynamic V&V in Language-Oriented Modeling

- 29

Activity Diagram Debugger

https://github.com/gemoc/activitydiagram

Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

Page 30: Dynamic V&V in Language-Oriented Modeling

Coping with Semantic Variation Points

- 30Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

Florent Latombe, Xavier Crégut, Julien Deantoni, Marc Pantel, Benoit Combemale, "Coping withSemantic Variation Points in Domain-Specific Modeling Languages", In EXE@MoDELS 2015.

Page 31: Dynamic V&V in Language-Oriented Modeling

- 31

J. Whittle, J. Hutchinson, and M. Rouncefield, “The State of Practice in Model-Driven Engineering,” IEEE Software, vol. 31, no. 3, 2014, pp. 79–85.

"A clear challenge, then, is how to integrate

multiple DSLs."

Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

Page 32: Dynamic V&V in Language-Oriented Modeling

Multiplication of DSMLs

Increasing number ofstakeholders and

concerns- 32

Increasing number ofapplication domains

4

Aerodynamics

Authorities

Avionics

Safety Regulations

Airlines

Propulsion System

Mechanical Structure

Environmental Impact

Navigation Communications

Human-Machine

Interaction

Heterogeneous Modeling

Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

Page 33: Dynamic V&V in Language-Oriented Modeling

Globalization of Modeling Languages

- 33

• DSMLs are developed in an independent mannerto meet the specific needs of domain experts,

• DSMLs should also have an associatedframework that regulates interactions needed to support collaboration and work coordination across different system domains.

Benoit Combemale, Julien DeAntoni, Benoit Baudry, Robert B. France, Jean-Marc Jezequel, Jeff Gray, "Globalizing Modeling Languages," Computer, vol. 47, no. 6, pp. 68-71, June, 2014

Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

Page 34: Dynamic V&V in Language-Oriented Modeling

Globalization of Modeling Languages

- 34

Supporting coordinated use of modelinglanguages leads to what we call the globalizationof modeling languages, that is, the use of multiple modeling languages to support coordinateddevelopment of diverse aspects of a system.

Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

Benoit Combemale, Julien DeAntoni, Benoit Baudry, Robert B. France, Jean-Marc Jezequel, Jeff Gray, "Globalizing Modeling Languages," Computer, vol. 47, no. 6, pp. 68-71, June, 2014

Page 35: Dynamic V&V in Language-Oriented Modeling

Globalization of Modeling Language

- 35

• Context: new emerging DSML in open world⇒ impossible a priori unification⇒ require a posteriori globalization

• Objective: socio-technical coordination to support interactions across different system aspects

⇒ Language-based support for technical integration of multiples domains⇒ Language-based support for social translucence

• Community: the GEMOC initiative (cf. http://gemoc.org)

Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

"Globalizing Domain-Specific Languages," Combemale, B., Cheng, B.H.C., France, R.B., Jézéquel, J.-M., Rumpe, B. (Eds.). Springer, Programming and Software Engineering, Vol. 9400, 2015.

Page 36: Dynamic V&V in Language-Oriented Modeling

The GEMOC Initiative

- 36

An open and international initiative to• coordinate (between members)• disseminate (on behalf the members)

worldwide R&D effortson the globalization of modeling languages

http://gemoc.org

@gemocinitiative

Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

Page 37: Dynamic V&V in Language-Oriented Modeling

The GEMOC Studio

- 37Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

Design and compose your executable DSMLs

http://gemoc.org/studioLanguageWorkbench

ModelingWorkbench

Edit, simulate and animate your heterogeneous models

Page 38: Dynamic V&V in Language-Oriented Modeling

The GEMOC Community

- 38Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

Page 39: Dynamic V&V in Language-Oriented Modeling

The GEMOC Community

- 39

• Keynote: “Towards Live DSLs”, by Tijs van der Storm (CWI)• 5 paper presentations• Discussion and demos

Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

Page 40: Dynamic V&V in Language-Oriented Modeling

Towards Language Interfaces

- 40Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

xDSML2xDSML1

structural/axiomatic

behavioral

xDSML3

subtypingrelation

coordinationpattern

Symbolic event structure(for behavioral coordination)

Model type(for language reuse)

A language interface is a contract that exhibits the relevant information for a given purpose (i.e., to support specific composition operators)

Thomas Degueule, Benoît Combemale, Arnaud Blouin, Olivier Barais, Jean-Marc Jézéquel, "Melange: a meta-language for modular and reusable development of DSLs," In SLE 2015

Matias Ezequiel Vara Larsen, Julien Deantoni, Benoit Combemale, Frédéric Mallet, "A BehavioralCoordination Operator Language (BCOoL)," In MODELS 2015

Page 41: Dynamic V&V in Language-Oriented Modeling

CONCLUSION AND PERSPECTIVES

- 41Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

Page 42: Dynamic V&V in Language-Oriented Modeling

Conclusion

Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016 - 42

• How to leverage existing efforts in V&V techniques for any DSLs?

• V&V techniques can be reified at the language level through generic or generative approaches

• require structural metamodeling patterns

Page 43: Dynamic V&V in Language-Oriented Modeling

Conclusion

Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016 - 43

• Modular definition of xDSMLs

• Reification of the concurrency in xDSMLs

• Language interfaces for reuse and behavioral coordination

Page 44: Dynamic V&V in Language-Oriented Modeling

Conclusion

Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016 - 44

language-oriented modeling

with

tools and methods to implement, reuse and coordinate

xDSMLs and associated V&V tools

Page 45: Dynamic V&V in Language-Oriented Modeling

Perspectives

- 45Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

DSMLs as a key pivot forthe socio-technical coordination

Model Experiencing Environmentsfor informed decision and broader engagement

in smart technologies

Heuristics-Laws

Scientists

Open Data

Engineers

General PublicPolicy Makers

MEEs("what-if" scenarios)

System Models

Physical Laws (economic, environmental, social)

Simulation Tool(incl. constraint solver,

prediction tool, etc.)

Sustainability System(e.g., smart grid)

Context

sensors actuators

Energy Production/

Consumption System

Software

<<controls>><<senses>>

Approximate DSML runtimesfor design space exploration,

runtime adaptation and security

Metamorphic DSMLsfor fitting user needs

static int __rep_queue_filedone(dbenv, rep, rfp)

DB_ENV *dbenv;REP *rep;__rep_fileinfo_args *rfp; {

#ifndef HAVE_QUEUECOMPQUIET(rep, NULL);COMPQUIET(rfp, NULL);return (__db_no_queue_am(dbenv));

#elsedb_pgno_t first, last;u_int32_t flags;int empty, ret, t_ret;

#ifdef DIAGNOSTICDB_MSGBUF mb;

#endif// over 100 lines of additional code

}#endif

not, and, or, implies

B. Combemale, B. Cheng, A. Moreira, J.-M. Bruel, J. Gray, "Modeling for Sustainability,"

MiSE@ICSE 2015M. Acher, B. Combemale, P. Collet,

"Metamorphic Domain-SpecificLanguages: A Journey into the Shapesof a Language," Onward! Essays 2014

M. C. Rodrigez, B. Combemale, B. Baudry, " Automatic Microbenchmark Generation to

Prevent Dead Code Elimination and Constant Folding," ASE 2016

Page 46: Dynamic V&V in Language-Oriented Modeling

- 46Dynamic V&V in Language-Oriented Modeling – B. Combemale (Inria & Univ. Rennes 1) – Oct. 3, 2016

"If you believe that language design can significantlyaffect the quality of software systems, then it shouldfollow that language design can also affect the quality of energy systems. And if the quality of suchenergy systems will, in turn, affect the livability of our planet, then it’s critical that the languagedevelopment community give modeling languagesthe attention they deserve." − Bret Victor (Nov., 2015), http://worrydream.com/ClimateChange