I want to apply a 3 argument function in different ways based on a boolean value (one of the arguments).
I'd like to be able to apply it in an infix manner so I can chain it (example below). something like the following but that actually works.
f :: Bool -> a -> a -> a
f True i j = i
f False i j = j
... y `(f True)` z `(f False)` b
Do I need to have the Bool as the second variable? Or something else? I'm kind of lost.
P.S. the reason I wanted to do this was to have optional append function