checkedint call removal

Chris Cain via Digitalmars-d digitalmars-d at puremagic.com
Fri Aug 1 18:11:00 PDT 2014


On Friday, 1 August 2014 at 23:11:17 UTC, Timon Gehr wrote:
> ( Source: 
> http://www.chris.com/ascii/index.php?art=objects/explosives )
>
> On 08/02/2014 12:26 AM, Chris Cain wrote:
>> On Friday, 1 August 2014 at 22:17:15 UTC, Timon Gehr wrote:
>>> "contradictory assertions"
>>>
>>> "To what degree of certitude must the assertion be supported?"
>>>
>>> etc.
>>>
>>> I'll not go into more details because I actually intend not to
>>> participate again in heated debate after already having shown 
>>> strong
>>> evidence.
>>
>> Frankly, I don't understand the point you're trying to make, 
>> so it's not
>> really possible to rebut it.
>>
>> If your point is that assertions need to have evidence to be 
>> assertions,
>> an easy counterproof of this is in your own quote: "To what 
>> degree of
>> certitude must the assertion be supported?" ... It wouldn't 
>> have been
>> called an assertion in that sentence unless it's something 
>> that is sure
>> that it had been supported sufficiently (it would have been 
>> worded more
>> along the lines of "To what degree of certitude must the 
>> assertion
>> *candidate* be supported?")
>> ...
>
> Look, this is a really poor piece of logical reasoning, and for 
> today I am expressedly fed up with arguing against obvious non 
> sequiturs and immediately summoning new ones. In any case, my 
> easy way out is to note that this is not my assertion.

I don't disagree that having to come up with an argument for you 
is poor. However, by not stating what it is you have provided 
"strong evidence" for, what does that leave me to do? I can 
simply say nothing but "what are you saying" but I had said that 
once already. It's a complete waste of time to argue with someone 
who refuses to make a clear position.

Frankly, if you're going to criticize others for making a "poor 
piece of logical reasoning", you should at least make something 
beginning to resemble a piece of logical reasoning yourself.

No, before you say anything, presenting evidence for a position 
you haven't stated isn't valid logical reasoning.

>
> To be really clear: My assertion was:
>
> It is not true that anyone who accepts the "assertion 
> definition" as the single conclusive way to give meaning to the 
> term 'assert' will be able to use it to distinguish the meaning 
> given to it by Walter and the other meaning under discussion, 
> given to it by other notable people, in such a way as to find 
> the former sensible and the latter nonsensical.

And by what evidence do you back that up with? I think the only 
reasonable, logical thing to do when you state a fact to a 
computer program is that it accepts it as a fact. So the 
definition of assertion very much clarifies exactly the behavior 
described of assert. The only thing that differs from the 
definition is that the compiler will insert checks for your 
assertion under certain circumstances, but by the definition it 
would not be under obligation to do so (although, the fact that 
it's checking your assertions when you're debugging is infinitely 
useful, so it makes a lot of sense for it to go against the 
definition slightly for pragmatism).

>
> Sigh, I got involved again.
>
>> I think it's clear that the definition of assertion being 
>> "statement of
>> fact or belief" is compatible with the usage in that wikipedia 
>> article.
>> ...
>
> Yes. Please go back and read the relevant posts, find out what 
> they assert and agree with them or argue against an assertion 
> that was actually made. I have seen assertions such as: "the 
> definition of the word really makes it obvious what the feature 
> was originally intended to convey."
>
>> In particular, "contradictory 'statements of fact'"
>
> http://en.wikipedia.org/wiki/Fact

I hope you don't think that "state a fact or belief confidently 
and forcefully" and "fact" are necessarily the same thing. If it 
were, then the better definition of assert would have simply been 
"fact".

>
>> [...]  actually make perfect sense.
>
> Contradictory facts make perfect sense. Contradictory facts 
> make no sense at all. Those two assertions expressed facts, 
> unless this third assertion is wrong. The next assertion is 
> wrong. The preceding assertions are statements of fact.

Contradictory STATEMENTS makes perfect sense. Since assertions 
are STATEMENTS of facts (or beliefs, to be clear), your entire 
argument is broken because you've used strawman.

It makes perfect sense to make contradictory assertions. Of 
course, your program failing to behave in a defined manner 
because of it (since you're, in effect, god of your program and 
the assertions you make will really be followed unlike people who 
might question your assertions and demand evidence) should be 
expected, just like if you wrote an incorrect if statement you 
can expect your program to have buggy behavior.

In particular, you cannot really reasonably expect that a program 
with incorrect statements (asserts, ifs, function call, whatever) 
to behave correctly. Writing an incorrect assert will (not 
surprisingly) result in a bug in a program just as if you wrote 
the wrong if statements in a binary search algorithm.


More information about the Digitalmars-d mailing list