[project @ 1999-05-11 16:33:06 by keithw]
[ghc-hetmet.git] / ghc / compiler / NOTES
index 6ad3375..72b3be0 100644 (file)
@@ -1,3 +1,23 @@
+cvs remove TcGRHSs.hi-boot TcGRHSs.hi-boot-5 TcGRHSs.lhs
+cvs remove pbinding.ugn
+cvs add grhsb.ugn gdexp.ugn
+cvs add basicTypes/OccName.lhs
+
+
+New in 4.02
+* Scoped type variables
+* Warnings for unused variables should work now (they didn't before)
+* Simplifier improvements:
+       - Much better treatment of strict arguments
+       - Better treatment of bottoming Ids
+       - No need for w/w split for fns that are merely strict
+       - Fewer iterations needed, I hope
+* Less gratuitous renaming in interface files and abs C
+* OccName is a separate module, and is an abstract data type
+
+-----------------------
+
+
 * CHECK that the things seek_liftable found are done in Core
 
 * CHECK that there aren't too many indirections in STG
@@ -12,8 +32,10 @@ Interface files
 * The double semicolon at the end of an interface-file signature is so that
   the lexer can run through the pragmas very fast when -O isn't being used.
 
-* In export lists, T!(A,B) says that constructors A and B are exported, 
-  but not the type T.  Similarly for classes.
+* In export lists, T|(A,B) says that constructors A and B are exported, 
+  but not the type T.  Similarly for classes.  
+  We can't say T(T,A,B) and T(A,B) to export or not-export T respectively,
+  because the type T might have a constructor T.
 
 ===========================================================================