On Wed, Jul 22, 2009 at 11:23 AM, Grant McLean <span dir="ltr">&lt;<a href="mailto:grant@mclean.net.nz">grant@mclean.net.nz</a>&gt;</span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hi Chris!<br>
<br>
It&#39;s been so quiet here without you :-)<br>
<br>
On Wed, 2009-07-22 at 11:10 +1200, Chris Eade wrote:<br>
&gt; ... this particular piece of code has me really stumped. It looks<br>
<div class="im">&gt; like this:<br>
&gt;<br>
&gt;   use constant LATEST_D_ACROSS_PRODUCTS =&gt; &#39;P&#39;;<br>
&gt;   &lt;snip&gt;<br>
&gt;   $ib-&gt;{reg}-&gt;{@{[LATEST_D_ACROSS_PRODUCTS]}} = $ed;<br>
&gt;   $ib-&gt;{prodNo}-&gt;{@{[LATEST_D_ACROSS_PRODUCTS]}} .= &quot;$product_no,&quot;;<br>
<br>
</div></blockquote><div><br>Yet Another Plausible Way To Do It<br><br><br>use Readonly;<br>Readonly my $LATEST_D_ACROSS_PRODUCTS =&gt; &#39;P&#39;; <br>$ib-&gt;{reg}-&gt;{$LATEST_D_ACROSS_PRODUCTS} = $ed;<br><div class="im">
 $ib-&gt;{prodNo}-&gt;{$LATEST_D_ACROSS_PRODUCTS} .= &quot;$product_no,&quot;;<br>
<br><br>Biggest advantage of doing it this way is its less surprising. <br>You don&#39;t get all the fun things involved with constant folding, but on the bright side, you don&#39;t get all the fun things involved with constant folding :)<br>
<br>And Optimality, meh, worry about that when your code is demonstratively too slow :)<br>
</div><br>
<br><br>Kent <br></div></div><br>perl -e  &quot;print substr( \&quot;edrgmaM  SPA NOcomil.ic\\@tfrken\&quot;, \$_ * 3, 3 ) for ( 9,8,0,7,1,6,5,4,3,2 );<br>