On 18 Feb 2015, at 18:13, Cameron Sanders via Pharo-users <pharo-users@lists.pharo.org> wrote:
Date: 18 Feb 2015 18:12:33 CET Subject: i feel dumb / Pharo3 > OrderedCollection >> do: From: Cameron Sanders <camsanders@aol.com> To: Any question about pharo is welcome <pharo-users@lists.pharo.org>
I must be making some silly error here that i cannot see clearly. Why does the following leave anything in the list 'a'? Run it in a workspace. With or without the shallowCopy, i am left with a list with half of the elements in it. Always half.
This version of Pharo3 (21.0) was downloaded last week. I am running on a Mac.
Thanks in advance. ... Maybe I just need more coffee. -Cam
| a | a := { #a. #b. #c. #d. } asOrderedCollection. a shallowCopy do: [ :item | (a includes: item) ifTrue: [ a remove: item ]]. a size
shallowCopy is not enough⦠OrderedCollection is made up of an internal array. #copy does the right thing, just copies the array: postCopy array := array copy and for Array, copy is a shallowCopy. Marcus