== Quote from Andrei Alexandrescu (seewebsiteforem...@erdani.org)'s article > Steven Schveighoffer wrote: > > Hopefully, Andrei will eventually get around to dealing with const in > > std.container and see what a mess it will become without some sort of > > tail-const for ranges. > I believe at some point an approach will come forth. Here are a few > quick thoughts on this large exchange: > * The discussion this time around reflects a deep and thorough > understanding of the issues involved throughout the community. > * I think head-const has its usefulness, and tail-const is obviously in > need for serious attention. Ideally we should reach, with no or minimal > language changes, the point at which full const is the built-in power > tool and head-const and tail-const are library artifacts. I think it's > quite easy to define a Final!T template that is head-const, and > Rebindable!T is a starting point for tail-const classes. We need to > figure a pattern for achieving tail constness for general types.
Forgive me for replying to a post that's over a month old, but I was just thinking about this. The only problem I see with making Rebindable a limited form of general tail const is the issue of structs with elaborate assignment. Do you have any tricks up your sleeve for dealing with this?