From: David Vallner Date: 2006-10-19T10:02:11+09:00 Subject: Re: whats this lambda code doing? --------------enigAB7DF8666B9EAF2F862CA995 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Ezra Zygmuntowicz wrote: > klasses.inject(block) do |blk, klass| > lambda { klass.with_scope(scope_hash, &blk) } > end.call >=20 > That outer block that ends on end returns the lambda made inside of tha= t > block. So end.call ends up being lambda { klass.with_scope(scope_hash,= > &blk) }.call >=20 Hmm. Unless I'm very mistaken, it would also only call the lambda for the last object in klasses, generating several garbage (and relatively expensive) lambdas. Boggle. Am I missing something? David Vallner --------------enigAB7DF8666B9EAF2F862CA995 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (MingW32) iD8DBQFFNs6Sy6MhrS8astoRApXlAJ0SdVtCZKSa01ConRk/rDekzmktLwCeOFnJ DwIa0kDSm7HK8l5lxI64jNo= =ik4D -----END PGP SIGNATURE----- --------------enigAB7DF8666B9EAF2F862CA995--