Varying output type
The input type and output type of a function are fixed. So you can't write something like:
This is because the output type of f
can be either always a Bool
, as the first line implies, or always a number, as the second line implies.
See this FAQ for the correct approach.