checkedint call removal

Andrei Alexandrescu via Digitalmars-d digitalmars-d at puremagic.com
Wed Jul 30 13:55:32 PDT 2014


On 7/30/14, 11:31 AM, Timon Gehr wrote:
> On 07/30/2014 07:56 PM, Andrei Alexandrescu wrote:
>> On 7/30/14, 9:31 AM, Timon Gehr wrote:
>>> 'lazy', which denotes pass by name instead of pass by need.
>>
>> It's not pass by name.
>> ...
>
> How so? Is it about failure to allocate a closure?

void fun(lazy int a) { ... }
int x = 42;
fun(x + 2);

"x + 2" doesn't have a name.

>>> 'pure' which denies access to mutable static variables and IO.
>>
>> That's the consequence of functional purity as defined by D.
>
> Somewhat debatable, but unworthy of debate.

Then don't mention it.

>> Consider this: after considerable effort you are failing to explain your
>> case for "assume" to the language creators.
>
> I think there was no such case (yet), only an unsuccessful attempt to
> clear up a misunderstanding based on terminology.

My perception is you were arguing for a very subtle distinction, one 
that would hardly deserve a language feature.

>> How do you think you'll fare with newcomers?
>> ...
>
> Hopefully, awesomely. Much less preconceptions.

May you have less snarky users than I do :o).


Andrei




More information about the Digitalmars-d mailing list