assert semantic change proposal
David Bregman via Digitalmars-d
digitalmars-d at puremagic.com
Sun Aug 3 15:26:23 PDT 2014
On Sunday, 3 August 2014 at 22:15:52 UTC, Andrei Alexandrescu
wrote:
> On 8/3/14, 2:57 PM, John Carter wrote:
>> On Sunday, 3 August 2014 at 19:47:27 UTC, David Bregman wrote:
>>
>>> Walter has proposed a change to D's assert function as
>>> follows [1]:
>>> "The compiler can make use of assert expressions to improve
>>> optimization, even in -release mode."
>>
>> Hmm. I really really do like that idea.
>>
>> I suspect it is one of those ideas of Walter's that has
>> consequences
>> that reach further than anyone foresees..... but that's OK,
>> because it
>> is fundamentally the correct course of action, it's
>> implications
>> foreseen and unforeseen will be correct.
>
> Agreed.
I hope that agree was referring to some bits from the other
paragraphs, and that you don't seriously agree with that
blatantly self contradictory statement about unforseeable
unforseens :p
> One related point that has been discussed only a little is the
> competitive aspect of it all. Generating fast code is of
> paramount importance for D's survival and thriving in the
> market. Competition in language design and implementation is
> acerbic and only getting more cutthroat. In the foreseeable
> future efficiency will become more important at scale seeing as
> data is growing and frequency scaling has stalled.
Would you care to address the questions about performance raised
in the OP?
>
> Availing ourselves of a built-in "assert" that has a meaning
> and informativeness unachievable to e.g. a C/C++ macro is a
> very important and attractive competitive advantage compared to
> these and other languages.
Not really, you can redefine the C macro to behave exactly as
proposed, using compiler specific commands to invoke undefined
behavior. Didn't you say in the other thread that you tried
exactly that?
> Walter has always meant assert the way he discusses it today.
> Has he (and subsequently he and I) been imprecise in
> documenting it? Of course, but that just means it's Tuesday.
>
> That said, should we proceed carefully about realizing this
> advantage? Of course; that's a given. But I think it's very
> important to fully understand the advantages of gaining an edge
> over the competition.
Please comment on the concerns raised by the OP.
More information about the Digitalmars-d
mailing list