zipWith3 package:massiv

Just like zipWith, except zip three arrays with a function.
Same as zipWithA, but for three arrays.
Just like zipWith3, except with an index aware function.
Same as izipWithA, but for three arrays.
Just like szipWith3, zip three vectors together, but with an index aware function. The length of a resulting vector will be the smallest length of the supplied vectors.
Just like szipWith3M, zip three vectors together, but with an index aware monadic action. The length of a resulting vector will be the smallest length of the supplied vectors.
Same as szipWith3M_, zip three vectors together, but with an index aware monadic action. The action will be invoked as many times as the length of the smallest vector.
Zip three vectors together with a ternary function into a vector. The length of a resulting vector will be the smallest length of the supplied vectors.
Zip three vectors together with a ternary monadic action into a vector. The length of a resulting vector will be the smallest length of the supplied vectors.
Similar to szipWith3M, zip three vectors together with a ternary monadic action, while discarding its result. The action will be invoked as many times as the length of the smallest vector.