The type ''a represents an equality type: It means anything that can be compared with the equality operator. Not everything can be compared with =
You cannot check equality for reals.
You also cannot check equality for functions, as we cannot tell if two functions do the same thing.