{-# LANGUAGE Arrows #-} foo f g x y = (| test (f -< x) (g -< y) |) bar f g x y = (| test (f -< x) (g -< y) |)