エンジニアのソフトウェア的愛情

または私は如何にして心配するのを止めてプログラムを・愛する・ようになったか

Filtering, then Mapping

Haskell
evenTen = map (\n -> n * 10) . filter even
Prelude> evenTen [1,2,3,4,5,6,7,8,9,10]
[20,40,60,80,100]
Ruby
def evenTen(a)
  a.select{|n| n % 2 == 0}.map{|n| n * 10}
end
irb(main):004:0> evenTen [1,2,3,4,5,6,7,8,9,10]
=> [20, 40, 60, 80, 100]
IO
evenTen := method(n, n select(% 2 == 0) map(*10))
Io> evenTen(list(1,2,3,4,5,6,7,8,9,10))
==> list(20, 40, 60, 80, 100)
C sharp
[1,2,3,4,5,6,7,8,9,10].Where(i => i % 2 == 0).Select(i => i * 10);

忘れないうちにメモしておこうと思ったのだけれども。実行環境がなかった orz 。
しかしなぜ mapping のためのメソッドの名前が Select なのだろう。