I have some monadiccode of the form: foo >>= something >>= bar >> return () HLint is telling me to change this to: void (foo >>= something >>= bar) Why is the second form considered better? I actually find the original to be clearer.