The
zipWith3 function takes a function which combines three
elements, as well as three lists and returns a list of their
point-wise combination, analogous to
zipWith. It is capable of
list fusion, but it is restricted to its first list argument and its
resulting list.