borrowed pointers vs ref

Dicebot via Digitalmars-d digitalmars-d at puremagic.com
Fri May 16 13:18:22 PDT 2014


On Friday, 16 May 2014 at 18:57:34 UTC, Walter Bright wrote:
> On 5/16/2014 10:33 AM, Dicebot wrote:
>> On Friday, 16 May 2014 at 17:22:21 UTC, Walter Bright wrote:
>>> On 5/16/2014 9:43 AM, Dicebot wrote:
>>>> Transitive
>>>> borrowing solves certain class of issues that currently rely 
>>>> on convention,
>>>> enabling whole new type of verified safe code (both memory 
>>>> safe and concurrency
>>>> safe). Head-only? Doesn't look so.
>>>
>>> I'm concerned that transitive borrowing will *preclude* a 
>>> number of useful cases.
>>
>> Which is why `ref` itself can't be used for that and usage of 
>> `scope` as
>> qualifier is necessary to enable transitive behavior :)
>
> True, but there comes a point where something gets complicated 
> enough that nobody understands it and the implementation gets 
> full of bugs.

Then we are back to square one "`scope` is needed but difficult 
to implement so lets not touch it" :) Which is understandable but 
does not warrant adding mostly useless concept simply because it 
is easier.

Also I believe `scope` is one of concepts that are hard to define 
but incredibly easy to grasp intuitively.


More information about the Digitalmars-d mailing list