This page is part of the web mail archives of SRFI 86 from before July 7th, 2015. The new archives for SRFI 86 contain all messages, not just those from before July 7th, 2015.
Date: Sat, 8 Apr 2006 12:56:36 +0900 From: "soo" <init@xxxxxxxxxxx> I'd like to know whether it was intentional that you performed the test with such an old version instead of new one. I chose 0.57 because I knew that its compiler recognized CWV with lambda operands, while 1.3's compiler did not (a fact which slipped my mind when I first tried to explain the disparity between your results and mine). I expect that code to recognize this will be reintroduced later on anyway. I wanted to compare the performance in systems that took the small effort to make multiple return values perform well, not in systems where multiple return values are like your MU anyway but with extra overhead. Are you sure that VALUES/CALL-WITH-VALUES is always faster than MU under any circumstances? (The circumstances also include all implementations that exist at present.) The rationale only said "... and somewhat slow under some circumstances.". How about " ... and somewhat slow in some implementations."? The value of including a remark about performance is lost if one must include all sorts of qualifiers. As I recommended initially, it would be best to omit the mention of performance altogether; it would have about as much value as a note in R5RS that CAR is sometimes faster than CDR, depending on the circumstances and/or Scheme implementation. (In fact, it may well be the case that CAR is much faster than CDR, in a hypothetical system that practises cdr-coding!)