Hi All, For my needs, I need something akin to a Smalltalk Association and the current Pair works but it is not how I would like to see it implemented.
I want an interface and a generics-based implementation (like Pair.) I find it weird to write "Map.Entry myAssoc = ..." but our Pair should implement Map.Entry because M.E is a JRE interface just for this kind of stuff even if the pair is not used in a Map. How about this pseudo-code: interface Pair extends Map.Entry (add some of our stuff in there if we need it.) class BasicPair<K,V> implements Pair. Then we can talk about adding primitive Pairs. Gary On Thu, Mar 3, 2011 at 2:08 PM, Stephen Colebourne <scolebou...@joda.org>wrote: > On 3 March 2011 18:56, Matt Benson <gudnabr...@gmail.com> wrote: > > [SNIP] > >> I don't love the new Pair class. We have an interface based version > >> here at OpenGamma to allow primitive implementations for performance. > >> I might be able to get our code released if there was interest. > > > > Providing interfaces without code that consumes them doesn't feel like > > [lang]'s mission; this is akin to providing exceptions we don't use > > IMHO. It might be okay for Pair<L, R> to implement Map.Entry<L, R>, > > for example. But when you say primitive implementations, do you mean > > implementations based around primitive types, or simplistic > > implementations? If the latter, how much more simplistic could it > > get? > > Our OpenGamma pair is an abstract class (not an interface!): > public abstract class Pair<A, B> implements Map.Entry<A, B>, > Comparable<Pair<A, B>>, Serializable > > There are concrete implementations for ObjectsPair, DoublesPair, > IntDoublePair etc. where the user can access the primitive type > directly, or just use the base generified class. The question is > whether [lang] wants no Pair, a simple one, or a full-featured one > (where people may disagree on what full-featured should look like). > > Stephen > > --------------------------------------------------------------------- > To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org > For additional commands, e-mail: dev-h...@commons.apache.org > > -- Thank you, Gary http://garygregory.wordpress.com/ http://garygregory.com/ http://people.apache.org/~ggregory/ http://twitter.com/GaryGregory