The CAOS framework for Scala: Computer-aided design of SOS

We present : a programming framework for computer-aided design of structural operational semantics for formal models . This framework includes a set of Scala libraries and a workflow to produce visual and interactive diagrams that animate and provide insights over the structure and the semantics of a given abstract model with operational rules. follows an approach where theoretical foundations and a practical tool are built together, as an alternative to foundations-first design (“tool justifies theory”) or tool-first design (“foundations justify practice”). The advantage of is that the tool-under-development can immediately be used to automatically run numerous and sizeable examples in order to identify subtle mistakes, unexpected outcomes, and unforeseen limitations in the foundations-under-development, as early as possible. More concretely, supports the quick creation of interactive websites that help the end-users better understand a new language, structure, or analysis. End-users can be research colleagues trying to understand a companion paper or students learning about a new simple language or operational semantics. We include a list of open-source projects with a web frontend supported by that are used both in research and teaching contexts.

Authors

Institutions

Publication Details

Journal
Science of Computer Programming
Published
2024-10-18
DOI
https://doi.org/10.1016/j.scico.2024.103222
Citations
1
Primary Topic
Software Engineering and Design Patterns
Type
article
Field-Weighted Citation Impact
1.40

Funders

Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

The CAOS framework for Scala: Computer-aided design of SOS

José Proença, Luc Edixhoven
1 citations
Science of Computer Programming
Software Engineering and Design Patterns
1.40
article

The CAOS framework for Scala: Computer-aided design of SOS

José Proença, Luc Edixhoven
article en
1 citations

Abstract

We present : a programming framework for computer-aided design of structural operational semantics for formal models . This framework includes a set of Scala libraries and a workflow to produce visual and interactive diagrams that animate and provide insights over the structure and the semantics of a given abstract model with operational rules. follows an approach where theoretical foundations and a practical tool are built together, as an alternative to foundations-first design (“tool justifies theory”) or tool-first design (“foundations justify practice”). The advantage of is that the tool-under-development can immediately be used to automatically run numerous and sizeable examples in order to identify subtle mistakes, unexpected outcomes, and unforeseen limitations in the foundations-under-development, as early as possible. More concretely, supports the quick creation of interactive websites that help the end-users better understand a new language, structure, or analysis. End-users can be research colleagues trying to understand a companion paper or students learning about a new simple language or operational semantics. We include a list of open-source projects with a web frontend supported by that are used both in research and teaching contexts.

Science of Computer ProgrammingVol. 240
Universidade do Porto (PT), Open University of the Netherlands (NL)
Fundação para a Ciência e a Tecnologia
Openalex Percentile: Top 17%
Software Engineering and Design Patterns
1.40
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.