[commit: ghc] new-demand: some comments added (caf68f5)
Ilya Sergey
ilya at galois.com
Tue Jul 10 22:53:19 CEST 2012
Repository : ssh://darcs.haskell.org//srv/darcs/ghc
On branch : new-demand
http://hackage.haskell.org/trac/ghc/changeset/caf68f587fcadb5b6ea8a3b0638c555a66ec3e90
>---------------------------------------------------------------
commit caf68f587fcadb5b6ea8a3b0638c555a66ec3e90
Author: Ilya Sergey <Ilya.Sergey at cs.kuleuven.be>
Date: Thu Jul 5 14:33:45 2012 +0100
some comments added
>---------------------------------------------------------------
compiler/basicTypes/NewDemand.lhs | 8 +++-----
1 files changed, 3 insertions(+), 5 deletions(-)
diff --git a/compiler/basicTypes/NewDemand.lhs b/compiler/basicTypes/NewDemand.lhs
index f53fcf7..ba159a8 100644
--- a/compiler/basicTypes/NewDemand.lhs
+++ b/compiler/basicTypes/NewDemand.lhs
@@ -220,7 +220,6 @@ instance LatticeLike JointDmd where
\end{code}
-
%************************************************************************
%* *
\subsection{Demand environments, types and results}
@@ -313,8 +312,8 @@ isBotRes _ = False
resTypeArgDmd :: DmdResult -> JointDmd
-- TopRes and BotRes are polymorphic, so that
--- BotRes = Bot -> BotRes
--- TopRes = Top -> TopRes
+-- BotRes === Bot -> BotRes === ...
+-- TopRes === Top -> TopRes === ...
-- This function makes that concrete
resTypeArgDmd TopRes = top
resTypeArgDmd BotRes = bot
@@ -357,9 +356,8 @@ says that when the function is applied to two arguments, it
unleashes demand <S(LL),U(UU)> on the free var x, V on the first arg,
and A on the second.
-[??? -- clarify this]
If this same function is applied to one arg, all we can say is
-that it uses x with U*(LL), and its arg with demand <L,U>.
+that it uses x with <L,U(UU)>, and its arg with demand <L,U>.
\begin{code}
newtype StrictSig = StrictSig DmdType
More information about the Cvs-ghc
mailing list