On 02/16/2016 12:48 AM, Walter Bright wrote: > rears its head again :-) > > Head Const is what C++ has for const, i.e. it is not transitive, applies > to one level only. D has transitive const. > > What head const will do for us: > > 1. make it easy to interface to C++ code that uses const, as currently > it is not very practical to do so, you have to resort to pragma(mangle) > > 2. supports single assignment style of programming, even if the data is > otherwise mutable > > The downside is, of course, language complexity.
Moderately skeptical here. Adding features to the language for the sake of C++ compatibility is good way to ensure C++ compatibility will be its only domain of triumph. I'd expect more justification for users who don't care about C++ but want language which doesn't collapse under own weight.