
3 Dec
2015
3 Dec
'15
1:43 p.m.
Hi devs, I'm (once again) merging master into my type=kind branch. I see that we now have tyVarsOfTypeAcc :: Type -> FV, distinct from tyVarsOfType :: Type -> TyVarSet. I trust that this new version is more performant. However, I have a question: in the implementation of these functions, the three extra FV parameters (fv_cand in_scope acc) are bound and passed each time. Why? I've always understood that eta-reducing in function definitions is better than expanding. Or is this just a style choice? Thanks, Richard