
24 Jan
2016
24 Jan
'16
8:58 p.m.
Hi all, I'm looking for a reliable way of dropping levity args from TyCon applications. When I know that a particular TyCon gets some number of levity args, I can just drop the args manually (for example, I can drop the first half of arguments of a tuple TyCon application) but the code looks fragile (what happens if I use a different TyCon in the future) and confusing to the reader because it looks like this: drop (length args `div` 2) args Ideally it'd look like this: dropWhile isLevityArg args Now, there's a function called isLevityTy, but I don't understand what it's supposed to do. This doesn't do anyting to 'Boxed and 'Unboxed arguments: dropWhile (isLevityArg . idType) args Any ideas on this? Thanks..