Skip to content
  • Simon Peyton Jones's avatar
    [project @ 2001-10-03 13:58:50 by simonpj] · f659cb97
    Simon Peyton Jones authored
    ---------------------
    	Clear up infelicities
    	---------------------
    	CorePrep, CoreUtils, SimplUtils
    	LiberateCase (wibbles only)
    
    * Previously CorePrep was floating LocalIds to top level, which
      breaks the invariant that after CorePrep all top level Ids are
      GlobalIds.  But it didn't really need to, and this pass makes it
      so.  It's much tidier now.
    
    * Make CorePrep do eta expansion on partial applications
    	x = foldr f y  ==>   x = \ys -> foldr f y ys
      (This used to be done in the simplifier, but now the
      simplifier only eta expands where there is at least one
      lambda already.)
    
    * Omit CoreUtils.etaReduce.  (Never called.)
    
    * Improve CoreUtils.etaExpand, so that it doesn't add gratuitous
      beta redexes.
    f659cb97