cff-version: 1.2.0 abstract: "
The objective of this research was to determine whether a stratified type-checking approach using scope graphs could type-check the proof-of-concept language LM. Scope graphs provide a way to type-check real-world programming languages and their constructs. Previous implementations that type-check LM, a language with relative, unordered, and glob imports, do not halt. This dataset contains Haskell code for constructing and type-checking a scope graph of an LM program. It is based on the Phased Haskell library. With this implementation, the all test cases halt and the majority exhibit the correct behaviour with only one false-negative.
This implementation uses a five-step approach:
Many test cases bundled with this data set are based on those for LMR (which is very similar to LM) and can be found here. On top of that. more test cases were derived and included. All test cases are denoted as annotated terms.
This data set is linked to a Bachelor's thesis completed at the EEMCS faculty at the TU Delft. A link will be added after publication.
" authors: - family-names: Hübner given-names: Paul - family-names: Bach Poulsen given-names: Casper - family-names: Zwaan given-names: Aron title: "Codebase Underlying the BSc Thesis: Type-Checking Modules and Imports using Scope Graphs" keywords: version: 1 identifiers: - type: doi value: 10.4121/288296b9-fcdf-4960-bab4-8aee3a46927c.v1 license: MIT date-released: 2023-06-21