Comment #5 on issue 3498 by rydier: remove:ifAbsent: in linked list leads to interruption/sync problems
http://code.google.com/p/pharo/issues/detail?id=3498
remove: aLinkOrObject ifAbsent: aBlock
"Remove aLink from the receiver. If it is not there, answer the result
of
evaluating aBlock."
|link|
link := self linkOf: aLinkOrObject ifAbsent: [^aBlock value].
self removeLink: link ifAbsent: [^aBlock value].
^aLinkOrObject
