MODULARITY Companion 2016 – Author Index |
Contents -
Abstracts -
Authors
|
Binsbergen, L. Thomas van |
MODULARITY Companion '16-DEMO: "Tool Support for Component-Based ..."
Tool Support for Component-Based Semantics
L. Thomas van Binsbergen , Neil Sculthorpe, and Peter D. Mosses (Royal Holloway University of London, UK; Swansea University, UK) The developers of a programming language need to document its intended syntax and semantics, and to update the documentation when the language evolves. They use formal grammars to define context-free syntax, but usually give only an informal description of semantics. Use of formal semantics could greatly increase the consistency and completeness of language documentation, support rapid prototyping, and allow empirical validation. Modularity of semantics is essential for practicality when scaling up to definitions of larger languages. Component-based semantics takes modularity to the highest possible level. In this approach, the semantics of a language is defined by equations translating its constructs (compositionally) to combinations of so-called fundamental constructs, or `funcons'. The definition of each funcon is a small, highly reusable component. The PLanCompS project has defined a substantial library of funcons, and shown their reusability in several case studies. We have designed a meta-language called CBS for component-based semantics, and an IDE to support development, rapid prototyping, and validation of definitions in CBS. After introducing and motivating CBS, we demonstrate how the IDE can be used to browse and edit the CBS definition of a toy language, to generate a prototype implementation of the language, and to parse and run programs. @InProceedings{MODULARITY Companion16p8, author = {L. Thomas van Binsbergen and Neil Sculthorpe and Peter D. Mosses}, title = {Tool Support for Component-Based Semantics}, booktitle = {Proc.\ MODULARITY Companion}, publisher = {ACM}, pages = {8--11}, doi = {}, year = {2016}, } Info |
|
Brand, Mark van den |
MODULARITY Companion '16-DEMO: "Modular Modeling with a Computational ..."
Modular Modeling with a Computational Twist in MetaMod
Ana Maria Şutîi, Tom Verhoeff, and Mark van den Brand (Eindhoven University of Technology, Netherlands) Model-driven engineering (MDE) is a software development methodology that promises to alleviate the complex task of writing software. To achieve its goals, MDE makes use of models. Although models are concise representations of the knowledge in a domain, they can become large and complex. In dealing with complexity, modularity has proven to be a good ally for engineers in general software development. Inspired by this, we set to explore modularity for models. To this end, we incorporated two mechanisms: grouping and fragment abstractions. The second ingredient, in particular, gives rise to an interesting combination between modeling elements and computational elements. To test our ideas, we have implemented a prototype metamodeling language called MetaMod. To highlight MetaMod's essential features we have included a small example for train tracks. @InProceedings{MODULARITY Companion16p4, author = {Ana Maria Şutîi and Tom Verhoeff and Mark van den Brand}, title = {Modular Modeling with a Computational Twist in MetaMod}, booktitle = {Proc.\ MODULARITY Companion}, publisher = {ACM}, pages = {4--7}, doi = {}, year = {2016}, } |
|
Bystrický, Michal |
MODULARITY Companion '16-DEMO: "Development Environment for ..."
Development Environment for Literal Inter-Language Use Case Driven Modularization
Michal Bystrický and Valentino Vranić (Slovak University of Technology in Bratislava, Slovakia) Commonly, during programming the code related to use cases becomes scattered across different modules and at the same time the code related to different use cases becomes tangled. This way, it is hard to follow the intent, which is otherwise well comprehensible in use cases. In this paper, we demonstrate a development environment for literal inter-language use case driven modularization. The environment enables to preserve use cases and their steps and have each use case text and related code focused in one file. For this, code instrumentation at three levels is involved: continuous processing, preprocessing, and execution. The approach itself requires also execution control provided by a dedicated framework. Many aspects of the program can be controlled directly from the use case text. At the same time, it is comprehensible to a wide range of stakeholders. A layered 3D layout of the use case dependencies is provided in the environment (https://bitbucket.org/bystricky/literal-use-cases, https://www.youtube.com/watch?v=R4ArqH4ZdgI). @InProceedings{MODULARITY Companion16p12, author = {Michal Bystrický and Valentino Vranić}, title = {Development Environment for Literal Inter-Language Use Case Driven Modularization}, booktitle = {Proc.\ MODULARITY Companion}, publisher = {ACM}, pages = {12--15}, doi = {}, year = {2016}, } Video |
|
Cazzola, Walter |
MODULARITY Companion '16-DEMO: "Dynamic Software Evolution ..."
Dynamic Software Evolution through Interpreter Adaptation
Walter Cazzola and Albert Shaqiri (University of Milan, Italy) Significant research has been dedicated to dynamic software evolution and adaptation that lead to different approaches which can mainly be categorized as either architecture-based or language-based. But there was little or no focus on dynamic evolution achieved through language interpreter adaptation. In this paper we present a model for such adaptations and illustrate their applicability and usefulness on practical examples developed in Neverlang, a framework for modular language development with features for dynamic adaptation of language interpreters. @InProceedings{MODULARITY Companion16p16, author = {Walter Cazzola and Albert Shaqiri}, title = {Dynamic Software Evolution through Interpreter Adaptation}, booktitle = {Proc.\ MODULARITY Companion}, publisher = {ACM}, pages = {16--19}, doi = {}, year = {2016}, } |
|
Mosses, Peter D. |
MODULARITY Companion '16-DEMO: "Tool Support for Component-Based ..."
Tool Support for Component-Based Semantics
L. Thomas van Binsbergen , Neil Sculthorpe, and Peter D. Mosses (Royal Holloway University of London, UK; Swansea University, UK) The developers of a programming language need to document its intended syntax and semantics, and to update the documentation when the language evolves. They use formal grammars to define context-free syntax, but usually give only an informal description of semantics. Use of formal semantics could greatly increase the consistency and completeness of language documentation, support rapid prototyping, and allow empirical validation. Modularity of semantics is essential for practicality when scaling up to definitions of larger languages. Component-based semantics takes modularity to the highest possible level. In this approach, the semantics of a language is defined by equations translating its constructs (compositionally) to combinations of so-called fundamental constructs, or `funcons'. The definition of each funcon is a small, highly reusable component. The PLanCompS project has defined a substantial library of funcons, and shown their reusability in several case studies. We have designed a meta-language called CBS for component-based semantics, and an IDE to support development, rapid prototyping, and validation of definitions in CBS. After introducing and motivating CBS, we demonstrate how the IDE can be used to browse and edit the CBS definition of a toy language, to generate a prototype implementation of the language, and to parse and run programs. @InProceedings{MODULARITY Companion16p8, author = {L. Thomas van Binsbergen and Neil Sculthorpe and Peter D. Mosses}, title = {Tool Support for Component-Based Semantics}, booktitle = {Proc.\ MODULARITY Companion}, publisher = {ACM}, pages = {8--11}, doi = {}, year = {2016}, } Info |
|
Sculthorpe, Neil |
MODULARITY Companion '16-DEMO: "Tool Support for Component-Based ..."
Tool Support for Component-Based Semantics
L. Thomas van Binsbergen , Neil Sculthorpe, and Peter D. Mosses (Royal Holloway University of London, UK; Swansea University, UK) The developers of a programming language need to document its intended syntax and semantics, and to update the documentation when the language evolves. They use formal grammars to define context-free syntax, but usually give only an informal description of semantics. Use of formal semantics could greatly increase the consistency and completeness of language documentation, support rapid prototyping, and allow empirical validation. Modularity of semantics is essential for practicality when scaling up to definitions of larger languages. Component-based semantics takes modularity to the highest possible level. In this approach, the semantics of a language is defined by equations translating its constructs (compositionally) to combinations of so-called fundamental constructs, or `funcons'. The definition of each funcon is a small, highly reusable component. The PLanCompS project has defined a substantial library of funcons, and shown their reusability in several case studies. We have designed a meta-language called CBS for component-based semantics, and an IDE to support development, rapid prototyping, and validation of definitions in CBS. After introducing and motivating CBS, we demonstrate how the IDE can be used to browse and edit the CBS definition of a toy language, to generate a prototype implementation of the language, and to parse and run programs. @InProceedings{MODULARITY Companion16p8, author = {L. Thomas van Binsbergen and Neil Sculthorpe and Peter D. Mosses}, title = {Tool Support for Component-Based Semantics}, booktitle = {Proc.\ MODULARITY Companion}, publisher = {ACM}, pages = {8--11}, doi = {}, year = {2016}, } Info |
|
Shaqiri, Albert |
MODULARITY Companion '16-DEMO: "Dynamic Software Evolution ..."
Dynamic Software Evolution through Interpreter Adaptation
Walter Cazzola and Albert Shaqiri (University of Milan, Italy) Significant research has been dedicated to dynamic software evolution and adaptation that lead to different approaches which can mainly be categorized as either architecture-based or language-based. But there was little or no focus on dynamic evolution achieved through language interpreter adaptation. In this paper we present a model for such adaptations and illustrate their applicability and usefulness on practical examples developed in Neverlang, a framework for modular language development with features for dynamic adaptation of language interpreters. @InProceedings{MODULARITY Companion16p16, author = {Walter Cazzola and Albert Shaqiri}, title = {Dynamic Software Evolution through Interpreter Adaptation}, booktitle = {Proc.\ MODULARITY Companion}, publisher = {ACM}, pages = {16--19}, doi = {}, year = {2016}, } |
|
Şutîi, Ana Maria |
MODULARITY Companion '16-DEMO: "Modular Modeling with a Computational ..."
Modular Modeling with a Computational Twist in MetaMod
Ana Maria Şutîi, Tom Verhoeff, and Mark van den Brand (Eindhoven University of Technology, Netherlands) Model-driven engineering (MDE) is a software development methodology that promises to alleviate the complex task of writing software. To achieve its goals, MDE makes use of models. Although models are concise representations of the knowledge in a domain, they can become large and complex. In dealing with complexity, modularity has proven to be a good ally for engineers in general software development. Inspired by this, we set to explore modularity for models. To this end, we incorporated two mechanisms: grouping and fragment abstractions. The second ingredient, in particular, gives rise to an interesting combination between modeling elements and computational elements. To test our ideas, we have implemented a prototype metamodeling language called MetaMod. To highlight MetaMod's essential features we have included a small example for train tracks. @InProceedings{MODULARITY Companion16p4, author = {Ana Maria Şutîi and Tom Verhoeff and Mark van den Brand}, title = {Modular Modeling with a Computational Twist in MetaMod}, booktitle = {Proc.\ MODULARITY Companion}, publisher = {ACM}, pages = {4--7}, doi = {}, year = {2016}, } |
|
Verhoeff, Tom |
MODULARITY Companion '16-DEMO: "Modular Modeling with a Computational ..."
Modular Modeling with a Computational Twist in MetaMod
Ana Maria Şutîi, Tom Verhoeff, and Mark van den Brand (Eindhoven University of Technology, Netherlands) Model-driven engineering (MDE) is a software development methodology that promises to alleviate the complex task of writing software. To achieve its goals, MDE makes use of models. Although models are concise representations of the knowledge in a domain, they can become large and complex. In dealing with complexity, modularity has proven to be a good ally for engineers in general software development. Inspired by this, we set to explore modularity for models. To this end, we incorporated two mechanisms: grouping and fragment abstractions. The second ingredient, in particular, gives rise to an interesting combination between modeling elements and computational elements. To test our ideas, we have implemented a prototype metamodeling language called MetaMod. To highlight MetaMod's essential features we have included a small example for train tracks. @InProceedings{MODULARITY Companion16p4, author = {Ana Maria Şutîi and Tom Verhoeff and Mark van den Brand}, title = {Modular Modeling with a Computational Twist in MetaMod}, booktitle = {Proc.\ MODULARITY Companion}, publisher = {ACM}, pages = {4--7}, doi = {}, year = {2016}, } |
|
Vranić, Valentino |
MODULARITY Companion '16-DEMO: "Development Environment for ..."
Development Environment for Literal Inter-Language Use Case Driven Modularization
Michal Bystrický and Valentino Vranić (Slovak University of Technology in Bratislava, Slovakia) Commonly, during programming the code related to use cases becomes scattered across different modules and at the same time the code related to different use cases becomes tangled. This way, it is hard to follow the intent, which is otherwise well comprehensible in use cases. In this paper, we demonstrate a development environment for literal inter-language use case driven modularization. The environment enables to preserve use cases and their steps and have each use case text and related code focused in one file. For this, code instrumentation at three levels is involved: continuous processing, preprocessing, and execution. The approach itself requires also execution control provided by a dedicated framework. Many aspects of the program can be controlled directly from the use case text. At the same time, it is comprehensible to a wide range of stakeholders. A layered 3D layout of the use case dependencies is provided in the environment (https://bitbucket.org/bystricky/literal-use-cases, https://www.youtube.com/watch?v=R4ArqH4ZdgI). @InProceedings{MODULARITY Companion16p12, author = {Michal Bystrický and Valentino Vranić}, title = {Development Environment for Literal Inter-Language Use Case Driven Modularization}, booktitle = {Proc.\ MODULARITY Companion}, publisher = {ACM}, pages = {12--15}, doi = {}, year = {2016}, } Video |
10 authors
proc time: 1.06