RE: inferred type doesn't type-check (using type families)