Issue #7343 has been reported by udzura (Uchio KONDO).
----------------------------------------
Bug #7343: Enumerator::Lazy seems to nest herself infinitely
https://bugs.ruby-lang.org/issues/7343
Author: udzura (Uchio KONDO)
Status: Open
Priority: Low
Assignee:
Category:
Target version: 2.0.0
ruby -v: ruby 2.0.0dev (2012-11-13) [x86_64-darwin11.4.2]
Hello, Ruby dev team.
I tried Ruby 2.0 trunk, and found Enumerator::Lazy a bit weird.
> [1, 2, 3].cycle.lazy.take 5
# => #<Enumerator::Lazy: #<Enumerator::Lazy: #<Enumerator: [1, 2, 3]:cycle>>:take(5)>
> [1, 2, 3].cycle.lazy.take_while {|i| i < 3 }.lazy.take(2)
# => #<Enumerator::Lazy: #<Enumerator::Lazy: #<Enumerator::Lazy: #<Enumerator: [1, 2, 3]:cycle>>:take_while>:take(2)>
> [1, 2, 3].cycle.lazy.take_while {|i| i < 3 }.lazy.take(2).lazy.take(3).lazy
# => #<Enumerator::Lazy: #<Enumerator::Lazy: #<Enumerator::Lazy: #<Enumerator::Lazy: #<Enumerator: [1, 2, 3]:cycle>>:take_while>:take(2)>:take(3)>
Is this type of infinite nesting desirable?
Thank you,
Uchio KONDO<
udz...@udzura.jp>
--
http://bugs.ruby-lang.org/