Project

General

Profile

Actions

Feature #8970

open

Array.zip and Array.product

Added by sawa (Tsuyoshi Sawada) about 11 years ago. Updated about 5 years ago.

Status:
Open
Assignee:
-
Target version:
-
[ruby-core:57498]

Description

=begin
Most of the time when I use Array#zip or Array#product, I feel cumbursome that I have to take out the first array and pass it as a receiver. For example, if I have

a = [[:a, :b, :c], [:d, :e, :f], [:g, :h, :i]]

I have to do something like this:

a.first.zip(*a.drop(1)){...}
a.first.product(*a.drop(1)){...}

Sometimes, the receiver (i.e., the first array) has significance, but most other times, that breaks asymmetry, making the code look ugly.

I would be happy if we had Array.zip and Array.product in addition so that we can do it like this:

Array.zip(*a){...}
Array.product(*a){...}

=end


Related issues 3 (2 open1 closed)

Related to Ruby master - Feature #19324: Enumerator.product => Enumerable#productAssignedknu (Akinori MUSHA)Actions
Has duplicate Ruby master - Feature #6499: Array::zipRejectedmatz (Yukihiro Matsumoto)05/26/2012Actions
Is duplicate of Ruby master - Feature #7444: Array#product_setAssignedmatz (Yukihiro Matsumoto)Actions
Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0Like0Like0Like0Like0Like0