Fully transitive const is not necessary

Steven Schveighoffer schveiguy at yahoo.com
Wed Apr 2 06:57:02 PDT 2008


"Walter Bright" wrote
> Bill Baxter wrote:
>> If the ultimate goal is support for multiprogramming, then shouldn't the 
>> detailed design work should start *there*, with how to do great 
>> multiprogramming?  Rather than with const.
>>
>> Not saying that you guys have done this, but I know from my own 
>> experience doing research that it's easy to get hung up trying to solve a 
>> tough but solvable problem that seems relevant for getting from A to B, 
>> only to realize in the end that it was not as relevant as I thought.
>
> I think it is fairly obvious that transitive invariant (and const) is key 
> to multiprogramming. The transitive closure of the state of everything 
> reachable through an object is part of the state of that object, and all 
> the troubles with multiprogramming stem from the state of an object 
> changing asynchronously.

I think it's not so fairly obvious but true that transitive invariant and 
const are equivalent to logical invariant or const.  Please re-read my 
original example for the proof.

This puts a big dent in your argument that logical const doesn't cut it for 
multiprogramming, because what we have now is a logical const system.

-Steve 





More information about the Digitalmars-d mailing list