Swift does away with pointers == pervasive ARC

Nick Sabalausky via Digitalmars-d digitalmars-d at puremagic.com
Mon Jun 16 22:52:31 PDT 2014


On 6/16/2014 8:57 PM, Ary Borenszweig wrote:
> On 6/16/14, 9:22 PM, Manu via Digitalmars-d wrote:
>> On 17 June 2014 10:08, deadalnix via Digitalmars-d
>> <digitalmars-d at puremagic.com> wrote:
>>> On Monday, 16 June 2014 at 15:16:44 UTC, Manu via Digitalmars-d wrote:
>>>>
>>>> What say you to that, Walter?
>>>>
>>>> Apple have committed to pervasive ARC, which you consistently argue is
>>>> not feasible...
>>>> Have I missed something, or is this a demonstration that it is
>>>> actually practical?
>>>
>>>
>>> http://stackoverflow.com/questions/24101718/swift-performance-sorting-arrays
>>>
>>>
>>> Does it answer the question ?
>>
>> -Ofast seems to perform the same as C++. -Ofast allegedly does
>> basically what '-release -noboundscheck' does. You'd never try and
>> benchmark D code without those flags.
>
> But other languages are very fast without loosing the bounds check...
> Other languages don't sacrifice safety and yet are very performant.
>

Well, I think interesting part we're trying to look at here is the ARC's 
impact on speed. We already know bounds-/overflow-checks can slow things 
down, so I'm not sure the -O3 and -O0 timings are relevant to the 
analysis of ARC's impact. (If anything, I have a hunch they're more 
indicative of Swift's current immaturity.)

But, the comments in that thread seem to suggest that -Ofast *keeps* the 
ARC. If that's so, then the -Ofast timings seem to suggest ARC might not 
necessarily be a performance killer. Although direct side-by-side 
comparison with a D equivalent (or an otherwise no-ARC version) would be 
more meaningful.



More information about the Digitalmars-d mailing list