From a6a4c8a8cc89b3ea664367163886fa712ff80a8f Mon Sep 17 00:00:00 2001 From: "simonpj@microsoft.com" Date: Tue, 14 Sep 2010 11:36:41 +0000 Subject: [PATCH] Comments only --- compiler/coreSyn/CoreSyn.lhs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/compiler/coreSyn/CoreSyn.lhs b/compiler/coreSyn/CoreSyn.lhs index 2ad111f..e09e4f2 100644 --- a/compiler/coreSyn/CoreSyn.lhs +++ b/compiler/coreSyn/CoreSyn.lhs @@ -536,8 +536,11 @@ The instance translates to Now we might encounter (op (dfCList {ty} d) a1 a2) and we want the (op (dfList {ty} d)) rule to fire, because $dfCList has all its arguments, even though its (value) arity is 2. That's -why we cache the number of expected +why we record the number of expected arguments in the DFunUnfolding. +Note that although it's an Arity, it's most convenient for it to give +the *total* number of arguments, both type and value. See the use +site in exprIsConApp_maybe. \begin{code} -- Constants for the UnfWhen constructor -- 1.7.10.4