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