Changes by: Nathaniel Gray (n8gray at caltech.edu)
Date: 2004-08-12 00:12:29 -0700 (Thu, 12 Aug 2004)
Revision: 6120
Log message:
Slightly less broken type inference for let rec. Needed to add an equation
between each inferred function type and the corresponding assigned function
type. At the moment I just assign a type var for the function type. It works,
but eventually I'll change it to a TyFun with the correct arity.
I also cleaned up the code a bit and added another test case. This version
correctly infers test_letrec but not test_letrec2. I'm not sure where those
darn free type variables are coming from. Why must *every* variable be bound?
Are we so variables so dangerous that society cannot tolerate them roaming free?
How will history judge us, who bind our variables so tightly?
Changes | Path |
+103 -110 | mpcompiler-branches/letfun/mmc/core/mmc_core_type_infer.ml |
+12 -3 | mpcompiler-branches/letfun/mmc/test/mmc_int_test.ml |