From: Levin Alexander Date: 2005-09-03T08:57:08+09:00 Subject: Re: Idiomatic conversion of yielding block to array ------=_Part_1138_30502354.1125705426525 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline On 9/2/05, Jacob Fugal wrote: > Ah, yes. I'd probably do it with SyncEnumerator rather than zip as > well, then[1]. I just used zip since its what you started with and you > didn't specify performance as an issue. Performance would probably be the wrong motivation to switch to SyncEnumerator. On my machine it is about 100 times slower then Enumerable#zip. sync-enum: 1.676 zip-enum: 0.018 sizedqueue: 0.226 -Levin ------=_Part_1138_30502354.1125705426525 Content-Type: application/octet-stream; name="compare.bm.rb" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="compare.bm.rb" IyEgL3Vzci9iaW4vcnVieSAtdwoKcmVxdWlyZSAnZ2VuZXJhdG9yJwpyZXF1aXJlICdlbnVtZXJh dG9yJwpyZXF1aXJlICdiZW5jaG1hcmsnCnJlcXVpcmUgJ3RocmVhZCcKCnMxID0gKCV3e3RoaXMg aXMgdGhlIGZpcnN0IHRlc3R9ICogMTAwKS5qb2luKCJcbiIpCnMyID0gKCV3e3RoaXMgaXMgdGhl IGZpcnN0IHRlc3R9ICogMTAwKS5qb2luKCJcbiIpCgpCZW5jaG1hcmsuYm0oMTUpIGRvIHxibXwK ICBibS5yZXBvcnQoInN5bmMtZW51bToiKSB7IAogICAgZmlyc3QsIHNlY29uZCA9IFtzMSwgczJd LmNvbGxlY3QgeyB8aXwgaS50b19lbnVtKDplYWNoX2xpbmUpIH0KICAgIFN5bmNFbnVtZXJhdG9y Lm5ldyhmaXJzdCxzZWNvbmQpLmVhY2ggeyB8YSxifCAKICAgICAgIyBjb21wYXJlIGEgYW5kIGIK ICAgIH0KICB9CiAgYm0ucmVwb3J0KCJ6aXAtZW51bToiKSB7CiAgICBmaXJzdCwgc2Vjb25kID0g W3MxLCBzMl0uY29sbGVjdCB7IHxpfCBpLnRvX2VudW0oOmVhY2hfbGluZSkgfQogICAgZmlyc3Qu emlwKHNlY29uZCkgeyB8YSxifCAKICAgICAgIyBjb21wYXJlIGEgYW5kIGIKICAgIH0KICB9CiAg Ym0ucmVwb3J0KCJzaXplZHF1ZXVlOiIpIHsKICAgIHExLCBxMiA9IFNpemVkUXVldWUubmV3KDEp LCBTaXplZFF1ZXVlLm5ldygxKQogICAgVGhyZWFkLm5ldyB7IHMxLmVhY2hfbGluZSB7fGx8IHEx IDw8IGx9OyBxMSA8PCBuaWx9CiAgICBUaHJlYWQubmV3IHsgczIuZWFjaF9saW5lIHt8bHwgcTIg PDwgbH07IHEyIDw8IG5pbH0KICAgIHdoaWxlIHRydWUKICAgICAgYSxiID0gcTEucG9wLCBxMi5w b3AKICAgICAgYnJlYWsgaWYgIWEgfHwgIWIKICAgICAgIyBjb21wYXJlIGEgYW5kIGIKICAgIGVu ZAogIH0KZW5kCgo= ------=_Part_1138_30502354.1125705426525--