Sciweavers

JFP
2008

HM(X) type inference is CLP(X) solving

13 years 11 months ago
HM(X) type inference is CLP(X) solving
The HM(X) system is a generalization of the Hindley/Milner system parameterized in the constraint domain X. Type inference is performed by generating constraints out of the program text which are then solved by the domain specific constraint solver X. The solver has to be invoked at the latest when type inference reaches a let node so that we can build a polymorphic type. A typical example of such an inference approach is Milner's algorithm W. We formalize an inference approach where the HM(X) type inference problem is first mapped to a CLP(X) program. The actual type inference is achieved by executing the CLP(X) program. Such an inference approach supports the uniform construction of type inference algorithms and has important practical consequences when it comes to reporting type errors. The CLP(X) style inference system where X is defined by Constraint Handling Rules is implemented as part of the Chameleon system.
Martin Sulzmann, Peter J. Stuckey
Added 26 Jan 2011
Updated 26 Jan 2011
Type Journal
Year 2008
Where JFP
Authors Martin Sulzmann, Peter J. Stuckey
Comments (0)