I agree with @Jasper-M that it seems like it would be better to have a different way to express “kinds” than with a type bound. If I understand correctly, Singleton being expressed as a type bound contributes to the fact that Singleton types cannot participate in union types (1 | 2 | 3
is illegal) (please correct me if I’m wrong)(also see discussion Singleton subtyping, and can we mark scala.Singleton as experimental?). The fact that we now would like to add a second faux-type bound to the language makes me think that we should really be pursuing a different way to express kinds.