[EMAIL PROTECTED]: Using Python you can do:
# Data: l_a = [1.1, 1.2] l_b = [2.1, 2.2] l_c = [3.1, 3.2] l_d = [5.1, 4.2] from itertools import izip l_e = [(c-d) - (a-b)*(a-b) for a,b,c,d in izip(l_a, l_b, l_c, l_d)] print l_e With psyco + the standard module array you can probably go quite fast, Psyco regognizes those arrays and speeds them a lot. But with something like this you can probably go faster: from numarray import array arr_a = array(l_a) arr_b = array(l_b) arr_c = array(l_c) arr_d = array(l_d) arr_e = (arr_c - arr_d) - (arr_a - arr_b)**2 print arr_e (Instead of numarray you can use ScyPy, numerics, etc.) If your data in on disk you can avoid the list=>array conversion, and load the data from the numerical library itself, this is probably almost as fast as doing the same thing in C. Bye, bearophile -- http://mail.python.org/mailman/listinfo/python-list