summaryrefslogtreecommitdiff
path: root/compiler/simplCore/CallArity.hs
diff options
context:
space:
mode:
authorJose Pedro Magalhaes <jpm@cs.ox.ac.uk>2014-11-04 11:10:27 +0000
committerJose Pedro Magalhaes <jpm@cs.ox.ac.uk>2014-11-04 11:10:27 +0000
commit3744afb5d91ebbe235230b7e9a03e1918ed4aa2c (patch)
treeae953eebc9230a176721b49c64f8a63102b627f6 /compiler/simplCore/CallArity.hs
parentd8e899686d7f3092af54932f46ab122dc8d3d373 (diff)
parentd3a7126ff749d1eff31128ace31bcea26c4eadaa (diff)
downloadhaskell-wip/GenericsMetaData.tar.gz
Merge branch 'master' into wip/GenericsMetaDatawip/GenericsMetaData
Diffstat (limited to 'compiler/simplCore/CallArity.hs')
-rw-r--r--compiler/simplCore/CallArity.hs4
1 files changed, 2 insertions, 2 deletions
diff --git a/compiler/simplCore/CallArity.hs b/compiler/simplCore/CallArity.hs
index bead230bcd..5ee5fe296a 100644
--- a/compiler/simplCore/CallArity.hs
+++ b/compiler/simplCore/CallArity.hs
@@ -33,7 +33,7 @@ Note [Call Arity: The goal]
~~~~~~~~~~~~~~~~~~~~~~~~~~~
The goal of this analysis is to find out if we can eta-expand a local function,
-based on how it is being called. The motivating example is code this this,
+based on how it is being called. The motivating example is this code,
which comes up when we implement foldl using foldr, and do list fusion:
let go = \x -> let d = case ... of
@@ -46,7 +46,7 @@ If we do not eta-expand `go` to have arity 2, we are going to allocate a lot of
partial function applications, which would be bad.
The function `go` has a type of arity two, but only one lambda is manifest.
-Further more, an analysis that only looks at the RHS of go cannot be sufficient
+Furthermore, an analysis that only looks at the RHS of go cannot be sufficient
to eta-expand go: If `go` is ever called with one argument (and the result used
multiple times), we would be doing the work in `...` multiple times.