Symbolic learners and instance-based learners are tuned towards discrete outputs -- and in this case, the discrete outputs are the signs.
Many other output methods are really function approximators, and while it is true that a discrete output can be modelled as a function, this can sometimes be counter-intuitive and ``kludgey''. Using neural networks, for example, two possible approaches would be to have an output layer of neurons, with the neurons producing a ``binary digit'' of high and low values representing the signs, or have a separate neuron for each possible output sign. As previously discussed, there are problems involved in using either of these.