{
"$type": "site.standard.document",
"bskyPostRef": {
"cid": "bafyreigzjrso54a5ct7wxzj37ctj4g5silsx4z2rj5livswiy6nb3vrgoi",
"uri": "at://did:plc:pi6woz4d47bkuws673w2il2r/app.bsky.feed.post/3mnw6jlwmz672"
},
"path": "/t/haskells-missing-mutable-reference-type/14248#post_16",
"publishedAt": "2026-06-10T07:12:51.000Z",
"site": "https://discourse.haskell.org",
"textContent": "If the value is dynamically allocated, then how do you use it inside a function without passing it? And if you’re passing a value, why not determine the wanted behavior based on passed value instead? The following is obviously not valid Haskell:\n\n\n module Foo (foo) where\n\n withIOScopedRef 5 $ \\x ->\n let foo = _ x\n\n\nThe point here is that `x` is not a _value_ , it’s a place. `foo` expects a value to be there when it executes, user knows they can augment it.",
"title": "Haskell's missing mutable reference type"
}