assume, assert, enforce, @safe
via Digitalmars-d
digitalmars-d at puremagic.com
Tue Aug 5 02:42:25 PDT 2014
On Monday, 4 August 2014 at 00:59:10 UTC, Andrei Alexandrescu
wrote:
> For my money, consider Walter's response:
>
>> What I see is Microsoft attempting to bring D's assert
>> semantics into
>> C++. :)
>>
>> As I've mentioned before, there is inexorable pressure for
>> this to
>> happen, and it will happen.
>
> I find it to the point, clear, and funny.
Yeah, it was funny because:
( http://msdn.microsoft.com/en-us/library/1b3fsfxw.aspx )
«Caution:
A program must not contain an invalid __assume statement on a
reachable path. If the compiler can reach an invalid __assume
statement, the program might cause unpredictable and potentially
dangerous behavior.»
Please note «if the compiler can reach», not «if a path can be
executed».
And «inexorable»:
( https://www.google.no/search?q=inexorable )
- "the seemingly inexorable march of new technology"
- (of a person) impossible to persuade; unrelenting.
Of course, being unrelenting goes with the territory of
single-handedly building a c++ competitor. So it is not a bad
trait. The bad thing here is not making "compile assert as
assume" an experimental feature, but making it the default.
People who are autodidact also sometimes find new ways of doing
things because they are more likely to go explore new paths. But
I don't think this path is all that new… so I hope Walter, if he
continues walking down this path, remains unrelenting and keeps
walking past "assert as assume" until he finds truly new
territory in the realm of formal methods. That could happen and
bring great features to D.
There is a significant difference between going down a path to
see what you can find on the other end and turning the path into
a goal, a priori.
More information about the Digitalmars-d
mailing list