you mean like in Oberon?
Fine in principle, but AFAIK it never really caught on because the ergonomics suck. Interfaces/traits/type classes do seem to be a popular feature across languages, for what it's worth.
but the key is they build seamlessly on top of real parametric polymorphism. you still get a real "forall a." in your proposition language.
Go fucked up early on with their core language design due to an inability to learn from the 1970s so now it's terminally dookie sadly