Tool support for component-based semantics

van Binsbergen, L.T., Sculthorpe, N. ORCID: 0000-0002-7244-0916 and Mosses, P.D., 2016. Tool support for component-based semantics. In: L. Fuentes, D. Batory and K. Czarnecki, eds., Modularity companion '16: Companion proceedings of the 15th International Conference on Modularity, Málaga, Spain, 14-17 March 2016. New York: Association for Computing Machinery (ACM), pp. 8-11. ISBN 9781450340335

[img]
Preview
Text
PubSub5536_Sculthorpe.pdf - Post-print

Download (608kB) | Preview

Abstract

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.

Item Type: Chapter in book
Creators: van Binsbergen, L.T., Sculthorpe, N. and Mosses, P.D.
Publisher: Association for Computing Machinery (ACM)
Place of Publication: New York
Date: 2016
Identifiers:
NumberType
10.1145/2892664.2893464DOI
Divisions: Schools > School of Science and Technology
Depositing User: Linda Sullivan
Date Added: 24 Jun 2016 15:29
Last Modified: 09 Jun 2017 14:03
URI: http://irep.ntu.ac.uk/id/eprint/28017

Actions (login required)

Edit View Edit View

Views

Views per month over past year

Downloads

Downloads per month over past year