Code underlying the publication: ExEl: Building an Elaborator Using Extensible Constraints

DOI:10.4121/e74fd14a-da79-4686-97e8-143ac5e0858d.v1
The DOI displayed above is for this specific version of this dataset, which is currently the latest. Newer versions may be published in the future. For a link that will always point to the latest version, please use
DOI: 10.4121/e74fd14a-da79-4686-97e8-143ac5e0858d
Datacite citation style:
Liesnikov, Bohdan; Cockx, Jesper (2024): Code underlying the publication: ExEl: Building an Elaborator Using Extensible Constraints. Version 1. 4TU.ResearchData. software. https://doi.org/10.4121/e74fd14a-da79-4686-97e8-143ac5e0858d.v1
Other citation styles (APA, Harvard, MLA, Vancouver, Chicago, IEEE) available at Datacite

Software

This repository contains source code for the paper, slides, extended abstract and a demo implementation for the ExEl paper. This research is addressing some of the common problems in the implementations of dependently typed languages. In particular we present a modular architecture for implementing the transformation from user-friendly surface syntax into a small and well-behaved core language, also known as elaboration. Our architecture is made modular through the use of an open datatype of constraints and a plugin system for solvers that work on these constraints, which means that each new feature is contained in its own module. The implementation was developed by the authors of the paper in through 2022 and 2023.

History

  • 2024-03-21 first online, published, posted

Publisher

4TU.ResearchData

Format

Haskell project, built using nix and cabal

Associated peer-reviewed publication

ExEl: Building an Elaborator Using Extensible Constraints

Organizations

TU Delft, Faculty of Electrical Engineering, Mathematics and Computer Science, Department of Software Technology

To access the source code, use the following command:

git clone https://data.4tu.nl/v3/datasets/2e75d19a-7ef8-445b-88d5-ea763cc2488e.git

Or download the latest commit as a ZIP.