High-level error messages for modules through diffing - Archive ouverte HAL
Communication Dans Un Congrès Année : 2020

High-level error messages for modules through diffing

Résumé

Modules are one of the most complex features of ML languages. This complexity is reflected in error messages. Whenever two module types are mismatched, it is hard to identify and report the exact source of the error. Consequently, typecheckers often resort to printing the whole module types, and hope that the human user will navigate the sea of definitions. We propose to improve module error messages by coupling classical typechecking with a diffing algorithm. The typechecker deals with the gritty details of the ML module system whereas the diffing algorithm summarizes the error through a higher level view. The large literature on diffing algorithms allows us to pick and choose the exact algorithm adapted for signatures, functors applications, submodules, etc.
Fichier principal
Vignette du fichier
mlworkshop.pdf (137.81 Ko) Télécharger le fichier
presentation.pdf (202.19 Ko) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)
Origine Fichiers produits par l'(les) auteur(s)

Dates et versions

hal-04615919 , version 1 (18-06-2024)

Identifiants

  • HAL Id : hal-04615919 , version 1

Citer

Gabriel Radanne, Florian Angeletti. High-level error messages for modules through diffing. ML 2020 - ML Family Workshop, Aug 2020, Online, France. ⟨hal-04615919⟩
28 Consultations
27 Téléchargements

Partager

More