Use closed type families where possible