Using Data Flows For Better Type Error Messages In Constraint-Based Type Inference

The Hong Kong University of Science and Technology
Department of Computer Science and Engineering


MPhil Thesis Defence


Title: "Using Data Flows For Better Type Error Messages In Constraint-Based
Type Inference"

By

Mr. Ishan BHANUKA


Abstract:

Creating good type error messages for constraint-based type inference systems
is difficult. Typical type error messages reflect implementation details of the
underlying constraint-solving algorithms rather than the specific factors
leading to type mismatches. We propose using subtyping constraints that capture
data flow to classify and explain type errors. Our algorithm explains type
errors as faulty data flows, which programmers are already used to reasoning
about, and illustrates these data flows as sequences of relevant program
locations. We show that our ideas and algorithm are not limited to languages
with subtyping, as they can be readily integrated with Hindley-Milner type
inference. In addition to these core contributions, we present the results of a
user study to evaluate the quality of our messages compared to other
implementations. While the quantitative evaluation does not show that
flow-based messages improve the localization or understanding of the causes of
type errors, the qualitative evaluation suggests a real need and demand for
flow-based messages.


Date:                   Tuesday, 9 January 2024

Time:                   4:30pm - 6:30pm

Venue:                  Room 4472
                        lifts 25/26

Committee Members:      Dr. Lionel Parreaux (Supervisor)
                        Dr. Amir Goharshady (Chairperson)
                        Prof. Charles Zhang


**** ALL are Welcome ****