From: "nobu (Nobuyoshi Nakada)" Date: 2013-06-27T17:26:30+09:00 Subject: [ruby-core:55669] [ruby-trunk - Feature #6183] Enumerator::Lazy performance issue Issue #6183 has been updated by nobu (Nobuyoshi Nakada). Your patch seems * reverting inspect_enumerator() * containing dead code I pushed a branch which split and merged a few functions, and used function pointer tables. https://github.com/nobu/ruby/tree/lazy_enum ---------------------------------------- Feature #6183: Enumerator::Lazy performance issue https://bugs.ruby-lang.org/issues/6183#change-40174 Author: gregolsen (Innokenty Mikhailov) Status: Assigned Priority: Low Assignee: zzak (Zachary Scott) Category: Target version: I benchmarked Enumerator::Lazy and that's what I got: user system total real Lazy: 0.690000 0.010000 0.700000 ( 0.733160) Normal: 0.160000 0.010000 0.170000 ( 0.186695) It seems like even with 4 chain links and 3000 elements in initial array, Lazy enumerator is almost 4(!) times slower than the normal case. Instead of performance benefit we've got 4 times performance drawback. See test file attached. -- http://bugs.ruby-lang.org/