> The usage of construct like zero(zero(T)*zero(T)) is not really easy to > understand. I assume you propose this due to the upcasting arithmetic > integer behavior of non-native integer types (int16, ...), right? > > Basically, I wanted to avoid that r changes its type in the loop (this might be more evident/relevant if the elements of x and y have different types, say Real and Complex). I don't know if it matters much in this case, though.
Best, Alex.