In what cases should one use error() instead of throw()? The manual <http://docs.julialang.org/en/latest/manual/control-flow/?highlight=error#the-throw-function> is not particular clear about the difference:
The error() function is used to produce an ErrorException that interrupts the normal flow of control. Isn't what throw is supposed to do?