1 |
SEALS: A framework for building Self-Adaptive Virtual Machines
|
|
|
|
In: SLE 2021 - 14th ACM SIGPLAN International Conference on Software Language Engineering ; https://hal.inria.fr/hal-03355253 ; SLE 2021 - 14th ACM SIGPLAN International Conference on Software Language Engineering, Oct 2021, Chicago, United States. pp.1-14, ⟨10.1145/3486608.3486912⟩ (2021)
|
|
Abstract:
International audience ; Over recent years, self-adaptation has become a major concern for software systems that evolve in changing environments. While expert developers may choose a manual implementation when self-adaptation is the primary concern, selfadaptation should be abstracted for non-expert developers or when it is a secondary concern. We present SEALS, a framework for building self-adaptive virtual machines for domainspecific languages. This framework provides first-class entities for the language engineer to promote domain-specific feedback loops in the definition of the DSL operational semantics. In particular, the framework supports the definition of (i) the abstract syntax and the semantics of the language as well as the correctness envelope defining the acceptable semantics for a domain concept, (ii) the feedback loop and associated trade-off reasoning, and (iii) the adaptations and the predictive model of their impact on the trade-off. We use this framework to build three languages with self-adaptive virtual machines and discuss the relevance of the abstractions, effectiveness of correctness envelopes, and compare their code size and performance results to their manually implemented counterparts. We show that the framework provides suitable abstractions for the implementation of self-adaptive operational semantics while introducing little performance overhead compared to a manual implementation.
|
|
Keyword:
[INFO.INFO-SE]Computer Science [cs]/Software Engineering [cs.SE]
|
|
URL: https://hal.inria.fr/hal-03355253 https://doi.org/10.1145/3486608.3486912 https://hal.inria.fr/hal-03355253/file/SEALS-HAL.pdf https://hal.inria.fr/hal-03355253/document
|
|
BASE
|
|
Hide details
|
|
2 |
Verification of Program Transformations with Inductive Refinement Types
|
|
|
|
In: ISSN: 1049-331X ; ACM Transactions on Software Engineering and Methodology ; https://hal.inria.fr/hal-03518825 ; ACM Transactions on Software Engineering and Methodology, Association for Computing Machinery, 2021, 30 (1), pp.1-33. ⟨10.1145/3409805⟩ (2021)
|
|
BASE
|
|
Show details
|
|
3 |
Modelling, Reverse Engineering, and Learning Software Variability
|
|
|
|
In: https://hal.inria.fr/tel-03521806 ; Software Engineering [cs.SE]. Université de Rennes 1, 2021 (2021)
|
|
BASE
|
|
Show details
|
|
4 |
A principled approach to REPL interpreters
|
|
|
|
In: SPLASH 2020 - ACM SIGPLAN conference on Systems, Programming, Languages, and Applications: Software for Humanity ; https://hal.inria.fr/hal-02968938 ; SPLASH 2020 - ACM SIGPLAN conference on Systems, Programming, Languages, and Applications: Software for Humanity, Nov 2020, Chicago / Virtual, United States. pp.1-17, ⟨10.1145/3426428.3426917⟩ (2020)
|
|
BASE
|
|
Show details
|
|
5 |
A Language Agnostic Approach to Modeling Requirements: Specification and Verification
|
|
|
|
In: MODELS ’20 Companion ; https://hal.inria.fr/hal-02924645 ; MODELS ’20 Companion, Oct 2020, Virtual Event, Canada. ⟨10.1145/3417990.3419224⟩ (2020)
|
|
BASE
|
|
Show details
|
|
6 |
On modularity and performance of External Domain-Specific Language implementations ; Modularité et performance des implémentations de langages dédiés externes
|
|
|
|
In: https://hal.inria.fr/tel-02418676 ; Software Engineering [cs.SE]. Université de rennes 1, 2019. English (2019)
|
|
BASE
|
|
Show details
|
|
7 |
On modularity and performances of external domain-specific language implementations ; Modularité et performances des langages dédiés externes
|
|
|
|
In: https://tel.archives-ouvertes.fr/tel-02972666 ; Software Engineering [cs.SE]. Université Rennes 1, 2019. English. ⟨NNT : 2019REN1S112⟩ (2019)
|
|
BASE
|
|
Show details
|
|
8 |
Dynamic program analysis for suggesting test improvements to developers ; Analyse dynamique du programme pour suggérer des améliorations de test aux développeurs
|
|
|
|
In: https://hal.archives-ouvertes.fr/tel-02459572 ; Software Engineering [cs.SE]. Université de Rennes 1 [UR1], 2019. English (2019)
|
|
BASE
|
|
Show details
|
|
9 |
Concern-Oriented Language Development (COLD): Fostering Reuse in Language Engineering
|
|
|
|
In: ISSN: 1477-8424 ; Computer Languages, Systems and Structures ; https://hal.archives-ouvertes.fr/hal-01803008 ; Computer Languages, Systems and Structures, Elsevier, 2018, 54, pp.139-155. ⟨10.1016/j.cl.2018.05.004⟩ (2018)
|
|
BASE
|
|
Show details
|
|
10 |
Specification-Based Protocol Obfuscation
|
|
|
|
In: DSN 2018 - 48th Annual IEEE/IFIP International Conference on Dependable Systems and Networks ; https://hal.inria.fr/hal-01848573 ; DSN 2018 - 48th Annual IEEE/IFIP International Conference on Dependable Systems and Networks, Jun 2018, Luxembourg City, Luxembourg. pp.1-12, ⟨10.1109/DSN.2018.00056⟩ (2018)
|
|
BASE
|
|
Show details
|
|
11 |
Verification of High-Level Transformations with Inductive Refinement Types
|
|
|
|
In: GPCE 2018 - 17th International Conference on Generative Programming: Concepts & Experience ; https://hal.inria.fr/hal-01898058 ; GPCE 2018 - 17th International Conference on Generative Programming: Concepts & Experience, Nov 2018, Boston, United States. pp.147-160, ⟨10.1145/3278122.3278125⟩ (2018)
|
|
BASE
|
|
Show details
|
|
12 |
Distributing Relational Model Transformation on MapReduce
|
|
|
|
In: ISSN: 0164-1212 ; Journal of Systems and Software ; https://hal.archives-ouvertes.fr/hal-01863885 ; Journal of Systems and Software, Elsevier, 2018, 142, pp.1-20. ⟨10.1016/j.jss.2018.04.014⟩ (2018)
|
|
BASE
|
|
Show details
|
|
13 |
Shape-Diverse DSLs: Languages without Borders (Vision Paper)
|
|
|
|
In: SLE 2018 Proceedings of the 11th ACM SIGPLAN International Conference on Software Language Engineering ; SLE 2018 - 11th ACM SGIPLAN International Conference on Software Language Engineering ; https://hal.archives-ouvertes.fr/hal-01889155 ; SLE 2018 - 11th ACM SGIPLAN International Conference on Software Language Engineering, Nov 2018, Boston, United States. pp.215-219, ⟨10.1145/3276604.3276623⟩ (2018)
|
|
BASE
|
|
Show details
|
|
14 |
Modular Language Composition for the Masses
|
|
|
|
In: SLE 2018 - 11th ACM SIGPLAN International Conference on Software Language Engineering ; https://hal.inria.fr/hal-01890446 ; SLE 2018 - 11th ACM SIGPLAN International Conference on Software Language Engineering, Nov 2018, Boston, United States. pp.1-12, ⟨10.1145/3276604.3276622⟩ ; http://www.sleconf.org/2018/ (2018)
|
|
BASE
|
|
Show details
|
|
15 |
Revisiting Visitors for Modular Extension of Executable DSMLs
|
|
|
|
In: 2017 ACM/IEEE 20th International Conference on Model Driven Engineering Languages and Systems ; https://hal.inria.fr/hal-01568169 ; 2017 ACM/IEEE 20th International Conference on Model Driven Engineering Languages and Systems, Sep 2017, Austin, United States. ⟨10.1109/MODELS.2017.23⟩ (2017)
|
|
BASE
|
|
Show details
|
|
16 |
On Language Interfaces
|
|
|
|
In: PAUSE: Present And Ulterior Software Engineering ; https://hal.inria.fr/hal-01424909 ; Bertrand Meyer; Manuel Mazzara. PAUSE: Present And Ulterior Software Engineering, Springer, 2017 (2017)
|
|
BASE
|
|
Show details
|
|
17 |
Leveraging software product lines engineering in the construction of domain specific languages ; Usage de l'ingénierie de lignes de produits pour la construction de langages dédiés
|
|
|
|
In: https://tel.archives-ouvertes.fr/tel-01427187 ; Software Engineering [cs.SE]. Université Rennes 1, 2016. English. ⟨NNT : 2016REN1S136⟩ (2016)
|
|
BASE
|
|
Show details
|
|
|
|