// Test of the speed of a function with an explicit "return" vs. one // with an implicit return as the last statement in the function. funcNoReturn[a,b] := a + b funcReturn[a,b] := { return (a+b) } funcMultipleReturn[a,b] := { 2+2 return a+b } funcNonLastReturn[a,b] := { if 1<2 return a+b else return b+a } limit = 10000 s1 = now[] for i = 1 to 5 { start = now[] for a = 1 to limit { funcReturn[1,2] } end = now[] println["Return took " + (end-start -> "s")] start = now[] for a = 1 to limit { funcNoReturn[1,2] } end = now[] println["NoReturn took " + (end-start -> "s")] start = now[] for a = 1 to limit { funcMultipleReturn[1,2] } end = now[] println["MultipleReturn took " + (end-start -> "s")] start = now[] for a = 1 to limit { funcNonLastReturn[1,2] } end = now[] println["NonLastReturn took " + (end-start -> "s")] } e1 = now[] println["Total is " + (e1-s1 -> "s")]