Le 16/4/16 15:12, Nicolai Hess a écrit :


2016-04-16 14:50 GMT+02:00 Werner Kassens <wkass...@libello.com <mailto:wkass...@libello.com>>:

    perhaps it is a speed question? using pharo4.0 (with polymath):
    a:=DhbVector new: 50 random: 20.
    b:=a copy asOrderedCollection  .
    Smalltalk garbageCollect .
    [ b removeDuplicates]bench. "'47,004 per second'"
    b:=a copy asArray.
    Smalltalk garbageCollect .
    [ b asSet asArray    ]bench.  "'27,249 per second'"
    werner


the advantage for removeDuplicates ( and maybe the reason it was implemented) is, it
preserves the order.

this would be an argument in favor of having it in addition to avoid double iteration.
Now people may also want to use OrderedSet.

Stef


    On 04/16/2016 09:01 AM, stepharo wrote:

        And I do not see why removeDuplicates is less ugly than asSet
        asArray.
        Just that it is doing two passes.

        Stef

        Le 15/4/16 23:57, Yuriy Tymchuk a écrit :


                On 11 Apr 2016, at 09:06, Nicolai Hess
                <<mailto:nicolaih...@gmail.com
                <mailto:nicolaih...@gmail.com>>nicolaih...@gmail.com
                <mailto:nicolaih...@gmail.com>> wrote:



                2016-04-10 8:55 GMT+02:00 Volkert
                <<mailto:volk...@komponentenwerkstatt.de
                
<mailto:volk...@komponentenwerkstatt.de>>volk...@komponentenwerkstatt.de
                <mailto:volk...@komponentenwerkstatt.de>>:

                    Sorry. i meant AthensSkatch ;-) It is a nice demo
                about using athens.

                http://smalltalkhub.com/#!/~NicolaiHess/AthensSketch
                <http://smalltalkhub.com/#%21/%7ENicolaiHess/AthensSketch>
<http://smalltalkhub.com/#%21/%7ENicolaiHess/AthensSketch>





                Hi Volkert,
                I just replaced
                #removeDuplicates with
                #asSet
                (this should work now).


            I think that it would be nice to have removeDuplicates.
            Because
            sometimes you need to end up with ordered collection and
            then you need
            to do something like `obj asSet asArray` and it is ugly.

            Uko


                (and replaced some deprecated on:send:to: calls (for
                Announcements) with
                when:send:to:

                in the latest version.


                Nicolai




                    On 10.04.2016 07:42, stepharo wrote:



                        Le 9/4/16 22:36, Volkert a écrit :

                            What happens to
                OrderedCollection>>removeDuplicates in
                            Pharo 5.0? In Pharo 4.0 it was part of a
                Package
                            "GroupManager"?


                        It was probably badly implemented or only used
                in group
                        manager (whose code was terrible) and we
                cleaned it.
                        Now we could reintroduce it but in the right
                place and with
                        tests.

                            It breaks the nice Package "AthensScratch"
                in Pharo 5.0


                        what is athenscracth?


                            BW.
                            Volkert












Reply via email to