Journal article 22587 views 220 downloads
Software meta-language engineering and CBS
Journal of Computer Languages, Volume: 50, Pages: 39 - 48
Swansea University Author: Peter Mosses
-
PDF | Accepted Manuscript
Released under the terms of a Creative Commons Attribution Non-Commercial No Derivatives License (CC-BY-NC-ND).
Download (658.33KB)
DOI (Published version): 10.1016/j.jvlc.2018.11.003
Abstract
The SLE conference series is devoted to the engineering principles of software languages: their design, their implementation, and their evolution. This paper is about the role of language specification in SLE. A precise specification of a software language needs to be written in a formal meta-langua...
Published in: | Journal of Computer Languages |
---|---|
ISSN: | 25901184 |
Published: |
2019
|
Online Access: |
Check full text
|
URI: | https://cronfa.swan.ac.uk/Record/cronfa47984 |
first_indexed |
2018-12-18T20:01:22Z |
---|---|
last_indexed |
2024-11-14T11:56:26Z |
id |
cronfa47984 |
recordtype |
SURis |
fullrecord |
<?xml version="1.0"?><rfc1807><datestamp>2023-06-23T15:47:00.7220741</datestamp><bib-version>v2</bib-version><id>47984</id><entry>2018-12-18</entry><title>Software meta-language engineering and CBS</title><swanseaauthors><author><sid>3f13b8ec315845c81d371f41e772399c</sid><ORCID>0000-0002-5826-7520</ORCID><firstname>Peter</firstname><surname>Mosses</surname><name>Peter Mosses</name><active>true</active><ethesisStudent>false</ethesisStudent></author></swanseaauthors><date>2018-12-18</date><abstract>The SLE conference series is devoted to the engineering principles of software languages: their design, their implementation, and their evolution. This paper is about the role of language specification in SLE. A precise specification of a software language needs to be written in a formal meta-language, and it needs to co-evolve with the specified language. Moreover, different software languages often have features in common, which should provide opportunities for reuse of parts of language specifications. Support for co-evolution and reuse in a meta-language requires careful engineering of its design.The author has been involved in the development of several meta-languages for semantic specification, including action semantics and modular variants of structural operational semantics (MSOS, I-MSOS). This led to the PLanCompS project, and to the design of its meta-language, CBS, for component-based semantics. CBS comes together with an extensible library of reusable components called ‘funcons’, corresponding to fundamental programming constructs. The main aim of CBS is to optimise co-evolution and reuse of specifications during language development, and to make specification of language semantics almost as straightforward as context-free syntax specification.The paper discusses the engineering of a selection of previous meta-languages, assessing how well they support co-evolution and reuse. It then gives an introduction to CBS, and illustrates significant features. It also considers whether other current meta-languages might also be used to define an extensible library of funcons for use in component-based semantics.</abstract><type>Journal Article</type><journal>Journal of Computer Languages</journal><volume>50</volume><journalNumber/><paginationStart>39</paginationStart><paginationEnd>48</paginationEnd><publisher/><placeOfPublication/><isbnPrint/><isbnElectronic/><issnPrint>25901184</issnPrint><issnElectronic/><keywords>semantics of programming languages, meta-languages, modularity</keywords><publishedDay>28</publishedDay><publishedMonth>2</publishedMonth><publishedYear>2019</publishedYear><publishedDate>2019-02-28</publishedDate><doi>10.1016/j.jvlc.2018.11.003</doi><url/><notes/><college>COLLEGE NANME</college><CollegeCode>COLLEGE CODE</CollegeCode><institution>Swansea University</institution><apcterm/><funders/><projectreference/><lastEdited>2023-06-23T15:47:00.7220741</lastEdited><Created>2018-12-18T15:20:19.2234527</Created><path><level id="1">Faculty of Science and Engineering</level><level id="2">School of Engineering and Applied Sciences - Uncategorised</level></path><authors><author><firstname>Peter</firstname><surname>Mosses</surname><orcid>0000-0002-5826-7520</orcid><order>1</order></author></authors><documents><document><filename>0047984-11022019144837.pdf</filename><originalFilename>Mosses-final-twocolumn.pdf</originalFilename><uploaded>2019-02-11T14:48:37.8430000</uploaded><type>Output</type><contentLength>611233</contentLength><contentType>application/pdf</contentType><version>Accepted Manuscript</version><cronfaStatus>true</cronfaStatus><embargoDate>2020-07-30T00:00:00.0000000</embargoDate><documentNotes>Released under the terms of a Creative Commons Attribution Non-Commercial No Derivatives License (CC-BY-NC-ND).</documentNotes><copyrightCorrect>true</copyrightCorrect><language>eng</language></document></documents><OutputDurs/></rfc1807> |
spelling |
2023-06-23T15:47:00.7220741 v2 47984 2018-12-18 Software meta-language engineering and CBS 3f13b8ec315845c81d371f41e772399c 0000-0002-5826-7520 Peter Mosses Peter Mosses true false 2018-12-18 The SLE conference series is devoted to the engineering principles of software languages: their design, their implementation, and their evolution. This paper is about the role of language specification in SLE. A precise specification of a software language needs to be written in a formal meta-language, and it needs to co-evolve with the specified language. Moreover, different software languages often have features in common, which should provide opportunities for reuse of parts of language specifications. Support for co-evolution and reuse in a meta-language requires careful engineering of its design.The author has been involved in the development of several meta-languages for semantic specification, including action semantics and modular variants of structural operational semantics (MSOS, I-MSOS). This led to the PLanCompS project, and to the design of its meta-language, CBS, for component-based semantics. CBS comes together with an extensible library of reusable components called ‘funcons’, corresponding to fundamental programming constructs. The main aim of CBS is to optimise co-evolution and reuse of specifications during language development, and to make specification of language semantics almost as straightforward as context-free syntax specification.The paper discusses the engineering of a selection of previous meta-languages, assessing how well they support co-evolution and reuse. It then gives an introduction to CBS, and illustrates significant features. It also considers whether other current meta-languages might also be used to define an extensible library of funcons for use in component-based semantics. Journal Article Journal of Computer Languages 50 39 48 25901184 semantics of programming languages, meta-languages, modularity 28 2 2019 2019-02-28 10.1016/j.jvlc.2018.11.003 COLLEGE NANME COLLEGE CODE Swansea University 2023-06-23T15:47:00.7220741 2018-12-18T15:20:19.2234527 Faculty of Science and Engineering School of Engineering and Applied Sciences - Uncategorised Peter Mosses 0000-0002-5826-7520 1 0047984-11022019144837.pdf Mosses-final-twocolumn.pdf 2019-02-11T14:48:37.8430000 Output 611233 application/pdf Accepted Manuscript true 2020-07-30T00:00:00.0000000 Released under the terms of a Creative Commons Attribution Non-Commercial No Derivatives License (CC-BY-NC-ND). true eng |
title |
Software meta-language engineering and CBS |
spellingShingle |
Software meta-language engineering and CBS Peter Mosses |
title_short |
Software meta-language engineering and CBS |
title_full |
Software meta-language engineering and CBS |
title_fullStr |
Software meta-language engineering and CBS |
title_full_unstemmed |
Software meta-language engineering and CBS |
title_sort |
Software meta-language engineering and CBS |
author_id_str_mv |
3f13b8ec315845c81d371f41e772399c |
author_id_fullname_str_mv |
3f13b8ec315845c81d371f41e772399c_***_Peter Mosses |
author |
Peter Mosses |
author2 |
Peter Mosses |
format |
Journal article |
container_title |
Journal of Computer Languages |
container_volume |
50 |
container_start_page |
39 |
publishDate |
2019 |
institution |
Swansea University |
issn |
25901184 |
doi_str_mv |
10.1016/j.jvlc.2018.11.003 |
college_str |
Faculty of Science and Engineering |
hierarchytype |
|
hierarchy_top_id |
facultyofscienceandengineering |
hierarchy_top_title |
Faculty of Science and Engineering |
hierarchy_parent_id |
facultyofscienceandengineering |
hierarchy_parent_title |
Faculty of Science and Engineering |
department_str |
School of Engineering and Applied Sciences - Uncategorised{{{_:::_}}}Faculty of Science and Engineering{{{_:::_}}}School of Engineering and Applied Sciences - Uncategorised |
document_store_str |
1 |
active_str |
0 |
description |
The SLE conference series is devoted to the engineering principles of software languages: their design, their implementation, and their evolution. This paper is about the role of language specification in SLE. A precise specification of a software language needs to be written in a formal meta-language, and it needs to co-evolve with the specified language. Moreover, different software languages often have features in common, which should provide opportunities for reuse of parts of language specifications. Support for co-evolution and reuse in a meta-language requires careful engineering of its design.The author has been involved in the development of several meta-languages for semantic specification, including action semantics and modular variants of structural operational semantics (MSOS, I-MSOS). This led to the PLanCompS project, and to the design of its meta-language, CBS, for component-based semantics. CBS comes together with an extensible library of reusable components called ‘funcons’, corresponding to fundamental programming constructs. The main aim of CBS is to optimise co-evolution and reuse of specifications during language development, and to make specification of language semantics almost as straightforward as context-free syntax specification.The paper discusses the engineering of a selection of previous meta-languages, assessing how well they support co-evolution and reuse. It then gives an introduction to CBS, and illustrates significant features. It also considers whether other current meta-languages might also be used to define an extensible library of funcons for use in component-based semantics. |
published_date |
2019-02-28T04:54:30Z |
_version_ |
1821470538686529536 |
score |
11.0583515 |