From: Chris Date: Mon, 9 Mar 2015 20:03:01 +0000 (-0400) Subject: edits X-Git-Url: http://lambda.jimpryor.net/git/gitweb.cgi?p=lambda.git;a=commitdiff_plain;h=fec31e5e99518d29570360ef74ff870284fc0114 edits --- diff --git a/topics/week5_system_F.mdwn b/topics/week5_system_F.mdwn index c37f9116..97b17f83 100644 --- a/topics/week5_system_F.mdwn +++ b/topics/week5_system_F.mdwn @@ -534,11 +534,11 @@ conditions, there will be a ***principle type***: a type such that every other possible type for that expression is a more specific version of the principle type. -As we have seen, it is often possible to infer constraints on the type -of an expression based on its internal structure, as well as by the -way in which it is used. When programming interpreters and compilers -infer types, they often (but not always) aim for the principle type -(if one is guaranteed to exist). +As we have seen, it is often possible to infer a type for an +expression based on its internal structure, as well as by the way in +which it is used. When programming interpreters and compilers infer +types, they often (but not always) aim for the principle type (if one +is guaranteed to exist). # let pair a b z = z a b;; val pair : 'a -> 'b -> ('a -> 'b -> 'c) -> 'c =