Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2005-02-02 03:06:01 -0800 (Wed, 02 Feb 2005)
Revision: 6565
Log message:
Whew, mmc now compiles with full type information.
Here are some tradeoffs.
1. Type information is *very* useful. I caught many errors
in mmc with it.
2. It also requires you be more verbose. For example, you
might need separate terms:
Foo{'e : Exp}
FooList{'el : List{Exp}}
you probably got away with just Foo{'a} before.
3. It is also unsound. This is mainly because there is no relation
between rules, so one rule can't tell any type constraints of
another rule.