support flexible types in type alias
Ability to define
type CreateCommand = unit -> #IDbCommand
type CreateCommand<'T when 'T :> IDbCommand> = unit -> 'T
because the later forces me to specify the generic type (even with _) at places I'm using it.
I'm not clear if there are cases where it would create issues, but it would be nice to have some explicit ways to tell we are ok with implict polymorphism.
Declined per my comment below
F# Language Evolution
Don Syme commented
This seems to create too many issues to make it feasible. It's effectively like adding a form of existential type to the language, since you're really defining
type CreateCommand = EXISTS ('T :> IDbCommand). unit -> 'T
That's not a trivial thing to add to F#