Garrett Goebel wrote: > > From: Paul [mailto:[EMAIL PROTECTED]] > > > > Anybody know offhand *why* my() lexicals are supposedly faster? > > Because a dynamic variable allocates a "new" value at runtime which occludes > the global value until it's scope expires. In contrast, a lexical variable > is unique to its code value's (CV) context which was determined at parse > time. However, if you recursively call that CV, then Perl has to allocate a > new value for the lexical. > > Urban legend says that lexicals are on average 10% faster than dynamic > variables. I wonder if that is true... and what difference recursion makes. > I wonder how you'd write a script to benchmark that and actually benchmark > the right thing... Yes this is OT, but I'll contribute to the problem as well... My coworker Gisle Aas (maybe you've heard of him ;) says that globals and lexicals have identical speed because Perl optimizes out the symbol-table lookup. Trust Gisle. -- perl -le 'use Inline C=>q{SV*JAxH(char*x){return newSVpvf ("Just Another %s Hacker",x);}};print JAxH+Perl' ______________________________________________________________________ Apache Interface to OpenSSL (mod_ssl) www.modssl.org User Support Mailing List [EMAIL PROTECTED] Automated List Manager [EMAIL PROTECTED]
