Template for a possible future object model

We started with a few ideas, like that passing a parameter to a function in the normal way should neither copy nor consume it, and that Swift's inout was probably just about perfect, and tried to see where following those ideas to their conclusions might lead if we wanted to handle move-only types. It wasn't as formal as laying out a matrix. @Alvae writes more about the reasons for the set convention here (but please bring any questions back to this thread). I am not sure that it's a crucial part of the model, but if you look at the Copyable and Sinkable protocols defined above I think it creates a very understandable relationship between intialization and assignment.

1 Like