[Haskell-cafe] How can i safely change the value of specified
z_axis at 163.com
Thu Oct 22 05:30:51 EDT 2009
>>f xs = (2,2222) : filter ((/=2) . fst) xs
It works but not general as `f` still needs to change other value according
to the "KEY".
Maybe Data.List will supply what i need.
Ketil Malde-5 wrote:
> zaxis <z_axis at 163.com> writes:
>>>>value <- readIORef aaa
>>>>writeIORef aaa (f value)
>> then aaa will *point to* a new value.
> Exactly. That's what IORefs are, references pointing to contents that
> can be changed in the IO monad.
>> The original value will be Garbage Collected, right ?
> Yes, unless something else is holding on to it.
>> Is [(1,1),(2,2),(3,3)] been regarded as a hash?
> It's a list of pairs. You can treat it as an association list using
> e.g. 'lookup' from Data.List, if that's what you mean.
>> If not, what is the best way to change it to [(1,1),(2,2222),(3,3)] in
>> function `f` ?
> Not sure if there's anything in Data.List, but you could do something
> f xs = (2,2222) : filter ((/=2) . fst) xs
> If I haven't seen further, it is by standing in the footprints of giants
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
View this message in context: http://www.nabble.com/How-can-i-safely-change-the-value-of-specified-key---tp26005244p26006947.html
Sent from the Haskell - Haskell-Cafe mailing list archive at Nabble.com.
More information about the Haskell-Cafe