-funArgDemand (Seq Defer ds) = Lazy
-funArgDemand (Seq k ds) = Seq k (map funArgDemand ds)
-funArgDemand Err = Eval -- Args passed to a bottoming function
-funArgDemand Bot = Abs -- Don't pass args that are consumed by bottom/err
-funArgDemand d = d
-
-unliftedDemand :: Demand -> Demand
+liftedArgDemand (Seq Defer ds) = Lazy
+liftedArgDemand (Seq k ds) = Seq k (map liftedArgDemand ds)
+ -- Urk! Don't have type info here
+liftedArgDemand Err = Eval -- Args passed to a bottoming function
+liftedArgDemand Bot = Abs -- Don't pass args that are consumed by bottom/err
+liftedArgDemand d = d
+
+unliftedArgDemand :: Demand -> Demand