diff options
author | Iavor S. Diatchki <iavor.diatchki@gmail.com> | 2013-01-13 18:34:38 -0800 |
---|---|---|
committer | Iavor S. Diatchki <iavor.diatchki@gmail.com> | 2013-01-13 18:34:38 -0800 |
commit | 12f3a53edf3db4eabcbe412cab0ef44b469b537e (patch) | |
tree | 54a7cdb828819ea4543c86a766fb4efe2d742caa /compiler | |
parent | fe61599ffebb27924c4beef47b6237542644f3f4 (diff) | |
download | haskell-12f3a53edf3db4eabcbe412cab0ef44b469b537e.tar.gz |
Fixup comment: typos + I had the generalization rule backwards.
Diffstat (limited to 'compiler')
-rw-r--r-- | compiler/types/FunDeps.lhs | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/compiler/types/FunDeps.lhs b/compiler/types/FunDeps.lhs index 6bca407c67..fe8781b1f8 100644 --- a/compiler/types/FunDeps.lhs +++ b/compiler/types/FunDeps.lhs @@ -154,9 +154,10 @@ oclose preds fixed_tvs -- For 1: the above argument about `t` being monomorphic seems incorrect. -- The correct behavior is to quantify over `t`, even though we know that -- it may be instantiated to at most one type. The point is that we might --- only find out what that type is later, at the class site to the function. --- In genral, we should be quantifying all variables that are not mentioned --- in the environment + the variables that are determined by them. +-- only find out what that type is later, at the call site to the function. +-- In general, we should be quantifying all variables that are (i) not in +-- mentioned in the environment, and (ii) not FD-determined by something in +-- the environment. -- For 2: This is just a nicity, but it makes things a bit more general: -- if we have an assumption `t1 ~ t2`, then we use the fact that if we know -- `t1` we also know `t2` and the other way. |