Results 1 -
5 of
5
Using C language extensions for developing embedded software: a case study, volume 50.
, 2015
"... Abstract We report on an industrial case study on developing the embedded software for a smart meter using the C programming language and domain-specific extensions of C such as components, physical units, state machines, registers and interrupts. We find that the extensions help significantly with ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
(Show Context)
Abstract We report on an industrial case study on developing the embedded software for a smart meter using the C programming language and domain-specific extensions of C such as components, physical units, state machines, registers and interrupts. We find that the extensions help significantly with managing the complexity of the software. They improve testability mainly by supporting hardware-independent testing, as illustrated by low integration efforts. The extensions also do not incur significant overhead regarding memory consumption and performance. Our case study relies on mbeddr, an extensible version of C. mbeddr, in turn, builds on the MPS language workbench which supports modular extension of languages and IDEs.
Supporting Diverse Notations in MPS ’ Projectional Editor
"... Abstract. To be able to build effective DSLs, these DSLs must not just use language concepts that are aligned with their respective domain, but also use notations that correspond closely to established domain notations – and those are often not purely textual or graphical. The underlying lan-guage w ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
(Show Context)
Abstract. To be able to build effective DSLs, these DSLs must not just use language concepts that are aligned with their respective domain, but also use notations that correspond closely to established domain notations – and those are often not purely textual or graphical. The underlying lan-guage workbench must support these notations, and combining different notations in a single editor must be supported as well in order to support the coherent definitions of systems that use several DSLs. In this paper we provide an overview over the notations supported by JetBrains MPS. MPS is a language workbench that uses a projectional editor, which, by its very nature, can deal with many different notational styles, including text, prose, math tables and graphics. The various supported notations are illustrated with examples from real-world systems.
Language workbench challenge 2016 Citation for published version (APA): Language Workbench Challenge 2016: the JetBrains Meta Programming System
"... Abstract This paper describes a solution for the SPLASH 2016 Language Workbench Challenge (LWC) workshop, using the JetBrains Meta Programming System (MPS) language workbench. As the main focus of the LWC is on implementation and not on writing a paper, we used the mbeddr documentation language to ..."
Abstract
- Add to MetaCart
(Show Context)
Abstract This paper describes a solution for the SPLASH 2016 Language Workbench Challenge (LWC) workshop, using the JetBrains Meta Programming System (MPS) language workbench. As the main focus of the LWC is on implementation and not on writing a paper, we used the mbeddr documentation language to describe the solutions to the challenges posed in the LWC. In this way, the showcasing of a solution is co-located with its implementation, making it easier for the reader to try out the solutions and to better understand them. Therefore we would encourage you to actually open the solution implementation (see README.md for setting it up) and try it out. JetBrains MPS has evolved into a powerful and flexible tool that can be used to address most of the language engineering challenges in the LWC. The feature-richness, and the scale of practical applicability of Jetbrains MPS increases even more when using the mbeddr platform extensions and other plugins developed by the MPS community.
Two-Faced Data
"... Intent One data fragment has several alternative structural representations tailored toward specic data manipulation approaches. Also Known As Concrete Syntax and Abstract Syntax simplifying concrete syntax to abstract syntax ..."
Abstract
- Add to MetaCart
(Show Context)
Intent One data fragment has several alternative structural representations tailored toward specic data manipulation approaches. Also Known As Concrete Syntax and Abstract Syntax simplifying concrete syntax to abstract syntax
Yet another annotated SLEBOK bibliography
, 2014
"... Software Language Engineering (SLE) is a particular view on Soft-ware Engineering (SE), which pays specific attention to the many software languages that are used in software development. These are not just programming languages, but also modeling languages, query and transformation languages, schem ..."
Abstract
- Add to MetaCart
(Show Context)
Software Language Engineering (SLE) is a particular view on Soft-ware Engineering (SE), which pays specific attention to the many software languages that are used in software development. These are not just programming languages, but also modeling languages, query and transformation languages, schema languages—many of them to be considered domain-specific languages. SLE is concerned with de-sign, implementation, testing, deployment, and evolution of software languages as well as language-based software components. The purpose of this annotated bibliography is to contribute to the SLE body of knowledge (SLEBOK). The bibliography collects a man-ageable set of papers that cover many principles and practilities of SLE in an accessible manner. The intension is to favor more fundamental, general papers over specific, highly technical papers. The selection is otherwise not very systematic. The SLE and GTTSE venues were