[#25936] [Bug:1.9] [rubygems] $LOAD_PATH includes bin directory — Nobuyoshi Nakada <nobu@...>

Hi,

10 messages 2009/10/05

[#25943] Disabling tainting — Tony Arcieri <tony@...>

Would it make sense to have a flag passed to the interpreter on startup that

16 messages 2009/10/05

[#26028] [Bug #2189] Math.atanh(1) & Math.atanh(-1) should not raise an error — Marc-Andre Lafortune <redmine@...>

Bug #2189: Math.atanh(1) & Math.atanh(-1) should not raise an error

14 messages 2009/10/10

[#26222] [Bug #2250] IO::for_fd() objects' finalization dangerously closes underlying fds — Mike Pomraning <redmine@...>

Bug #2250: IO::for_fd() objects' finalization dangerously closes underlying fds

11 messages 2009/10/22

[#26244] [Bug #2258] Kernel#require inside rb_require() inside rb_protect() inside SysV context fails — Suraj Kurapati <redmine@...>

Bug #2258: Kernel#require inside rb_require() inside rb_protect() inside SysV context fails

24 messages 2009/10/22

[#26361] [Feature #2294] [PATCH] ruby_bind_stack() to embed Ruby in coroutine — Suraj Kurapati <redmine@...>

Feature #2294: [PATCH] ruby_bind_stack() to embed Ruby in coroutine

42 messages 2009/10/27

[#26371] [Bug #2295] segmentation faults — tomer doron <redmine@...>

Bug #2295: segmentation faults

16 messages 2009/10/27

[ruby-core:26287] Re: New Enumerable#flat_map

From: Yusuke ENDOH <mame@...>
Date: 2009-10-25 02:04:05 UTC
List: ruby-core #26287
Hi,

2009/10/25 Marc-Andre Lafortune <ruby-core-mailing-list@marc-andre.ca>:
> I noticed the new Enumerable#flat_map (aka collect_concat) and I was
> wondering what prompted the creation of this method.
>
> I'm probably missing something, but what is the difference between:
>    enum.collect_concat(&block)
> and
>    enum.map(&block).flatten(1)
> ?
>
> In what kind of circumstances is flat_map needed?


I guess the rationale:

- map+flatten(1) is a bit too long in spite of a frequent idiom.
- flat_map is shorter and plainer than map+flatten(1).
- flat_map does not create intermediate array.
- flat_map is provided in Scala (and Haskell).  [direct reason?]

http://twitter.com/yukihiro_matz/statuses/5108220843

Thanks,

-- 
Yusuke ENDOH <mame@tsg.ne.jp>

In This Thread