David Landgren writes:

> ... my main question concerns the name. Is it good? Did you understand
> what the module would do when your saw the subject of this message in
> your inbox? 

No.  And I still don't understand what "WithoutReplacement" means in
this context -- after reading those terms in the title, I was expecting
them to crop up again somewhere in the synopsis or the description.

The implication is that ordinarily when selecting something it is
replaced -- but I've no idea what that means.

> Is there a better name(?:space)? for this?

It looks to me that this module when given a set returns its power set:

  http://en.wikipedia.org/wiki/Power_set

so perhaps Data::PowerSet is appropriate.

Except that it isn't clear what your module does if the input list
contains duplicate items.  Sets can't contain duplicates; if your module
just sees a list with 5 items in it and permutes those items by their
indices then it wouldn't even notice the dupes, so obviously it isn't
(solely) working with sets.

But the module name is supposed to be "best fit" rather than "perfect",
so even if your module also provides analogous behaviour on things that
aren't sets, I don't think that would bar it from using PowerSet in its
name.

> (I rule out Algorithm::*, since the you're not actually supposed to
> care how it does its business, only that it does it).

That's a good point, and I completely agree with you on it.

Smylers
-- 
May God bless us with enough foolishness to believe that we can make a
difference in this world, so that we can do what others claim cannot be done.

Reply via email to