EVCS
Wed 5 Apr 2023 Delft, Netherlands
Wed 5 Apr 2023 16:30 - 16:40 at Theatre Hall - Session 4: Scopes & Types Chair(s): Yannis Smaragdakis

Spoofax is a language workbench. A Spoofax language specification generally includes name resolution: the analysis of bindings between definitions and references. When browsing code in the specified language using Spoofax, the bindings appear as hyperlinks, supporting precise name-based code navigation. However, Spoofax cannot be used for browsing code in online repositories.

This paper is about a toolchain that uses Spoofax to generate hyperlinked twins of code repositories. These generated artefacts support the same precise code navigation as Spoofax, and can be browsed online. The technique has been prototyped on the CBS (Component-Based Semantics) specification language developed by the PLanCompS project, but could be used on any language after specifying its name resolution in Spoofax.

Slides (EVCS2023-Mosses.pdf)7.46MiB

Peter Mosses is professor emeritus at Swansea University, and currently visiting the Programming Languages Group at Delft University of Technology.

His research in semantics stretches back to Strachey’s Programming Research Group at Oxford in the early 1970s, where he contributed to the development of denotational semantics, and implemented SIS, a system for running programs based on their semantics. He was based at Aarhus University, Denmark, from 1976 to 2004.

The main focus of his research has been on pragmatic aspects of formal specifications – especially modularity. This led to the development of action semantics, MSOS (a modular variant of structural operational semantics) and component-based semantics. He is a principal investigator in the PLanCompS project (Programming Language Components and Specifications). He was also the initial coordinator of CoFI, the Common Framework Initiative, which designed the algebraic specification language CASL.

Wed 5 Apr

Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

16:00 - 17:30
Session 4: Scopes & TypesEelco Visser Commemorative Symposium at Theatre Hall
Chair(s): Yannis Smaragdakis University of Athens
16:00
10m
Talk
Scope Graphs: The Story so Far
Eelco Visser Commemorative Symposium
Aron Zwaan Delft University of Technology, Hendrik van Antwerpen GitHub
DOI Pre-print File Attached
16:10
10m
Talk
Dependently Typed Languages in Statix
Eelco Visser Commemorative Symposium
Jonathan Brouwer TU Delft, Jesper Cockx Delft University of Technology, Aron Zwaan Delft University of Technology
Link to publication DOI
16:20
10m
Talk
Stack graphs: Name Resolution at Scale
Eelco Visser Commemorative Symposium
DOI Pre-print
16:30
10m
Talk
Using Spoofax to Support Online Code Navigation
Eelco Visser Commemorative Symposium
Peter D. Mosses Delft University of Technology
DOI File Attached
16:40
10m
Talk
Renamingless Capture-Avoiding Substitution for Definitional Interpreters
Eelco Visser Commemorative Symposium
Casper Bach Poulsen Delft University of Technology
DOI Pre-print
16:50
10m
Talk
Reasoning About Paths in the Interface Graph
Eelco Visser Commemorative Symposium
Michael Greenberg Stevens Institute of Technology
Link to publication DOI
17:00
10m
Talk
Type Theory as a Language Workbench
Eelco Visser Commemorative Symposium
Jan de Muijnck-Hughes University of Glasgow, Guillaume Allais University of St Andrews, Edwin Brady University of St Andrews, UK
Pre-print
17:10
10m
Talk
A Simply Numbered Lambda Calculus
Eelco Visser Commemorative Symposium
Friedrich Steimann Fernuniversität in Hagen
Link to publication DOI
17:20
10m
Other
Session closing
Eelco Visser Commemorative Symposium