This all ties back to the roadmap process, which is set on a yearly cycle. In order to ship, we need to be clear about the direction we want to go on, lay out a realistic set of goals for a time period, and focus.
The yearly cycle is no more arbitrary than our six week release cycle is. Both time frames were chosen carefully, taking into account a number of important social and managerial considerations.
Of course. Most of the major RFCs for the roadmap have been in development for months at this point. But again, the point here is to switch gears for a few months and focus on implementing what we've already approved toward the roadmap, to ensure we actually ship in a timely fashion.
Yes. After exploration, though, it's not entirely clear that this approach will solve the bulk of the problem around Copy
types. @cramertj is currently thinking through some alternatives that focus more on our operator traits specifically (which is where the problems most commonly occur).
It refers to ideas presented in this thread. However, it seems that the "copy-on-write" strategy is essentially unworkable (for some technical reasons I don't have time to detail right now), and that in general the issues with strings span a number of different areas. Unfortunately, I think it's unlikely that we'll have a design ready for this year's cycle.