I don’t have any objections to supporting it if you all can make it work. It seems like you all are trying to keep this initial proposal simple, though, and MemoryLayout support could throw a curveball in your initial implementation effort. If you’ve already got it working, great!
It seems like a strange bit of the core language model to leave out to me. In general,
func foo<T: P>(x: T) and
func foo(x: P) are isomorphic, and the latter is easier to write and understand for a lot of people. While existentials are limited now, we’ll fix that eventually, and I think we should avoid forcing people into writing the long generic form of things when they otherwise wouldn’t need to because of limitations in other language features.