Incremental Type Checking in IncA
Date: Fri, November 02, 2018
Room: Snijderszaal LB.01.010 (building 36)
Note: This is a MSc thesis defense
When using an integrated development environment, it is desirable to get real-time feedback on the correctness of the program. That is, we want to see the results of the type checker in real-time. However, type checking can take a long time, especially when the subject program is large. To be able to provide real-time results, we need to incrementalize the type checker. This way, when a program changes, we only need to recalculate results for the changed portion of the program, and everything that depends on it. In this thesis, we discuss how we used IncA to implement a type checker for Rust. IncA is a domain specific language for the definition of incremental program analyses: analyses written in IncA are automatically incrementalized. We show in our evaluation that our type checker updates results significantly faster than its non-incremental counterpart. While we were able to successfully implement many of Rust’s features, there are some parts we were unable to implement, and we show why that is the case.
Jente Hidskes | Abstract Interpretation of Program Transformations using Regular Tree Grammars
Next: | Declarative Specification of Indentation Rules