Const sucks

Bruce Adams tortoise_74 at yeah.nospam.mehoo.co.uk
Mon Sep 10 14:40:23 PDT 2007


Russell Lewis Wrote:

> Walter Bright wrote:
> > What we are trying to achieve:
> > 
> > a) utility for functional programming
> > b) better modularity by self-documenting interfaces better
> > c) be able to treat reference types as if they were value types (i.e. 
> > strings should behave to the user like value types, even though they are 
> > references)
> 
> Is there a way to express (for a pointer passed as a function parameter) 
> "the callee is allowed to modify this object through the pointer, but 
> the caller ensures that no other code will be modifying it at the same 
> time"?   Sort of a "you have exclusive write access" modifier?  Is that 
> a common enough case to even support?
> 
> Russ

That's an interesting concept. From the functions point of view it would compile as if it was invariant but the invariantness doesn't have a lifetime beyond the function. I think its slightly off topic here though, multi-threading / IPC is an entirely different kettle of bananas. How do you even declare whether a variable is shared or thread-local at the moment? This is only indirectly related to the const concept. What we have hear is "shared locked" versus "shared volatile" versus "local".

Bruce.




More information about the Digitalmars-d mailing list