Date: Thu, 15 Oct 2009 12:22:37 -0400 From: Bradley Lucier lucier@math.purdue.edu
In other words, this mechanical translation of do loops to named lets (following the known continuation when each loop is finished) more than doubles the speed of the routine.
I've trained myself to write loops as named lets, but other people have not yet been assimilated to modify how they write code to get around the oddities of Gambit's compiler. Do loops are very popular in numerical code; please add a transformation like this to the compiler.
I'm puzzled: how is DO implemented in Gambit, if not as a macro that performs precisely that transformation?