<div class="gmail_quote">On Tue, Nov 29, 2011 at 5:57 PM, Michael Hertling <span dir="ltr">&lt;<a href="mailto:mhertling@online.de">mhertling@online.de</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div class="im">Just some spontaneous questions/remarks:</div></blockquote><div><br></div><div>Thanks; I really appreciate it!</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
- Why do you use macros instead of functions?<br></blockquote><div><br></div><div>I use macros so the _array2d_ variables fall through the scope of the macro and are available in the next call to array2d_advance(). I could use functions + properties but this solution works, I saw no need to use the slightly more verbose global properties feature.</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
- What&#39;s about cleaning up the numerous helper variables,<br>
  e.g. by an additional array2d_cleanup() function or the like?<br></blockquote><div><br></div><div>What specific helper variables are you referring to? I would most likely use more uniquely mangled local variables instead, but I figured the preceeding underscore in front of each was sufficient. What would you recommend here? I&#39;d like to avoid a cleanup() method because it seems unnecessary. If my local variables cause conflicts later, and if name mangling isn&#39;t the idiomatic solution, I&#39;d like to hear whatever idea you have (that doesn&#39;t involve cleanup() if possible).</div>
<div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
- In array2d_begin_loop(), couldn&#39;t you rearrange the parameters,<br>
  array2d_begin_loop(advanced &quot;fruit;animal&quot; ${two_dee_array}), use<br>
  LIST(LENGTH var_names _array2d_width) and take ARGN as the array?<br></blockquote><div><br></div><div>What would this buy me? Typically I&#39;ve avoided ARGN unless it is absolutely necessary, but a variable in this case seems more direct. Can you explain what benefits this has?</div>
</div>