<br><br><div><span class="gmail_quote">On 12/24/06, <b class="gmail_sendername">Carl Eastlund</b> <<a href="mailto:cce@ccs.neu.edu">cce@ccs.neu.edu</a>> wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
On 12/24/06, <a href="mailto:gregory.woodhouse@sbcglobal.net">gregory.woodhouse@sbcglobal.net</a><br><<a href="mailto:gregory.woodhouse@sbcglobal.net">gregory.woodhouse@sbcglobal.net</a>> wrote:<br>> In the cases like Danny's example, I've usually returned a list, as in
<br>><br>> (list (car x) (cdr x))<br><br>Sure, that works too, though it allocates a list that takes up space,<br>must be destructured, and is not actually relevant to the problem.</blockquote><div><br>I get it! Your saying that the compilers aren't designed to catch the fact that the list is created, and disasembled immediately by it's calling function, and not really needed, and therefore it creates a memory and speed overhead, that while usually small, could be important if it's inside a heavily used loop.
<br> </div><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">or a list to return them in. Many programmers prefer not to construct<br>an arbitrary, irrelevant structure like a list for a non-list problem,
<br>so they use multiple values.</blockquote><div><br>And the rest prefer not to construct an arbitrary, irrelevant syntax so they use lists ;)<br>
<br>But I do see your point. I can now see why some people are using multi-value's. But I would argue that it should be a compiler thing, not a syntax thing.<br><br>Corey </div><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
--<br>Carl Eastlund<br>_________________________________________________<br> For list-related administrative tasks:<br> <a href="http://list.cs.brown.edu/mailman/listinfo/plt-scheme">http://list.cs.brown.edu/mailman/listinfo/plt-scheme
</a><br></blockquote></div><br><br clear="all"><br>-- <br>((lambda (y) (y y)) (lambda (y) (y y)))