Loose end: zip
Brian Goetz
brian.goetz at oracle.com
Thu Jun 6 16:53:15 PDT 2013
Has anyone on the EG experimented with *this* version of zip? Do you
have experience to report?
On 6/6/2013 6:58 PM, Joe Bowbeer wrote:
> I don't think I have anything to add to what I already said: zip is an
> expressive, useful tool.
>
> Java programmers effectively use maps of maps, and maps of lists, and
> lists of maps, and all kinds of inefficient things.
>
> Originally, Java's biggest advantage was its increased productivity.
> That one advantage can make up for lots of little disappointments.
>
> I definitely don't want to have to search for a zip snippet somewhere
> (e.g., in Fugue?). A basic tool like zip is not something I would look
> for in an extension library.
>
> Regarding the no-primitive versions, I think the consensus was to live
> with that.
>
>
> On Thu, Jun 6, 2013 at 12:49 PM, Brian Goetz <brian.goetz at oracle.com
> <mailto:brian.goetz at oracle.com>> wrote:
>
> Still feeling kind of YAGNI on zip, for the reasons cited in the
> message below, plus:
> - No primitive versions (would require new SAMs)
> - Hard to parallelize
> - Multiple ways to deal with streams of different length; we pick one
>
> Might this be something best provided by some other library than the
> JDK? Or as a code example somewhere people can crib from to roll
> their own?
>
> On 5/1/2013 5:10 PM, Brian Goetz wrote:
>
> Right, but the question is, how badly can we implement it and
> have it
> not be worse than nothing? And, with the current performance
> characteristics (new object per element), are we below that
> threshold?
>
> My problem is the same as with flatMap -- these are idioms from
> other
> languages that *translate poorly* to Java because of the lack of
> tuples
> and other structural types. (The flatMap we got left with --
> which I
> reluctantly supported as the lesser of evils -- is,
> coincidentally, the
> only other stream operation that has allocation-per-element.)
> At what
> level of translation-fidelity loss do we say "yeah, it works
> great in
> that other environment, but too much is lost in translation"?
>
> I don't doubt the utility of zip, or the fact that Joe-alikes
> will want
> it, and would be bummed to not find it. My question is whether the
> crappy zip we can have is better than no zip. (Where better doesn't
> just mean "better than nothing", but carries its weight.)
>
>
More information about the lambda-libs-spec-experts
mailing list