From this answer one learns how to implement the function \x y z -> f x (g y z) in a pointless way in Haskell, where f and g are functions. And my question is
How to write the function
\x -> f (g x) (h x)in a pointfree manner in Haskell? Herefghare functions for whichf (g x) (h x)is defined.
The idea I currently have in mind is something like the following.
uncurry f (mapTuple ($ x) (g, h))
But several tries shows that this is fallacious; even the part map ($ x) [g, h] is suspicious: what if g and h have different ranges?
In addition, readability is not too much an issue here.
Any help is sincerely appreciated.
