[Haskell-cafe] Way to prevent a value from being garbage collected too early
Sylvain Henry
sylvain at haskus.fr
Wed May 13 07:28:28 UTC 2020
The primitive is `touch#`
(https://www.stackage.org/haddock/lts-15.12/base-4.13.0.0/GHC-Exts.html#v:touch-35-)
It's quite fragile (e.g. can be optimized away or moved), so we're
trying to replace it with something else. See
https://gitlab.haskell.org/ghc/ghc/-/wikis/proposal/with-combinator
On 13/05/2020 09:03, YueCompl via Haskell-Cafe wrote:
> Thanks! I found `touch` in `Control.Monad.Primitive` , and repa even
> requires an array element type to implement `Elt` which mainly asking
> for the `touch` method.
>
> It's interesting to know there's even more improvement on it.
>
>> On 2020-05-13, at 14:52, David Feuer <david.feuer at gmail.com
>> <mailto:david.feuer at gmail.com>> wrote:
>>
>> You're looking for the `touch` function. I don't remember where it
>> lives. I believe there's also a new and improved replacement whose
>> name I don't remember.
>>
>> On Wed, May 13, 2020, 2:47 AM YueCompl via Haskell-Cafe
>> <haskell-cafe at haskell.org <mailto:haskell-cafe at haskell.org>> wrote:
>>
>> Folks,
>>
>> I need a little help, I remember I had read some where that,
>> there's a function to fake a use of a value, so it won't be
>> garbage collected too early, as GHC has an optimization to forget
>> a value as early as possible. But I can't remember the function
>> name or even the keyword to google it out, hint me please!
>>
>> Best regards,
>> Compl
>>
>> _______________________________________________
>> 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.
>>
>> _______________________________________________
>> 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.
>
>
> _______________________________________________
> 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.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20200513/f836f2f2/attachment.html>
More information about the Haskell-Cafe
mailing list