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

Jose Proenca*, Luc Edixhoven

*Corresponding author for this work

Research output: Contribution to journalArticleAcademicpeer-review

Abstract

We present Caos: 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.
Image 1 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 Image 1 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, Image 1 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 Image 1 that are used both in research and teaching contexts.
Original languageEnglish
Article number103222
Number of pages5
JournalScience of Computer Programming
Volume240
DOIs
Publication statusPublished - Feb 2025

Keywords

  • Formal methods
  • Pedagogical tools
  • Structural operational semantics
  • Visualisation
  • Web-frontend

Fingerprint

Dive into the research topics of 'The CAOS framework for Scala: Computer-aided design of SOS'. Together they form a unique fingerprint.

Cite this