<div dir="ltr">outStanza | (isMessage) = outMessage<br> | (isPresence) = outPresence<br> | (isIQ) = outIQ<br><br>Why such a style doesn't work, so I must write ugly code like that:<br><br>outStanza a | (isMessage a) = outMessage a<br>
| (isPresence a) = outPresence a<br> | (isIQ a) = outIQ a<br><br>so, guards can't be useful in point-free function definitions in any way<br></div>