The only reason I'd normally expect to have an empty constructor would be
for reflection. To that end, should it have a setComparator/getComparator
methods?

Hen

On Tue, 19 Mar 2002, Morgan Delagrange wrote:

> Do we need an empty constructor?  If it does not produce desirable
> behaviour, why not can it?
>
> ----- Original Message -----
> From: "Henri Yandell" <[EMAIL PROTECTED]>
> To: "Jakarta Commons Developers List" <[EMAIL PROTECTED]>
> Sent: Tuesday, March 19, 2002 11:11 AM
> Subject: Re: [collections] ReverseComparator
>
>
> >
> > Functionality wise, I feel that Michael's proposed change is a negative
> > move. However he is absolutely right in all of his points. The current -1
> > does break the Comparator contract, the -1* is unnecessary coding, making
> > the constructor take ComparableComparator is then no different from
> > reverseOrder, and the name then does make more sense as InverseComparator.
> >
> > It's like a stack of dominoes :) Each point seems not necessarily true
> > until you realise each one leads to the next. So I'm:
> >
> > +1 on removing the -1*.
> > +1 on killing the current empty constructor.
> > +0 on using ComparableComparator which simulates reverseOrder
> functionality.
> >    It feels bad to replicate this, but we need an empty constructor.
> > +0 on the name of the class. It does behave more as an InverseComparator
> >    from a mathematical point of view (which I share), but Reverse does
> >    seem more readable.
> >
> > Hen
> >
> >
> > On Tue, 19 Mar 2002, Morgan Delagrange wrote:
> >
> > > Michael suggested that the no-op constructor essentially behave like
> this:
> > >
> > >   ReverseComparator() {
> > >       this(ComparableComparator.getInstance());
> > >   }
> > >
> > > What do you think, Hen?  Do you think that is preferable, or do you
> prefer
> > > your initial behaviour (reversing the List).
> > >
> > >
> > > ----- Original Message -----
> > > From: "Henri Yandell" <[EMAIL PROTECTED]>
> > > To: "Jakarta Commons Developers List" <[EMAIL PROTECTED]>
> > > Sent: Tuesday, March 19, 2002 7:50 AM
> > > Subject: Re: [collections] ReverseComparator
> > >
> > >
> > > >
> > > > I'm happy with the name Inverse as it is more what the comparator
> does.
> > > > Reverse makes it easier to see how it can be used for one case, but
> will
> > > > hide other meanings.
> > > >
> > > > Why does this exist over Collections.reverseOrder? Because the Sun
> version
> > > > is limited. Why can I only reverse Comparables? Really there should be
> a
> > > > Collections.reverseOrder(Comparator) as well.
> > > >
> > > > Hen
> > > >
> > > > > I agree that reverse is common terminology when sorting, but I
> disagree
> > > > > that sorting is intrinsicly what a comparator does. While sorting is
> > > > > probably the most common use-case for comparators, the comparator
> itself
> > > > > does not do any sorting.  It compares objects and returns a
> negative,
> > > zero
> > > > > value, or positive result.  It doesn't rearrange, reverse, order, or
> > > > > "sort".  It just compares two objects. This particular comparator
> > > > > "inverses" the result of the compare to be a positive, zero value,
> or
> > > > > negative result (respectively).  I use "inverse" here in its
> > > mathematical
> > > > > sense of inverting the result, since that's all this comparator is
> > > doing.
> > > > >
> > > > > I'm not going to argue this anymore though.  I've changed my
> position --
> > > > > why is this class even included in commons when the JDK provides a
> > > > > reverse/inverse comparator already?  @see Collections.reverseOrder()
> > > > >
> > > > > regards,
> > > > > michael
> > > > >
> > > > > > "Michael A. Smith" wrote:
> > > > > > >[snip]
> > > > > > > Additionally, I think that "InverseComparator" is a more
> appropriate
> > > name,
> > > > > > > as "inverse" has a more direct meaning (to me at least).
> Inverse
> > > has the
> > > > > > > mathematical meaning of the opposite sign which is exactly what
> this
> > > > > > > comparator does.  Reverse, on the other hand, implies switching
> the
> > > order
> > > > > > > of something, the comparator isn't really switching the order
> > > (although a
> > > > > > > collection using the comparator may be "reversed" if it uses the
> > > "inverse"
> > > > > > > comparator).
> > > > > > >
> > > > > > > Thoughts?
> > > > > > >[snip]
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > > > --
> > > > > To unsubscribe, e-mail:
> > > <mailto:[EMAIL PROTECTED]>
> > > > > For additional commands, e-mail:
> > > <mailto:[EMAIL PROTECTED]>
> > > > >
> > > > >
> > > >
> > > >
> > > > --
> > > > To unsubscribe, e-mail:
> > > <mailto:[EMAIL PROTECTED]>
> > > > For additional commands, e-mail:
> > > <mailto:[EMAIL PROTECTED]>
> > >
> > >
> > > _________________________________________________________
> > > Do You Yahoo!?
> > > Get your free @yahoo.com address at http://mail.yahoo.com
> > >
> > >
> > > --
> > > To unsubscribe, e-mail:
> <mailto:[EMAIL PROTECTED]>
> > > For additional commands, e-mail:
> <mailto:[EMAIL PROTECTED]>
> > >
> > >
> >
> >
> >
> > --
> > To unsubscribe, e-mail:
> <mailto:[EMAIL PROTECTED]>
> > For additional commands, e-mail:
> <mailto:[EMAIL PROTECTED]>
>
>
> _________________________________________________________
> Do You Yahoo!?
> Get your free @yahoo.com address at http://mail.yahoo.com
>
>
> --
> To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
>
>


--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to