Au revoir, erreurs de type mystérieuses : comment PolySubML améliore les messages d’erreur d’inférence de type

2025-05-23

PolySubML est un langage de programmation combinant l’inférence de type globale, la sous-typage et le polymorphisme avancé. Cet article explore la manière dont PolySubML conçoit de bons messages d’erreur de type et explique pourquoi les langages existants sont souvent insuffisants pour améliorer les messages d’erreur d’inférence de type. L’auteur propose cinq règles : 1. Ne jamais deviner ni revenir en arrière ; 2. Ne pas tirer de conclusions hâtives ; 3. Demander à l’utilisateur de clarifier son intention ; 4. Permettre à l’utilisateur d’écrire des annotations de type explicites ; 5. Ne pas inclure l’inférence de type statique dans le modèle d’exécution. En suivant ces règles, PolySubML résout avec succès de nombreux problèmes courants liés à l’inférence de type, améliorant ainsi considérablement la capacité de débogage du code.

Développement inférence de type