http://qs1969.pair.com?node_id=628004


in reply to Refactoring Perl #3 - Inline Temp

So, what if the method is expensive? Why would you want to do the same thing twice?

Replies are listed 'Best First'.
Re^2: Refactoring Perl 3 - Inline Temp
by agianni (Hermit) on Jul 23, 2007 at 12:45 UTC

    You certainly don't have to refactor. This is just a pattern you can use to make your code cleaner. I generally find that writing good code is always a balance between clean code and efficient code. It's great when you can do both, but often you have to pick one.

    If you really need this refactoring and the method is expensive, you can always look into caching mechanisms. I can't recommend anything particularly complicated, as I haven't done any caching of methods that take arguments (the complicated part) but I'm sure there are some CPAN modules that would help.

    perl -e 'split//,q{john hurl, pest caretaker}and(map{print @_[$_]}(joi +n(q{},map{sprintf(qq{%010u},$_)}(2**2*307*4993,5*101*641*5261,7*59*79 +*36997,13*17*71*45131,3**2*67*89*167*181))=~/\d{2}/g));'