[ruby-core:91549] [Ruby trunk Feature#11076] Enumerable method count_by

From: mame@...
Date: 2019-02-15 00:30:12 UTC
List: ruby-core #91549
Issue #11076 has been updated by mame (Yusuke Endoh).


baweaver (Brandon Weaver) wrote:
> It's a common enough that the syntax may be justified.

That's just because "map + something" is frequent.  However, blindly adding a "map" feature to anything does not make sense to me.  In fact, "map + select" is much more frequent, but it is not introduced yet (#5663, #15323).  If we add "tally_by" as a shorthand to "map + tally", we should confirm if the combination is truly frequent (i.e., "tally" is rarely used without "map").  We can do it affer only "tally" is released.

----------------------------------------
Feature #11076: Enumerable method count_by
https://bugs.ruby-lang.org/issues/11076#change-76812

* Author: haraldb (Harald B旦ttiger)
* Status: Closed
* Priority: Normal
* Assignee: nobu (Nobuyoshi Nakada)
* Target version: 
----------------------------------------
I very often use `Hash[array.group_by{|x|x}.map{|x,y|[x,y.size]}]`.

Would be nice with to have a method called `count_by`:

~~~ruby
array = ['aa', 'aA', 'bb', 'cc']
p array.count_by(&:downcase) #=> {'aa'=>2,'bb'=>1,'cc'=>1}
~~~



-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:ruby-core-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>

In This Thread

Prev Next