[Haskell-cafe] Can reallyUnsafePtrEquality give false positives?
Andrew Martin
andrew.thaddeus at gmail.com
Wed Nov 22 19:06:50 UTC 2017
It cannot give false positives. If it could, that would make it totally worthless.
Sent from my iPhone
> On Nov 22, 2017, at 12:22 PM, Michael Walker <mike at barrucadu.co.uk> wrote:
>
> Hello,
>
> Can reallyUnsafePtrEquality give false positives? I can see how it
> can give false negatives (eg, compiler optimisations increasing or
> decreasing sharing), but I'm not so sure if it can give false
> positives.
>
> I don't see how in a garbage collected language two live values could
> compare reference equal. Unless the implementation is something like:
>
> reallyUnsafePtrEquality a b = getptr a == getptr b
>
> ...as that then means that if the GC moves things after `getptr a` is
> evaluated but before `getptr b` is, then you could get a false
> positive. But that doesn't seem like a sensible implementation to me,
> because then reallyUnsafePtrEquality would surely be totally useless.
>
> --
> Michael Walker (http://www.barrucadu.co.uk)
> _______________________________________________
> Haskell-Cafe mailing list
> To (un)subscribe, modify options or view archives go to:
> http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe
> Only members subscribed via the mailman list are allowed to post.
More information about the Haskell-Cafe
mailing list