2014 Volume 31 Issue 4 Pages 4_131-4_148
This paper presents how to construct a weighted type-error slice without reimplementing a type inference engine. In the previous type-error slices, we had no information on the source of the type error in the slices. However, we encounter many examples where the possibility that the source of a type error in a slice is not uniform. In this work, we present a weighted type-error slicer. We provide information on how often each part of a slice contribute to type conflicts. The advantage of our approach is twofold. First, we use compiler's type inference engine to make type-error slices. By not reimplementing it, we can obtain scalability and maintainability. Second, we have weights on type-error slices. We can use the information to improve the behavior of type debuggers. In this paper, we introduce an embedded type-error slicer. After that, we extend it to introduce weights.