Using Spoofax to Support Online Code Navigation
Peter D. Mosses
Date: Wed, March 01, 2023
Time: 12:00
Room: Turing 0.E420
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.
Previous:
Jaro Reinders | Towards Modular Compilation using Higher-order Effects
Next:
Casper Bach Poulsen | Renamingless Capture-Avoiding Substitution for Definitional Interpreters