Why is D's GC slower than GO's?

Paulo Pinto pjmlp at progtools.org
Sun Oct 30 19:26:56 UTC 2022


On Sunday, 30 October 2022 at 18:42:58 UTC, Walter Bright wrote:
> On 10/30/2022 1:29 AM, Paulo Pinto wrote:
>> Swift and Objective-C, the system programing languages of 
>> Apple also have multiple pointer types.
>
> Do you have a reference? I did some googling, and didn't come 
> up with anything.

You can read the documentation over here,

https://clang.llvm.org/docs/AutomaticReferenceCounting.html

https://developer.apple.com/library/archive/releasenotes/ObjectiveC/RN-TransitioningToARC/Introduction/Introduction.html#//apple_ref/doc/uid/TP40011226

https://docs.swift.org/swift-book/LanguageGuide/AutomaticReferenceCounting.html

And if there is some legacy Objective-C 2.0 GC code lying around, 
there is

https://developer.apple.com/library/archive/documentation/Cocoa/Conceptual/GarbageCollection/Introduction.html#//apple_ref/doc/uid/TP40002431

Basically the attribute qualifiers for pointers and class 
properties, specially in Objective-C case, and the Swift 
Objective-C interop, influence the semantics and type semantics 
of what ARC does with the pointers and their compatibility with 
raw pointers that aren't managed by ARC.

And the now dead tracing GC experiement, also had its own flavour 
of GC managed pointers alongside raw ones.


More information about the Digitalmars-d mailing list